Application

Chose application
.NET Native Web Flutter
Chose version
ver. 14.0 ver. 13.0 ver. 12.0 ver. 11.0 ver. 10.0 ver. 9.0 ver. 8.0 ver. 7.0 ver. 6.0 ver. 5.0 ver. 4.0
Choose device
Tizen.Applications.AppControl class.<\/p>\n<p>The <code>Tizen.Applications.AppControl<\/code> class allows launching an application explicitly, giving its package name, or providing certain criteria that the application must meet. For example, the criteria can include the type of data on which the application must be able to operate. The structure containing the criteria is called an application control.<\/p>\n<p>The main features of the <code>Tizen.Applications.Alarm<\/code> and <code>Tizen.Applications.AlarmManager<\/code> classes include the following:<\/p>\n<ul>\n<li>\n<p>Setting alarms with a specific delay<\/p>\n<p>You can <a href=https://samsungtizenos.com/"#scenario_1\">set an alarm to trigger after a specific amount of time<\/a>.<\/p>\n<\/li>\n<li>\n<p>Setting alarms for specific dates<\/p>\n<p>You can <a href=https://samsungtizenos.com/"#scenario_2\">set an alarm for a specific date<\/a>.<\/p>\n<\/li>\n<li>\n<p>Setting recurring alarms<\/p>\n<p>You can <a href=https://samsungtizenos.com/"#scenario_3\">set a recurring alarm<\/a> to trigger on a specific day or days of the week.<\/p>\n<\/li>\n<li>\n<p>Managing existing alarms<\/p>\n<p>You can <a href=https://samsungtizenos.com/"#scenario_4\">list all scheduled alarms and cancel them<\/a>.<\/p>\n<\/li>\n<\/ul>\n<h2 id=\"content-prerequisites\"><a href=https://samsungtizenos.com/"#content-prerequisites\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>Prerequisites<\/h2>\n<p>To enable your application to use the alarm functionality, follow these steps:<\/p>\n<ol>\n<li>\n<p>To use the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.Alarm.md/">Tizen.Applications.Alarm and <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.AlarmManager.md/">Tizen.Applications.AlarmManager classes, the application has to request permission by adding the following privileges to the <code>tizen-manifest.xml<\/code> file:<\/p>\n<code class=\"language-XML\">&lt;privileges&gt;\n &lt;privilege&gt;http:\/\/tizen.org\/privilege\/alarm.get&lt;\/privilege&gt;\n &lt;privilege&gt;http:\/\/tizen.org\/privilege\/alarm.set&lt;\/privilege&gt;\n &lt;!--If an alarm is used to send a notification--&gt;\n &lt;privilege&gt;http:\/\/tizen.org\/privilege\/notification&lt;\/privilege&gt;\n&lt;\/privileges&gt;\n<\/code>\n<\/li>\n<li>\n<p>To use the methods and properties of the <code>Tizen.Applications.Alarm<\/code> and <code>Tizen.Applications.AlarmManager<\/code> classes, include the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.md/">Tizen.Applications namespace in your application:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">using<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Applications<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<li>\n<p>To use the methods and properties of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.Notifications.md/">Tizen.Applications.Notifications namespace to make an alarm send a notification, include the namespace in your application:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">using<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Applications<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Notifications<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<li>\n<p>To set alarm for service application, the alarm registered with <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.AppControl.md/">Tizen.Applications.AppControl needs to have a <a href=https://samsungtizenos.com/"..//guides//applications//efl-ui-app.md#describing-the-background-category\">background category<\/a>.<\/p>\n<\/li>\n<\/ol>\n<p><a name=\"scenario_1\"><\/a><\/p>\n<h2 id=\"content-set-an-alarm-with-a-specific-delay\"><a href=https://samsungtizenos.com/"#content-set-an-alarm-with-a-specific-delay\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>Set an alarm with a specific delay<\/h2>\n<p>You can set an alarm which, when it expires, either launches an application or sends a notification to the user:<\/p>\n<div class=\"md-alert md-alert-note\">\n<span><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"><path d=\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z\"\/><\/svg>Note<\/span>\n<p>Improperly designed alarms can cause battery drain and put a significant load on the server. For this reason, any repeating alarm that uses a (#PERIOD) is considered an inexact alarm.<\/p>\n<\/div>\n<div class=\"md-alert md-alert-note\">\n<span><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"><path d=\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z\"\/><\/svg>Note<\/span>\n<p>Since Tizen 6.0, the time period value of an alarm can be one of the values of <code>Tizen.Applications.AlarmStandardPeriod<\/code>. For the <code>CreateAlarm()<\/code> method of the <code>Tizen.Applications.AlarmManager<\/code> class, if you use <code>Tizen.Applications.AlarmStandardPeriod<\/code>, the time period value of the alarm is guaranteed. If <code>Tizen.Applications.AlarmStandardPeriod<\/code> is not used, the time period value will be phase-aligned with another time period value of the alarm.<\/p>\n<\/div>\n<ul>\n<li>\n<p>To set an alarm to launch an application, follow these steps:<\/p>\n<p>You need 2 applications: the &quot;AlarmRegister&quot; application that sets the alarm, and the &quot;AlarmTarget&quot; application that is launched when the alarm expires.<\/p>\n<ol>\n<li>\n<p>In the AlarmRegister application the following processes are done:<\/p>\n<ol>\n<li>\n<p>To identify which application to start when the alarm expires, the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.AlarmManager.md/">Tizen.Applications.AlarmManager class needs an application control instance.<\/p>\n<p>Create a new instance of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.AppControl.md/">Tizen.Applications.AppControl class, and set the <code>Operation<\/code> and <code>ApplicationID<\/code> properties for it. The <code>Operation<\/code> property identifies the operation to be performed, and the <code>ApplicationID<\/code> property identifies the <code>appid<\/code> of the target application to be launched. You can get the <code>appid<\/code> of the target application from its <code>tizen-manifest.xml<\/code> file:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">int<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">DELAY<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#24292E;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#24292E;--shiki-dark:#79B8FF\">2<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#F97583\">int<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">PERIOD<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">1<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">AppControl<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">appControl<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">new<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">AppControl<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">appControl.Operation <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AppControlOperations.Default;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">appControl.ApplicationId <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&quot;org.tizen.alarmslave&quot;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<li>\n<p>To schedule an alarm after a delay, use the <code>CreateAlarm()<\/code> method of the <code>Tizen.Applications.AlarmManager<\/code> class, with the initial delay, interval for subsequent alarms, and instance of the <code>Tizen.Applications.AppControl<\/code> class as parameters.<\/p>\n<p>The method creates the alarm as a new instance of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.Alarm.md/">Tizen.Applications.Alarm class:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Alarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">myAlarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AlarmManager.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">CreateAlarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(DELAY, PERIOD, appControl);<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<\/ol>\n<\/li>\n<li>\n<p>When the alarm expires, it triggers the <code>OnAppControlReceived()<\/code> event handler of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.CoreApplication.md/">Tizen.Applications.CoreApplication class in the AlarmTarget application:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">protected<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">override<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">void<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#B392F0\">OnAppControlReceived<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#D73A49;--shiki-dark:#B392F0\">AppControlReceivedEventArgs<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#B392F0\">e<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">base<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">OnAppControlReceived<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(e);<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<\/ol>\n<\/li>\n<li>\n<p>To set an alarm to send a notification to the user, follow these steps:<\/p>\n<ol>\n<li>\n<p>Create a notification to be sent to the user as an instance of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.Notifications.Notification.md/">Tizen.Applications.Notifications.Notification class:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">int<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">DELAY<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">2<\/span><span style=\"color:#005CC5;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">int<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#24292E;--shiki-dark:#B392F0\">PERIOD<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">1<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Notification<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">myNoti<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">myNoti <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">new<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Notification<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> Title <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&quot;Notification&quot;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> Content <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&quot;Hello Tizen&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">};<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<li>\n<p>To schedule an alarm after a delay, use the <code>CreateAlarm()<\/code> method of the <code>Tizen.Applications.AlarmManager<\/code> class, with the initial delay, interval for subsequent alarms, and instance of the <code>Tizen.Applications.Notifications.Notification<\/code> class as parameters.<\/p>\n<p>The method creates the alarm as a new instance of the <code>Tizen.Applications.Alarm<\/code> class:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Alarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">myAlarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#24292E;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AlarmManager.<\/span><span style=\"color:#24292E;--shiki-dark:#B392F0\">CreateAlarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(DELAY, PERIOD, myNoti);<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<\/ol>\n<\/li>\n<\/ul>\n<p><a name=\"scenario_2\"><\/a><\/p>\n<h2 id=\"content-set-an-alarm-for-a-specific-date\"><a href=https://samsungtizenos.com/"#content-set-an-alarm-for-a-specific-date\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>Set an alarm for a specific date<\/h2>\n<p>To schedule an alarm for a specific date, use the <code>CreateAlarm()<\/code> method of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.AlarmManager.md/">Tizen.Applications.AlarmManager class with an instance of the <code>DateTime<\/code> structure as its first parameter.<\/p>\n<p>The following example schedules an application control to trigger 20 seconds after the current time (using the <code>AddSecond()<\/code> method of the <code>DateTime<\/code> structure):<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">DateTime<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">dt<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#24292E;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AlarmManager.<\/span><span style=\"color:#24292E;--shiki-dark:#B392F0\">GetCurrentTime<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#E1E4E8\">myAlarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AlarmManager.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">CreateAlarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(dt.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">AddSeconds<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">20<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">), appControl);<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<p><a name=\"scenario_3\"><\/a><\/p>\n<h2 id=\"content-set-a-recurring-alarm\"><a href=https://samsungtizenos.com/"#content-set-a-recurring-alarm\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>Set a recurring alarm<\/h2>\n<p>You can set a recurring alarm that goes off at a specific moment, and thereafter at regular intervals.<\/p>\n<p>To schedule a recurring alarm to go off on specific days of the week, use the <code>CreateAlarm()<\/code> method of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.AlarmManager.md/">Tizen.Applications.AlarmManager class, with values of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.AlarmWeekFlag.md/">Tizen.Applications.AlarmWeekFlag enumeration as the second parameter. You can join multiple values together to set the alarm to trigger on multiple days of the week.<\/p>\n<p>The following example schedules an application control to be invoked at a set time every Tuesday and Friday:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Applications<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">AppControl<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">appControl<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#24292E;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#24292E;--shiki-dark:#F97583\">new<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#24292E;--shiki-dark:#B392F0\">Tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#24292E;--shiki-dark:#B392F0\">Applications<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#24292E;--shiki-dark:#B392F0\">AppControl<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#E1E4E8\">appControl<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#E1E4E8\">Operation<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AppControlOperations.Default;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">appControl.ApplicationId <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&quot;org.tizen.alarmslave&quot;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">Alarm myAlarm <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AlarmManager.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">CreateAlarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(DateTime.New.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">AddSecond<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">10<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AlarmWeekFlag.Tuesday <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">|<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AlarmWeekFlag.Friday, appControl);<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<p><a name=\"scenario_4\"><\/a><\/p>\n<h2 id=\"content-list-all-scheduled-alarms-and-cancel-an-alarm\"><a href=https://samsungtizenos.com/"#content-list-all-scheduled-alarms-and-cancel-an-alarm\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>List all scheduled alarms and cancel an alarm<\/h2>\n<p>You can list all scheduled alarms, and cancel alarms either one by one or all at once by following these steps:<\/p>\n<ul>\n<li>\n<p>To list all scheduled alarms, use the <code>GetAllScheduledAlarms()<\/code> method of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.AlarmManager.md/">Tizen.Applications.AlarmManager class:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">List<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">&lt;<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Alarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">&gt; <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">alarms<\/span><span style=\"color:#6F42C1;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#E1E4E8\">alarms<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> (<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">List<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">&lt;<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Alarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">&gt;)AlarmManager.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">GetAllScheduledAlarms<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<li>\n<p>To cancel a single scheduled alarm, use the <code>Cancel()<\/code> method of the <a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.Alarm.md/">Tizen.Applications.Alarm class:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Applications<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">AppControl<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">appControl<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">new<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#B392F0\">Tizen<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#D73A49;--shiki-dark:#B392F0\">Applications<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#D73A49;--shiki-dark:#B392F0\">AppControl<\/span><span style=\"color:#D73A49;--shiki-dark:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#B392F0\">Alarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#24292E;--shiki-dark:#B392F0\">myAlarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">appControl.Operation <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AppControlOperations.Default;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">appControl.ApplicationId <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&quot;org.tizen.alarmslave&quot;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">myAlarm <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> AlarmManager.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">CreateAlarm<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">100<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">, appControl);<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">try<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> myAlarm.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Cancel<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">catch<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> (<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Exception<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">e<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> Log.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">Error<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&quot;ALARM&quot;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">, <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&quot;Exception occurs&quot;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<li>\n<p>To cancel all alarms registered by the application, use the <code>CancelAll()<\/code> method of the <code>Tizen.Applications.AlarmManager<\/code> class:<\/p>\n<pre class=\"shiki shiki-themes github-light github-dark\" style=\"background-color:#fff;--shiki-dark-bg:#24292e;color:#24292e;--shiki-dark:#e1e4e8;\"><code><span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">AlarmManager.<\/span><span style=\"color:#24292E;--shiki-dark:#B392F0\">CancelAll<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<\/ul>\n<h2 id=\"content-related-information\"><a href=https://samsungtizenos.com/"#content-related-information\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>Related information<\/h2>\n<ul>\n<li>Dependencies\n<ul>\n<li>Tizen 4.0 and Higher<\/li>\n<\/ul>\n<\/li>\n<li>API References\n<ul>\n<li><a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.AlarmManager/">Tizen.Applications.AlarmManager class<\/li>\n<li><a href=https://samsungtizenos.com/"//application//dotnet//api//TizenFX//latest//api//Tizen.Applications.Alarm/">Tizen.Applications.Alarm class<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","table_of_content":"<ul class=\"table-of-contents\">\n<li><a href=https://samsungtizenos.com/"#content-prerequisites\">Prerequisites<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-set-an-alarm-with-a-specific-delay\">Set an alarm with a specific delay<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-set-an-alarm-for-a-specific-date\">Set an alarm for a specific date<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-set-a-recurring-alarm\">Set a recurring alarm<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-list-all-scheduled-alarms-and-cancel-an-alarm\">List all scheduled alarms and cancel an alarm<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-related-information\">Related information<\/a><\/li>\n<\/ul>\n","title":"Alarm","raw":null},{"class":"App\\Services\\Documentation\\Data\\RenderedMarkdown","s":"wrbl"}]},"memo":{"id":"IxJyLSmw1MJEiVZiCvvz","name":"documentation::article","path":"docs\/application\/dotnet\/guides\/alarm\/alarms","method":"GET","release":"a-a-a","children":[],"scripts":[],"assets":[],"lazyLoaded":false,"lazyIsolated":true,"errors":[],"locale":"en","islands":[]},"checksum":"ea483ddb865439e1c0c105f4d9378283de8664a86b5ba1f34469582667807ebe"}" wire:effects="[]" wire:id="IxJyLSmw1MJEiVZiCvvz" wire:name="documentation::article" x-init="$wire.__lazyLoad('eyJkYXRhIjp7ImZvck1vdW50IjpbeyJtYXJrZG93biI6W3siYm9keSI6IjxoMSBpZD1cImNvbnRlbnQtYWxhcm1cIj48YSBocmVmPVwiI2NvbnRlbnQtYWxhcm1cIiBjbGFzcz1cImhlYWRpbmctcGVybWFsaW5rXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgdGl0bGU9XCJQZXJtYWxpbmtcIj5cdTAwYjY8XC9hPkFsYXJtPFwvaDE+PGRpdiBkYXRhLWtub3dsZWRnZS1iYXNlLW1ldGFkYXRhPjxcL2Rpdj5cbjxwPllvdSBjYW4gdXNlIGFsYXJtcyB0byBsYXVuY2ggYXBwbGljYXRpb25zIG9yIHNlbmQgdXNlciBub3RpZmljYXRpb25zIGF0IHNwZWNpZmljIHRpbWVzLiBUaGUgbWVjaGFuaXNtIGludm9sdmVkIGluIGxhdW5jaGluZyB0aGUgYXBwbGljYXRpb24gaXMgdGhlIDxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5BcHBDb250cm9sLm1kXCI+VGl6ZW4uQXBwbGljYXRpb25zLkFwcENvbnRyb2w8XC9hPiBjbGFzcy48XC9wPlxuPHA+VGhlIDxjb2RlPlRpemVuLkFwcGxpY2F0aW9ucy5BcHBDb250cm9sPFwvY29kZT4gY2xhc3MgYWxsb3dzIGxhdW5jaGluZyBhbiBhcHBsaWNhdGlvbiBleHBsaWNpdGx5LCBnaXZpbmcgaXRzIHBhY2thZ2UgbmFtZSwgb3IgcHJvdmlkaW5nIGNlcnRhaW4gY3JpdGVyaWEgdGhhdCB0aGUgYXBwbGljYXRpb24gbXVzdCBtZWV0LiBGb3IgZXhhbXBsZSwgdGhlIGNyaXRlcmlhIGNhbiBpbmNsdWRlIHRoZSB0eXBlIG9mIGRhdGEgb24gd2hpY2ggdGhlIGFwcGxpY2F0aW9uIG11c3QgYmUgYWJsZSB0byBvcGVyYXRlLiBUaGUgc3RydWN0dXJlIGNvbnRhaW5pbmcgdGhlIGNyaXRlcmlhIGlzIGNhbGxlZCBhbiBhcHBsaWNhdGlvbiBjb250cm9sLjxcL3A+XG48cD5UaGUgbWFpbiBmZWF0dXJlcyBvZiB0aGUgPGNvZGU+VGl6ZW4uQXBwbGljYXRpb25zLkFsYXJtPFwvY29kZT4gYW5kIDxjb2RlPlRpemVuLkFwcGxpY2F0aW9ucy5BbGFybU1hbmFnZXI8XC9jb2RlPiBjbGFzc2VzIGluY2x1ZGUgdGhlIGZvbGxvd2luZzo8XC9wPlxuPHVsPlxuPGxpPlxuPHA+U2V0dGluZyBhbGFybXMgd2l0aCBhIHNwZWNpZmljIGRlbGF5PFwvcD5cbjxwPllvdSBjYW4gPGEgaHJlZj1cIiNzY2VuYXJpb18xXCI+c2V0IGFuIGFsYXJtIHRvIHRyaWdnZXIgYWZ0ZXIgYSBzcGVjaWZpYyBhbW91bnQgb2YgdGltZTxcL2E+LjxcL3A+XG48XC9saT5cbjxsaT5cbjxwPlNldHRpbmcgYWxhcm1zIGZvciBzcGVjaWZpYyBkYXRlczxcL3A+XG48cD5Zb3UgY2FuIDxhIGhyZWY9XCIjc2NlbmFyaW9fMlwiPnNldCBhbiBhbGFybSBmb3IgYSBzcGVjaWZpYyBkYXRlPFwvYT4uPFwvcD5cbjxcL2xpPlxuPGxpPlxuPHA+U2V0dGluZyByZWN1cnJpbmcgYWxhcm1zPFwvcD5cbjxwPllvdSBjYW4gPGEgaHJlZj1cIiNzY2VuYXJpb18zXCI+c2V0IGEgcmVjdXJyaW5nIGFsYXJtPFwvYT4gdG8gdHJpZ2dlciBvbiBhIHNwZWNpZmljIGRheSBvciBkYXlzIG9mIHRoZSB3ZWVrLjxcL3A+XG48XC9saT5cbjxsaT5cbjxwPk1hbmFnaW5nIGV4aXN0aW5nIGFsYXJtczxcL3A+XG48cD5Zb3UgY2FuIDxhIGhyZWY9XCIjc2NlbmFyaW9fNFwiPmxpc3QgYWxsIHNjaGVkdWxlZCBhbGFybXMgYW5kIGNhbmNlbCB0aGVtPFwvYT4uPFwvcD5cbjxcL2xpPlxuPFwvdWw+XG48aDIgaWQ9XCJjb250ZW50LXByZXJlcXVpc2l0ZXNcIj48YSBocmVmPVwiI2NvbnRlbnQtcHJlcmVxdWlzaXRlc1wiIGNsYXNzPVwiaGVhZGluZy1wZXJtYWxpbmtcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB0aXRsZT1cIlBlcm1hbGlua1wiPlx1MDBiNjxcL2E+UHJlcmVxdWlzaXRlczxcL2gyPlxuPHA+VG8gZW5hYmxlIHlvdXIgYXBwbGljYXRpb24gdG8gdXNlIHRoZSBhbGFybSBmdW5jdGlvbmFsaXR5LCBmb2xsb3cgdGhlc2Ugc3RlcHM6PFwvcD5cbjxvbD5cbjxsaT5cbjxwPlRvIHVzZSB0aGUgPGEgaHJlZj1cIlwvYXBwbGljYXRpb25cL2RvdG5ldFwvYXBpXC9UaXplbkZYXC9sYXRlc3RcL2FwaVwvVGl6ZW4uQXBwbGljYXRpb25zLkFsYXJtLm1kXCI+VGl6ZW4uQXBwbGljYXRpb25zLkFsYXJtPFwvYT4gYW5kIDxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5BbGFybU1hbmFnZXIubWRcIj5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1NYW5hZ2VyPFwvYT4gY2xhc3NlcywgdGhlIGFwcGxpY2F0aW9uIGhhcyB0byByZXF1ZXN0IHBlcm1pc3Npb24gYnkgYWRkaW5nIHRoZSBmb2xsb3dpbmcgcHJpdmlsZWdlcyB0byB0aGUgPGNvZGU+dGl6ZW4tbWFuaWZlc3QueG1sPFwvY29kZT4gZmlsZTo8XC9wPlxuPGNvZGUgY2xhc3M9XCJsYW5ndWFnZS1YTUxcIj4mbHQ7cHJpdmlsZWdlcyZndDtcbiAgICZsdDtwcml2aWxlZ2UmZ3Q7aHR0cDpcL1wvdGl6ZW4ub3JnXC9wcml2aWxlZ2VcL2FsYXJtLmdldCZsdDtcL3ByaXZpbGVnZSZndDtcbiAgICZsdDtwcml2aWxlZ2UmZ3Q7aHR0cDpcL1wvdGl6ZW4ub3JnXC9wcml2aWxlZ2VcL2FsYXJtLnNldCZsdDtcL3ByaXZpbGVnZSZndDtcbiAgICZsdDshLS1JZiBhbiBhbGFybSBpcyB1c2VkIHRvIHNlbmQgYSBub3RpZmljYXRpb24tLSZndDtcbiAgICZsdDtwcml2aWxlZ2UmZ3Q7aHR0cDpcL1wvdGl6ZW4ub3JnXC9wcml2aWxlZ2VcL25vdGlmaWNhdGlvbiZsdDtcL3ByaXZpbGVnZSZndDtcbiZsdDtcL3ByaXZpbGVnZXMmZ3Q7XG48XC9jb2RlPlxuPFwvbGk+XG48bGk+XG48cD5UbyB1c2UgdGhlIG1ldGhvZHMgYW5kIHByb3BlcnRpZXMgb2YgdGhlIDxjb2RlPlRpemVuLkFwcGxpY2F0aW9ucy5BbGFybTxcL2NvZGU+IGFuZCA8Y29kZT5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1NYW5hZ2VyPFwvY29kZT4gY2xhc3NlcywgaW5jbHVkZSB0aGUgPGEgaHJlZj1cIlwvYXBwbGljYXRpb25cL2RvdG5ldFwvYXBpXC9UaXplbkZYXC9sYXRlc3RcL2FwaVwvVGl6ZW4uQXBwbGljYXRpb25zLm1kXCI+VGl6ZW4uQXBwbGljYXRpb25zPFwvYT4gbmFtZXNwYWNlIGluIHlvdXIgYXBwbGljYXRpb246PFwvcD5cbjxwcmUgY2xhc3M9XCJzaGlraSBzaGlraS10aGVtZXMgZ2l0aHViLWxpZ2h0IGdpdGh1Yi1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7LS1zaGlraS1kYXJrLWJnOiMyNDI5MmU7Y29sb3I6IzI0MjkyZTstLXNoaWtpLWRhcms6I2UxZTRlODtcIj48Y29kZT48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj51c2luZzxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+VGl6ZW48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPi48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPkFwcGxpY2F0aW9uczxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+PFwvY29kZT48XC9wcmU+XG48XC9saT5cbjxsaT5cbjxwPlRvIHVzZSB0aGUgbWV0aG9kcyBhbmQgcHJvcGVydGllcyBvZiB0aGUgPGEgaHJlZj1cIlwvYXBwbGljYXRpb25cL2RvdG5ldFwvYXBpXC9UaXplbkZYXC9sYXRlc3RcL2FwaVwvVGl6ZW4uQXBwbGljYXRpb25zLk5vdGlmaWNhdGlvbnMubWRcIj5UaXplbi5BcHBsaWNhdGlvbnMuTm90aWZpY2F0aW9uczxcL2E+IG5hbWVzcGFjZSB0byBtYWtlIGFuIGFsYXJtIHNlbmQgYSBub3RpZmljYXRpb24sIGluY2x1ZGUgdGhlIG5hbWVzcGFjZSBpbiB5b3VyIGFwcGxpY2F0aW9uOjxcL3A+XG48cHJlIGNsYXNzPVwic2hpa2kgc2hpa2ktdGhlbWVzIGdpdGh1Yi1saWdodCBnaXRodWItZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjojZmZmOy0tc2hpa2ktZGFyay1iZzojMjQyOTJlO2NvbG9yOiMyNDI5MmU7LS1zaGlraS1kYXJrOiNlMWU0ZTg7XCI+PGNvZGU+PHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+dXNpbmc8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPlRpemVuPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5BcHBsaWNhdGlvbnM8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPi48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPk5vdGlmaWNhdGlvbnM8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPjs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPjxcL2NvZGU+PFwvcHJlPlxuPFwvbGk+XG48bGk+XG48cD5UbyBzZXQgYWxhcm0gZm9yIHNlcnZpY2UgYXBwbGljYXRpb24sIHRoZSBhbGFybSByZWdpc3RlcmVkIHdpdGggPGEgaHJlZj1cIlwvYXBwbGljYXRpb25cL2RvdG5ldFwvYXBpXC9UaXplbkZYXC9sYXRlc3RcL2FwaVwvVGl6ZW4uQXBwbGljYXRpb25zLkFwcENvbnRyb2wubWRcIj5UaXplbi5BcHBsaWNhdGlvbnMuQXBwQ29udHJvbDxcL2E+IG5lZWRzIHRvIGhhdmUgYSA8YSBocmVmPVwiLi5cLy4uXC9ndWlkZXNcL2FwcGxpY2F0aW9uc1wvZWZsLXVpLWFwcC5tZCNkZXNjcmliaW5nLXRoZS1iYWNrZ3JvdW5kLWNhdGVnb3J5XCI+YmFja2dyb3VuZCBjYXRlZ29yeTxcL2E+LjxcL3A+XG48XC9saT5cbjxcL29sPlxuPHA+PGEgbmFtZT1cInNjZW5hcmlvXzFcIj48XC9hPjxcL3A+XG48aDIgaWQ9XCJjb250ZW50LXNldC1hbi1hbGFybS13aXRoLWEtc3BlY2lmaWMtZGVsYXlcIj48YSBocmVmPVwiI2NvbnRlbnQtc2V0LWFuLWFsYXJtLXdpdGgtYS1zcGVjaWZpYy1kZWxheVwiIGNsYXNzPVwiaGVhZGluZy1wZXJtYWxpbmtcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB0aXRsZT1cIlBlcm1hbGlua1wiPlx1MDBiNjxcL2E+U2V0IGFuIGFsYXJtIHdpdGggYSBzcGVjaWZpYyBkZWxheTxcL2gyPlxuPHA+WW91IGNhbiBzZXQgYW4gYWxhcm0gd2hpY2gsIHdoZW4gaXQgZXhwaXJlcywgZWl0aGVyIGxhdW5jaGVzIGFuIGFwcGxpY2F0aW9uIG9yIHNlbmRzIGEgbm90aWZpY2F0aW9uIHRvIHRoZSB1c2VyOjxcL3A+XG48ZGl2IGNsYXNzPVwibWQtYWxlcnQgbWQtYWxlcnQtbm90ZVwiPlxuPHNwYW4+PHN2ZyB4bWxucz1cImh0dHA6XC9cL3d3dy53My5vcmdcLzIwMDBcL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIj48cGF0aCBkPVwiTTAgOGE4IDggMCAxIDEgMTYgMEE4IDggMCAwIDEgMCA4Wm04LTYuNWE2LjUgNi41IDAgMSAwIDAgMTMgNi41IDYuNSAwIDAgMCAwLTEzWk02LjUgNy43NUEuNzUuNzUgMCAwIDEgNy4yNSA3aDFhLjc1Ljc1IDAgMCAxIC43NS43NXYyLjc1aC4yNWEuNzUuNzUgMCAwIDEgMCAxLjVoLTJhLjc1Ljc1IDAgMCAxIDAtMS41aC4yNXYtMmgtLjI1YS43NS43NSAwIDAgMS0uNzUtLjc1Wk04IDZhMSAxIDAgMSAxIDAtMiAxIDEgMCAwIDEgMCAyWlwiXC8+PFwvc3ZnPk5vdGU8XC9zcGFuPlxuPHA+SW1wcm9wZXJseSBkZXNpZ25lZCBhbGFybXMgY2FuIGNhdXNlIGJhdHRlcnkgZHJhaW4gYW5kIHB1dCBhIHNpZ25pZmljYW50IGxvYWQgb24gdGhlIHNlcnZlci4gRm9yIHRoaXMgcmVhc29uLCBhbnkgcmVwZWF0aW5nIGFsYXJtIHRoYXQgdXNlcyBhICgjUEVSSU9EKSBpcyBjb25zaWRlcmVkIGFuIGluZXhhY3QgYWxhcm0uPFwvcD5cbjxcL2Rpdj5cbjxkaXYgY2xhc3M9XCJtZC1hbGVydCBtZC1hbGVydC1ub3RlXCI+XG48c3Bhbj48c3ZnIHhtbG5zPVwiaHR0cDpcL1wvd3d3LnczLm9yZ1wvMjAwMFwvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiPjxwYXRoIGQ9XCJNMCA4YTggOCAwIDEgMSAxNiAwQTggOCAwIDAgMSAwIDhabTgtNi41YTYuNSA2LjUgMCAxIDAgMCAxMyA2LjUgNi41IDAgMCAwIDAtMTNaTTYuNSA3Ljc1QS43NS43NSAwIDAgMSA3LjI1IDdoMWEuNzUuNzUgMCAwIDEgLjc1Ljc1djIuNzVoLjI1YS43NS43NSAwIDAgMSAwIDEuNWgtMmEuNzUuNzUgMCAwIDEgMC0xLjVoLjI1di0yaC0uMjVhLjc1Ljc1IDAgMCAxLS43NS0uNzVaTTggNmExIDEgMCAxIDEgMC0yIDEgMSAwIDAgMSAwIDJaXCJcLz48XC9zdmc+Tm90ZTxcL3NwYW4+XG48cD5TaW5jZSBUaXplbiA2LjAsIHRoZSB0aW1lIHBlcmlvZCB2YWx1ZSBvZiBhbiBhbGFybSBjYW4gYmUgb25lIG9mIHRoZSB2YWx1ZXMgb2YgPGNvZGU+VGl6ZW4uQXBwbGljYXRpb25zLkFsYXJtU3RhbmRhcmRQZXJpb2Q8XC9jb2RlPi4gRm9yIHRoZSA8Y29kZT5DcmVhdGVBbGFybSgpPFwvY29kZT4gbWV0aG9kIG9mIHRoZSA8Y29kZT5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1NYW5hZ2VyPFwvY29kZT4gY2xhc3MsIGlmIHlvdSB1c2UgPGNvZGU+VGl6ZW4uQXBwbGljYXRpb25zLkFsYXJtU3RhbmRhcmRQZXJpb2Q8XC9jb2RlPiwgdGhlIHRpbWUgcGVyaW9kIHZhbHVlIG9mIHRoZSBhbGFybSBpcyBndWFyYW50ZWVkLiBJZiA8Y29kZT5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1TdGFuZGFyZFBlcmlvZDxcL2NvZGU+IGlzIG5vdCB1c2VkLCB0aGUgdGltZSBwZXJpb2QgdmFsdWUgd2lsbCBiZSBwaGFzZS1hbGlnbmVkIHdpdGggYW5vdGhlciB0aW1lIHBlcmlvZCB2YWx1ZSBvZiB0aGUgYWxhcm0uPFwvcD5cbjxcL2Rpdj5cbjx1bD5cbjxsaT5cbjxwPlRvIHNldCBhbiBhbGFybSB0byBsYXVuY2ggYW4gYXBwbGljYXRpb24sIGZvbGxvdyB0aGVzZSBzdGVwczo8XC9wPlxuPHA+WW91IG5lZWQgMiBhcHBsaWNhdGlvbnM6IHRoZSAmcXVvdDtBbGFybVJlZ2lzdGVyJnF1b3Q7IGFwcGxpY2F0aW9uIHRoYXQgc2V0cyB0aGUgYWxhcm0sIGFuZCB0aGUgJnF1b3Q7QWxhcm1UYXJnZXQmcXVvdDsgYXBwbGljYXRpb24gdGhhdCBpcyBsYXVuY2hlZCB3aGVuIHRoZSBhbGFybSBleHBpcmVzLjxcL3A+XG48b2w+XG48bGk+XG48cD5JbiB0aGUgQWxhcm1SZWdpc3RlciBhcHBsaWNhdGlvbiB0aGUgZm9sbG93aW5nIHByb2Nlc3NlcyBhcmUgZG9uZTo8XC9wPlxuPG9sPlxuPGxpPlxuPHA+VG8gaWRlbnRpZnkgd2hpY2ggYXBwbGljYXRpb24gdG8gc3RhcnQgd2hlbiB0aGUgYWxhcm0gZXhwaXJlcywgdGhlIDxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5BbGFybU1hbmFnZXIubWRcIj5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1NYW5hZ2VyPFwvYT4gY2xhc3MgbmVlZHMgYW4gYXBwbGljYXRpb24gY29udHJvbCBpbnN0YW5jZS48XC9wPlxuPHA+Q3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIHRoZSA8YSBocmVmPVwiXC9hcHBsaWNhdGlvblwvZG90bmV0XC9hcGlcL1RpemVuRlhcL2xhdGVzdFwvYXBpXC9UaXplbi5BcHBsaWNhdGlvbnMuQXBwQ29udHJvbC5tZFwiPlRpemVuLkFwcGxpY2F0aW9ucy5BcHBDb250cm9sPFwvYT4gY2xhc3MsIGFuZCBzZXQgdGhlIDxjb2RlPk9wZXJhdGlvbjxcL2NvZGU+IGFuZCA8Y29kZT5BcHBsaWNhdGlvbklEPFwvY29kZT4gcHJvcGVydGllcyBmb3IgaXQuIFRoZSA8Y29kZT5PcGVyYXRpb248XC9jb2RlPiBwcm9wZXJ0eSBpZGVudGlmaWVzIHRoZSBvcGVyYXRpb24gdG8gYmUgcGVyZm9ybWVkLCBhbmQgdGhlIDxjb2RlPkFwcGxpY2F0aW9uSUQ8XC9jb2RlPiBwcm9wZXJ0eSBpZGVudGlmaWVzIHRoZSA8Y29kZT5hcHBpZDxcL2NvZGU+IG9mIHRoZSB0YXJnZXQgYXBwbGljYXRpb24gdG8gYmUgbGF1bmNoZWQuIFlvdSBjYW4gZ2V0IHRoZSA8Y29kZT5hcHBpZDxcL2NvZGU+IG9mIHRoZSB0YXJnZXQgYXBwbGljYXRpb24gZnJvbSBpdHMgPGNvZGU+dGl6ZW4tbWFuaWZlc3QueG1sPFwvY29kZT4gZmlsZTo8XC9wPlxuPHByZSBjbGFzcz1cInNoaWtpIHNoaWtpLXRoZW1lcyBnaXRodWItbGlnaHQgZ2l0aHViLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6I2ZmZjstLXNoaWtpLWRhcmstYmc6IzI0MjkyZTtjb2xvcjojMjQyOTJlOy0tc2hpa2ktZGFyazojZTFlNGU4O1wiPjxjb2RlPjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPmludDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+REVMQVk8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPjI8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPjs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5pbnQ8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPlBFUklPRDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+PTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+MTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5BcHBDb250cm9sPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5hcHBDb250cm9sPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj49PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5uZXc8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPkFwcENvbnRyb2w8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPigpOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj5hcHBDb250cm9sLk9wZXJhdGlvbiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiBBcHBDb250cm9sT3BlcmF0aW9ucy5EZWZhdWx0OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPmFwcENvbnRyb2wuQXBwbGljYXRpb25JZCA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPiZxdW90O29yZy50aXplbi5hbGFybXNsYXZlJnF1b3Q7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj47PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj48XC9jb2RlPjxcL3ByZT5cbjxcL2xpPlxuPGxpPlxuPHA+VG8gc2NoZWR1bGUgYW4gYWxhcm0gYWZ0ZXIgYSBkZWxheSwgdXNlIHRoZSA8Y29kZT5DcmVhdGVBbGFybSgpPFwvY29kZT4gbWV0aG9kIG9mIHRoZSA8Y29kZT5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1NYW5hZ2VyPFwvY29kZT4gY2xhc3MsIHdpdGggdGhlIGluaXRpYWwgZGVsYXksIGludGVydmFsIGZvciBzdWJzZXF1ZW50IGFsYXJtcywgYW5kIGluc3RhbmNlIG9mIHRoZSA8Y29kZT5UaXplbi5BcHBsaWNhdGlvbnMuQXBwQ29udHJvbDxcL2NvZGU+IGNsYXNzIGFzIHBhcmFtZXRlcnMuPFwvcD5cbjxwPlRoZSBtZXRob2QgY3JlYXRlcyB0aGUgYWxhcm0gYXMgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlIDxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5BbGFybS5tZFwiPlRpemVuLkFwcGxpY2F0aW9ucy5BbGFybTxcL2E+IGNsYXNzOjxcL3A+XG48cHJlIGNsYXNzPVwic2hpa2kgc2hpa2ktdGhlbWVzIGdpdGh1Yi1saWdodCBnaXRodWItZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjojZmZmOy0tc2hpa2ktZGFyay1iZzojMjQyOTJlO2NvbG9yOiMyNDI5MmU7LS1zaGlraS1kYXJrOiNlMWU0ZTg7XCI+PGNvZGU+PHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+QWxhcm08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPm15QWxhcm08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiBBbGFybU1hbmFnZXIuPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5DcmVhdGVBbGFybTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KERFTEFZLCBQRVJJT0QsIGFwcENvbnRyb2wpOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+PFwvY29kZT48XC9wcmU+XG48XC9saT5cbjxcL29sPlxuPFwvbGk+XG48bGk+XG48cD5XaGVuIHRoZSBhbGFybSBleHBpcmVzLCBpdCB0cmlnZ2VycyB0aGUgPGNvZGU+T25BcHBDb250cm9sUmVjZWl2ZWQoKTxcL2NvZGU+IGV2ZW50IGhhbmRsZXIgb2YgdGhlIDxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5Db3JlQXBwbGljYXRpb24ubWRcIj5UaXplbi5BcHBsaWNhdGlvbnMuQ29yZUFwcGxpY2F0aW9uPFwvYT4gY2xhc3MgaW4gdGhlIEFsYXJtVGFyZ2V0IGFwcGxpY2F0aW9uOjxcL3A+XG48cHJlIGNsYXNzPVwic2hpa2kgc2hpa2ktdGhlbWVzIGdpdGh1Yi1saWdodCBnaXRodWItZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjojZmZmOy0tc2hpa2ktZGFyay1iZzojMjQyOTJlO2NvbG9yOiMyNDI5MmU7LS1zaGlraS1kYXJrOiNlMWU0ZTg7XCI+PGNvZGU+PHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+cHJvdGVjdGVkPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5vdmVycmlkZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+dm9pZDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojQjM5MkYwXCI+T25BcHBDb250cm9sUmVjZWl2ZWQ8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPkFwcENvbnRyb2xSZWNlaXZlZEV2ZW50QXJnczxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojQjM5MkYwXCI+ZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KTxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPns8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5iYXNlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5PbkFwcENvbnRyb2xSZWNlaXZlZDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KGUpOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPn08XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPjxcL2NvZGU+PFwvcHJlPlxuPFwvbGk+XG48XC9vbD5cbjxcL2xpPlxuPGxpPlxuPHA+VG8gc2V0IGFuIGFsYXJtIHRvIHNlbmQgYSBub3RpZmljYXRpb24gdG8gdGhlIHVzZXIsIGZvbGxvdyB0aGVzZSBzdGVwczo8XC9wPlxuPG9sPlxuPGxpPlxuPHA+Q3JlYXRlIGEgbm90aWZpY2F0aW9uIHRvIGJlIHNlbnQgdG8gdGhlIHVzZXIgYXMgYW4gaW5zdGFuY2Ugb2YgdGhlIDxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5Ob3RpZmljYXRpb25zLk5vdGlmaWNhdGlvbi5tZFwiPlRpemVuLkFwcGxpY2F0aW9ucy5Ob3RpZmljYXRpb25zLk5vdGlmaWNhdGlvbjxcL2E+IGNsYXNzOjxcL3A+XG48cHJlIGNsYXNzPVwic2hpa2kgc2hpa2ktdGhlbWVzIGdpdGh1Yi1saWdodCBnaXRodWItZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjojZmZmOy0tc2hpa2ktZGFyay1iZzojMjQyOTJlO2NvbG9yOiMyNDI5MmU7LS1zaGlraS1kYXJrOiNlMWU0ZTg7XCI+PGNvZGU+PHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+aW50PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5ERUxBWTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+PTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+MjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojRTFFNEU4XCI+OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPmludDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+UEVSSU9EPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj49PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj4xPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj47PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+Tm90aWZpY2F0aW9uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5teU5vdGk8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPjs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+bXlOb3RpIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+PTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+bmV3PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5Ob3RpZmljYXRpb248XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj57PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgIFRpdGxlIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+PTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+JnF1b3Q7Tm90aWZpY2F0aW9uJnF1b3Q7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4sPFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgIENvbnRlbnQgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj49PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4mcXVvdDtIZWxsbyBUaXplbiZxdW90OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPn07PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj48XC9jb2RlPjxcL3ByZT5cbjxcL2xpPlxuPGxpPlxuPHA+VG8gc2NoZWR1bGUgYW4gYWxhcm0gYWZ0ZXIgYSBkZWxheSwgdXNlIHRoZSA8Y29kZT5DcmVhdGVBbGFybSgpPFwvY29kZT4gbWV0aG9kIG9mIHRoZSA8Y29kZT5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1NYW5hZ2VyPFwvY29kZT4gY2xhc3MsIHdpdGggdGhlIGluaXRpYWwgZGVsYXksIGludGVydmFsIGZvciBzdWJzZXF1ZW50IGFsYXJtcywgYW5kIGluc3RhbmNlIG9mIHRoZSA8Y29kZT5UaXplbi5BcHBsaWNhdGlvbnMuTm90aWZpY2F0aW9ucy5Ob3RpZmljYXRpb248XC9jb2RlPiBjbGFzcyBhcyBwYXJhbWV0ZXJzLjxcL3A+XG48cD5UaGUgbWV0aG9kIGNyZWF0ZXMgdGhlIGFsYXJtIGFzIGEgbmV3IGluc3RhbmNlIG9mIHRoZSA8Y29kZT5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm08XC9jb2RlPiBjbGFzczo8XC9wPlxuPHByZSBjbGFzcz1cInNoaWtpIHNoaWtpLXRoZW1lcyBnaXRodWItbGlnaHQgZ2l0aHViLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6I2ZmZjstLXNoaWtpLWRhcmstYmc6IzI0MjkyZTtjb2xvcjojMjQyOTJlOy0tc2hpa2ktZGFyazojZTFlNGU4O1wiPjxjb2RlPjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPkFsYXJtPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5teUFsYXJtPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj49PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gQWxhcm1NYW5hZ2VyLjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+Q3JlYXRlQWxhcm08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPihERUxBWSwgUEVSSU9ELCBteU5vdGkpOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+PFwvY29kZT48XC9wcmU+XG48XC9saT5cbjxcL29sPlxuPFwvbGk+XG48XC91bD5cbjxwPjxhIG5hbWU9XCJzY2VuYXJpb18yXCI+PFwvYT48XC9wPlxuPGgyIGlkPVwiY29udGVudC1zZXQtYW4tYWxhcm0tZm9yLWEtc3BlY2lmaWMtZGF0ZVwiPjxhIGhyZWY9XCIjY29udGVudC1zZXQtYW4tYWxhcm0tZm9yLWEtc3BlY2lmaWMtZGF0ZVwiIGNsYXNzPVwiaGVhZGluZy1wZXJtYWxpbmtcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB0aXRsZT1cIlBlcm1hbGlua1wiPlx1MDBiNjxcL2E+U2V0IGFuIGFsYXJtIGZvciBhIHNwZWNpZmljIGRhdGU8XC9oMj5cbjxwPlRvIHNjaGVkdWxlIGFuIGFsYXJtIGZvciBhIHNwZWNpZmljIGRhdGUsIHVzZSB0aGUgPGNvZGU+Q3JlYXRlQWxhcm0oKTxcL2NvZGU+IG1ldGhvZCBvZiB0aGUgPGEgaHJlZj1cIlwvYXBwbGljYXRpb25cL2RvdG5ldFwvYXBpXC9UaXplbkZYXC9sYXRlc3RcL2FwaVwvVGl6ZW4uQXBwbGljYXRpb25zLkFsYXJtTWFuYWdlci5tZFwiPlRpemVuLkFwcGxpY2F0aW9ucy5BbGFybU1hbmFnZXI8XC9hPiBjbGFzcyB3aXRoIGFuIGluc3RhbmNlIG9mIHRoZSA8Y29kZT5EYXRlVGltZTxcL2NvZGU+IHN0cnVjdHVyZSBhcyBpdHMgZmlyc3QgcGFyYW1ldGVyLjxcL3A+XG48cD5UaGUgZm9sbG93aW5nIGV4YW1wbGUgc2NoZWR1bGVzIGFuIGFwcGxpY2F0aW9uIGNvbnRyb2wgdG8gdHJpZ2dlciAyMCBzZWNvbmRzIGFmdGVyIHRoZSBjdXJyZW50IHRpbWUgKHVzaW5nIHRoZSA8Y29kZT5BZGRTZWNvbmQoKTxcL2NvZGU+IG1ldGhvZCBvZiB0aGUgPGNvZGU+RGF0ZVRpbWU8XC9jb2RlPiBzdHJ1Y3R1cmUpOjxcL3A+XG48cHJlIGNsYXNzPVwic2hpa2kgc2hpa2ktdGhlbWVzIGdpdGh1Yi1saWdodCBnaXRodWItZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjojZmZmOy0tc2hpa2ktZGFyay1iZzojMjQyOTJlO2NvbG9yOiMyNDI5MmU7LS1zaGlraS1kYXJrOiNlMWU0ZTg7XCI+PGNvZGU+PHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+RGF0ZVRpbWU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPmR0PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj49PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gQWxhcm1NYW5hZ2VyLjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+R2V0Q3VycmVudFRpbWU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPigpOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNFMUU0RThcIj5teUFsYXJtPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj49PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gQWxhcm1NYW5hZ2VyLjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+Q3JlYXRlQWxhcm08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPihkdC48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPkFkZFNlY29uZHM8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPjIwPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4pLCBhcHBDb250cm9sKTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPjxcL2NvZGU+PFwvcHJlPlxuPHA+PGEgbmFtZT1cInNjZW5hcmlvXzNcIj48XC9hPjxcL3A+XG48aDIgaWQ9XCJjb250ZW50LXNldC1hLXJlY3VycmluZy1hbGFybVwiPjxhIGhyZWY9XCIjY29udGVudC1zZXQtYS1yZWN1cnJpbmctYWxhcm1cIiBjbGFzcz1cImhlYWRpbmctcGVybWFsaW5rXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgdGl0bGU9XCJQZXJtYWxpbmtcIj5cdTAwYjY8XC9hPlNldCBhIHJlY3VycmluZyBhbGFybTxcL2gyPlxuPHA+WW91IGNhbiBzZXQgYSByZWN1cnJpbmcgYWxhcm0gdGhhdCBnb2VzIG9mZiBhdCBhIHNwZWNpZmljIG1vbWVudCwgYW5kIHRoZXJlYWZ0ZXIgYXQgcmVndWxhciBpbnRlcnZhbHMuPFwvcD5cbjxwPlRvIHNjaGVkdWxlIGEgcmVjdXJyaW5nIGFsYXJtIHRvIGdvIG9mZiBvbiBzcGVjaWZpYyBkYXlzIG9mIHRoZSB3ZWVrLCB1c2UgdGhlIDxjb2RlPkNyZWF0ZUFsYXJtKCk8XC9jb2RlPiBtZXRob2Qgb2YgdGhlIDxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5BbGFybU1hbmFnZXIubWRcIj5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1NYW5hZ2VyPFwvYT4gY2xhc3MsIHdpdGggdmFsdWVzIG9mIHRoZSA8YSBocmVmPVwiXC9hcHBsaWNhdGlvblwvZG90bmV0XC9hcGlcL1RpemVuRlhcL2xhdGVzdFwvYXBpXC9UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1XZWVrRmxhZy5tZFwiPlRpemVuLkFwcGxpY2F0aW9ucy5BbGFybVdlZWtGbGFnPFwvYT4gZW51bWVyYXRpb24gYXMgdGhlIHNlY29uZCBwYXJhbWV0ZXIuIFlvdSBjYW4gam9pbiBtdWx0aXBsZSB2YWx1ZXMgdG9nZXRoZXIgdG8gc2V0IHRoZSBhbGFybSB0byB0cmlnZ2VyIG9uIG11bHRpcGxlIGRheXMgb2YgdGhlIHdlZWsuPFwvcD5cbjxwPlRoZSBmb2xsb3dpbmcgZXhhbXBsZSBzY2hlZHVsZXMgYW4gYXBwbGljYXRpb24gY29udHJvbCB0byBiZSBpbnZva2VkIGF0IGEgc2V0IHRpbWUgZXZlcnkgVHVlc2RheSBhbmQgRnJpZGF5OjxcL3A+XG48cHJlIGNsYXNzPVwic2hpa2kgc2hpa2ktdGhlbWVzIGdpdGh1Yi1saWdodCBnaXRodWItZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjojZmZmOy0tc2hpa2ktZGFyay1iZzojMjQyOTJlO2NvbG9yOiMyNDI5MmU7LS1zaGlraS1kYXJrOiNlMWU0ZTg7XCI+PGNvZGU+PHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+VGl6ZW48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPi48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPkFwcGxpY2F0aW9uczxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+LjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+QXBwQ29udHJvbDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+YXBwQ29udHJvbDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRjk3NTgzXCI+PTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRjk3NTgzXCI+bmV3PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5UaXplbjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+LjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+QXBwbGljYXRpb25zPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5BcHBDb250cm9sPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oKTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNFMUU0RThcIj5hcHBDb250cm9sPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNFMUU0RThcIj5PcGVyYXRpb248XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiBBcHBDb250cm9sT3BlcmF0aW9ucy5EZWZhdWx0OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPmFwcENvbnRyb2wuQXBwbGljYXRpb25JZCA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPiZxdW90O29yZy50aXplbi5hbGFybXNsYXZlJnF1b3Q7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPkFsYXJtIG15QWxhcm0gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj49PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gQWxhcm1NYW5hZ2VyLjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+Q3JlYXRlQWxhcm08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPihEYXRlVGltZS5OZXcuPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5BZGRTZWNvbmQ8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPjEwPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4pLDxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxhcm1XZWVrRmxhZy5UdWVzZGF5IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+fDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IEFsYXJtV2Vla0ZsYWcuRnJpZGF5LCBhcHBDb250cm9sKTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPjxcL2NvZGU+PFwvcHJlPlxuPHA+PGEgbmFtZT1cInNjZW5hcmlvXzRcIj48XC9hPjxcL3A+XG48aDIgaWQ9XCJjb250ZW50LWxpc3QtYWxsLXNjaGVkdWxlZC1hbGFybXMtYW5kLWNhbmNlbC1hbi1hbGFybVwiPjxhIGhyZWY9XCIjY29udGVudC1saXN0LWFsbC1zY2hlZHVsZWQtYWxhcm1zLWFuZC1jYW5jZWwtYW4tYWxhcm1cIiBjbGFzcz1cImhlYWRpbmctcGVybWFsaW5rXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgdGl0bGU9XCJQZXJtYWxpbmtcIj5cdTAwYjY8XC9hPkxpc3QgYWxsIHNjaGVkdWxlZCBhbGFybXMgYW5kIGNhbmNlbCBhbiBhbGFybTxcL2gyPlxuPHA+WW91IGNhbiBsaXN0IGFsbCBzY2hlZHVsZWQgYWxhcm1zLCBhbmQgY2FuY2VsIGFsYXJtcyBlaXRoZXIgb25lIGJ5IG9uZSBvciBhbGwgYXQgb25jZSBieSBmb2xsb3dpbmcgdGhlc2Ugc3RlcHM6PFwvcD5cbjx1bD5cbjxsaT5cbjxwPlRvIGxpc3QgYWxsIHNjaGVkdWxlZCBhbGFybXMsIHVzZSB0aGUgPGNvZGU+R2V0QWxsU2NoZWR1bGVkQWxhcm1zKCk8XC9jb2RlPiBtZXRob2Qgb2YgdGhlIDxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5BbGFybU1hbmFnZXIubWRcIj5UaXplbi5BcHBsaWNhdGlvbnMuQWxhcm1NYW5hZ2VyPFwvYT4gY2xhc3M6PFwvcD5cbjxwcmUgY2xhc3M9XCJzaGlraSBzaGlraS10aGVtZXMgZ2l0aHViLWxpZ2h0IGdpdGh1Yi1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7LS1zaGlraS1kYXJrLWJnOiMyNDI5MmU7Y29sb3I6IzI0MjkyZTstLXNoaWtpLWRhcms6I2UxZTRlODtcIj48Y29kZT48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5MaXN0PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4mbHQ7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5BbGFybTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+Jmd0OyA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPmFsYXJtczxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNFMUU0RThcIj5hbGFybXM8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAoPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5MaXN0PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4mbHQ7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5BbGFybTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+Jmd0OylBbGFybU1hbmFnZXIuPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5HZXRBbGxTY2hlZHVsZWRBbGFybXM8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPigpOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+PFwvY29kZT48XC9wcmU+XG48XC9saT5cbjxsaT5cbjxwPlRvIGNhbmNlbCBhIHNpbmdsZSBzY2hlZHVsZWQgYWxhcm0sIHVzZSB0aGUgPGNvZGU+Q2FuY2VsKCk8XC9jb2RlPiBtZXRob2Qgb2YgdGhlIDxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5BbGFybS5tZFwiPlRpemVuLkFwcGxpY2F0aW9ucy5BbGFybTxcL2E+IGNsYXNzOjxcL3A+XG48cHJlIGNsYXNzPVwic2hpa2kgc2hpa2ktdGhlbWVzIGdpdGh1Yi1saWdodCBnaXRodWItZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjojZmZmOy0tc2hpa2ktZGFyay1iZzojMjQyOTJlO2NvbG9yOiMyNDI5MmU7LS1zaGlraS1kYXJrOiNlMWU0ZTg7XCI+PGNvZGU+PHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+VGl6ZW48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPi48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPkFwcGxpY2F0aW9uczxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+LjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+QXBwQ29udHJvbDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+YXBwQ29udHJvbDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+PTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+bmV3PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5UaXplbjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRTFFNEU4XCI+LjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojQjM5MkYwXCI+QXBwbGljYXRpb25zPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5BcHBDb250cm9sPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oKTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5BbGFybTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+bXlBbGFybTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj5hcHBDb250cm9sLk9wZXJhdGlvbiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiBBcHBDb250cm9sT3BlcmF0aW9ucy5EZWZhdWx0OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPmFwcENvbnRyb2wuQXBwbGljYXRpb25JZCA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPiZxdW90O29yZy50aXplbi5hbGFybXNsYXZlJnF1b3Q7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj47PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+bXlBbGFybSA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiBBbGFybU1hbmFnZXIuPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5DcmVhdGVBbGFybTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+MTAwPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4sIGFwcENvbnRyb2wpOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj50cnk8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj57PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgIG15QWxhcm0uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5DYW5jZWw8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPigpOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPn08XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5jYXRjaDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICg8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPkV4Y2VwdGlvbjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+ZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KTxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPns8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gICAgTG9nLjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+RXJyb3I8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPiZxdW90O0FMQVJNJnF1b3Q7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4sIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+JnF1b3Q7RXhjZXB0aW9uIG9jY3VycyZxdW90OzxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj59PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj48XC9jb2RlPjxcL3ByZT5cbjxcL2xpPlxuPGxpPlxuPHA+VG8gY2FuY2VsIGFsbCBhbGFybXMgcmVnaXN0ZXJlZCBieSB0aGUgYXBwbGljYXRpb24sIHVzZSB0aGUgPGNvZGU+Q2FuY2VsQWxsKCk8XC9jb2RlPiBtZXRob2Qgb2YgdGhlIDxjb2RlPlRpemVuLkFwcGxpY2F0aW9ucy5BbGFybU1hbmFnZXI8XC9jb2RlPiBjbGFzczo8XC9wPlxuPHByZSBjbGFzcz1cInNoaWtpIHNoaWtpLXRoZW1lcyBnaXRodWItbGlnaHQgZ2l0aHViLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6I2ZmZjstLXNoaWtpLWRhcmstYmc6IzI0MjkyZTtjb2xvcjojMjQyOTJlOy0tc2hpa2ktZGFyazojZTFlNGU4O1wiPjxjb2RlPjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPkFsYXJtTWFuYWdlci48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPkNhbmNlbEFsbDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KCk7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj48XC9jb2RlPjxcL3ByZT5cbjxcL2xpPlxuPFwvdWw+XG48aDIgaWQ9XCJjb250ZW50LXJlbGF0ZWQtaW5mb3JtYXRpb25cIj48YSBocmVmPVwiI2NvbnRlbnQtcmVsYXRlZC1pbmZvcm1hdGlvblwiIGNsYXNzPVwiaGVhZGluZy1wZXJtYWxpbmtcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB0aXRsZT1cIlBlcm1hbGlua1wiPlx1MDBiNjxcL2E+UmVsYXRlZCBpbmZvcm1hdGlvbjxcL2gyPlxuPHVsPlxuPGxpPkRlcGVuZGVuY2llc1xuPHVsPlxuPGxpPlRpemVuIDQuMCBhbmQgSGlnaGVyPFwvbGk+XG48XC91bD5cbjxcL2xpPlxuPGxpPkFQSSBSZWZlcmVuY2VzXG48dWw+XG48bGk+PGEgaHJlZj1cIlwvYXBwbGljYXRpb25cL2RvdG5ldFwvYXBpXC9UaXplbkZYXC9sYXRlc3RcL2FwaVwvVGl6ZW4uQXBwbGljYXRpb25zLkFsYXJtTWFuYWdlclwiPlRpemVuLkFwcGxpY2F0aW9ucy5BbGFybU1hbmFnZXI8XC9hPiBjbGFzczxcL2xpPlxuPGxpPjxhIGhyZWY9XCJcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2FwaVwvVGl6ZW5GWFwvbGF0ZXN0XC9hcGlcL1RpemVuLkFwcGxpY2F0aW9ucy5BbGFybVwiPlRpemVuLkFwcGxpY2F0aW9ucy5BbGFybTxcL2E+IGNsYXNzPFwvbGk+XG48XC91bD5cbjxcL2xpPlxuPFwvdWw+XG4iLCJ0YWJsZV9vZl9jb250ZW50IjoiPHVsIGNsYXNzPVwidGFibGUtb2YtY29udGVudHNcIj5cbjxsaT48YSBocmVmPVwiI2NvbnRlbnQtcHJlcmVxdWlzaXRlc1wiPlByZXJlcXVpc2l0ZXM8XC9hPjxcL2xpPlxuPGxpPjxhIGhyZWY9XCIjY29udGVudC1zZXQtYW4tYWxhcm0td2l0aC1hLXNwZWNpZmljLWRlbGF5XCI+U2V0IGFuIGFsYXJtIHdpdGggYSBzcGVjaWZpYyBkZWxheTxcL2E+PFwvbGk+XG48bGk+PGEgaHJlZj1cIiNjb250ZW50LXNldC1hbi1hbGFybS1mb3ItYS1zcGVjaWZpYy1kYXRlXCI+U2V0IGFuIGFsYXJtIGZvciBhIHNwZWNpZmljIGRhdGU8XC9hPjxcL2xpPlxuPGxpPjxhIGhyZWY9XCIjY29udGVudC1zZXQtYS1yZWN1cnJpbmctYWxhcm1cIj5TZXQgYSByZWN1cnJpbmcgYWxhcm08XC9hPjxcL2xpPlxuPGxpPjxhIGhyZWY9XCIjY29udGVudC1saXN0LWFsbC1zY2hlZHVsZWQtYWxhcm1zLWFuZC1jYW5jZWwtYW4tYWxhcm1cIj5MaXN0IGFsbCBzY2hlZHVsZWQgYWxhcm1zIGFuZCBjYW5jZWwgYW4gYWxhcm08XC9hPjxcL2xpPlxuPGxpPjxhIGhyZWY9XCIjY29udGVudC1yZWxhdGVkLWluZm9ybWF0aW9uXCI+UmVsYXRlZCBpbmZvcm1hdGlvbjxcL2E+PFwvbGk+XG48XC91bD5cbiIsInRpdGxlIjoiQWxhcm0iLCJyYXciOm51bGx9LHsiY2xhc3MiOiJBcHBcXFNlcnZpY2VzXFxEb2N1bWVudGF0aW9uXFxEYXRhXFxSZW5kZXJlZE1hcmtkb3duIiwicyI6IndyYmwifV19LHsicyI6ImFyciJ9XX0sIm1lbW8iOnsiaWQiOiJUVDJmSFRmeDM0a0w3eWE2bE5CYyIsIm5hbWUiOiJfX21vdW50UGFyYW1zQ29udGFpbmVyIiwicGF0aCI6ImRvY3NcL2FwcGxpY2F0aW9uXC9kb3RuZXRcL2d1aWRlc1wvYWxhcm1cL2FsYXJtcyIsIm1ldGhvZCI6IkdFVCIsInJlbGVhc2UiOiJhLWEtYSJ9LCJjaGVja3N1bSI6IjkyZjY2MTM2YTE1ZWNhYTA2N2Q2YTcxOTJjYjM2YjM1MDA3NDAwZTQ1YWYyZWE3NTI5YjdkMTVkNDJmNGUzMmEifQ==')" >

For the best experience,
Please visit us from a computer

Copyright © 2026 SAMSUNG. All rights reserved.

Customize your cookie preferences

You can enable or disable non-essential cookies. Essential cookies are always on to ensure the site works properly and to keep you signed in.

Necessary

These cookies are necessary for the website to function properly and cannot be switched off. They help with things like logging in and setting your privacy preferences.

Always on

Analytics

These cookies help us improve the site by tracking which pages are most popular and how visitors move around the site.

Enable analytics cookies
Public Forum Public Forum
Employees only. Please sign in with your company account.