Application

Chose application
.NET Native Web Flutter
Choose device
Flutter applications on Tizen devices. This guide covers the Flutter Tizen Application model, life-cycle, packaging policy, Flutter Tizen APIs, and provides essential information for building and deploying applications on the Tizen platform.<\/p>\n<hr \/>\n<h2 id=\"content-1-flutter-tizen-application-model\"><a href=https://samsungtizenos.com/"#content-1-flutter-tizen-application-model\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>1. Flutter Tizen Application Model<\/h2>\n<p>The Flutter Tizen application model is based on the Flutter framework and allows developers to build beautiful, natively-compiled applications for mobile, web, and desktop from a single codebase. The model integrates seamlessly with Tizen's native features through flutter-tizen plugins, providing a familiar and productive experience for Flutter developers.<\/p>\n<p>The flutter-tizen project consists of:<\/p>\n<ul>\n<li><strong>flutter-tizen CLI<\/strong>: Command-line tool for building and deploying Flutter apps to Tizen devices<\/li>\n<li><strong>flutter-tizen plugins<\/strong>: Platform-specific implementations that expose Tizen native APIs to Flutter apps<\/li>\n<li><strong>tizen-interop plugin<\/strong>: Enables Flutter apps to use Tizen native libraries directly<\/li>\n<\/ul>\n<hr \/>\n<h2 id=\"content-2-flutter-tizen-application-life-cycle\"><a href=https://samsungtizenos.com/"#content-2-flutter-tizen-application-life-cycle\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>2. Flutter Tizen Application Life-cycle<\/h2>\n<p>The life-cycle of a Flutter Tizen application follows the Flutter application life-cycle pattern, which is slightly different from Tizen native and .NET applications. The life-cycle is managed by the Flutter engine and can be tracked using <code>AppLifecycleListener<\/code> or <code>WidgetsBindingObserver<\/code>.<\/p>\n<hr \/>\n<h3 id=\"content-application-states\"><a href=https://samsungtizenos.com/"#content-application-states\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>Application States<\/h3>\n<p>A Flutter Tizen application can be in one of the following states:<\/p>\n<p><strong>Table: Application States<\/strong><\/p>\n<div class=\"overflow-auto grid table-fixed\" data-table-container=\"data-table-container\"><table>\n<thead>\n<tr>\n<th>State<\/th>\n<th>Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>resumed<\/strong><\/td>\n<td>Application is in the foreground and the user can interact with it. Corresponds to the <code>onResume()<\/code> callback.<\/td>\n<\/tr>\n<tr>\n<td><strong>inactive<\/strong><\/td>\n<td>Application is transitioning to background or another application. Corresponds to <code>onInactive()<\/code> or <code>onShow()<\/code> callbacks.<\/td>\n<\/tr>\n<tr>\n<td><strong>hidden<\/strong><\/td>\n<td>All views of the application are hidden. This state occurs when the app is about to pause or when transitioning from paused to inactive.<\/td>\n<\/tr>\n<tr>\n<td><strong>paused<\/strong><\/td>\n<td>Application is in the background and not responding to user input. Corresponds to <code>onPause()<\/code> callback.<\/td>\n<\/tr>\n<tr>\n<td><strong>detached<\/strong><\/td>\n<td>Flutter engine is completely detached from the view, typically during initialization or termination. Corresponds to <code>onDetach()<\/code> callback.<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/div>\n<p><strong>Figure: Flutter application state transitions<\/strong><\/p>\n<p><img src=https://samsungtizenos.com/"media//app_lifecycle.png/" alt=\"Application state transitions\" title=\"Flutter application state transitions\" \/><\/p>\n<h3 id=\"content-state-transitions\"><a href=https://samsungtizenos.com/"#content-state-transitions\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>State Transitions<\/h3>\n<p>The following table shows Flutter application states and their corresponding callbacks:<\/p>\n<p><strong>Table: State Transitions<\/strong><\/p>\n<div class=\"overflow-auto grid table-fixed\" data-table-container=\"data-table-container\"><table>\n<thead>\n<tr>\n<th>Flutter State<\/th>\n<th>Callback Method<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>resumed (onResume() or initState())<\/td>\n<td>Application initialization<\/td>\n<\/tr>\n<tr>\n<td>inactive (onInactive()) \u2192 hidden (onHide()) \u2192 paused (onPause())<\/td>\n<td>Background transition<\/td>\n<\/tr>\n<tr>\n<td>hidden (onRestart()) \u2192 inactive (onShow()) \u2192 resumed (onResume())<\/td>\n<td>Foreground transition<\/td>\n<\/tr>\n<tr>\n<td>detached (onDetach() or dispose())<\/td>\n<td>Application termination<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/div>\n<h3 id=\"content-managing-application-life-cycle\"><a href=https://samsungtizenos.com/"#content-managing-application-life-cycle\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>Managing Application Life-cycle<\/h3>\n<p>Flutter provides two main approaches to manage application life-cycle:<\/p>\n<h4 id=\"content-using-applifecyclelistener\"><a href=https://samsungtizenos.com/"#content-using-applifecyclelistener\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>Using AppLifecycleListener<\/h4>\n<p><code>AppLifecycleListener<\/code> provides a modern, convenient way to track application state changes:<\/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\">import<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;package:flutter\/material.dart&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">import<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;package:flutter\/scheduler.dart&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">class<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">_AppLifecycleDisplayState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">extends<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">State<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">&lt;<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleDisplay<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">&gt; {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">late<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">final<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleListener<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> _listener;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">@override<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">void<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">initState<\/span><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\">super<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">initState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> _listener <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleListener<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> onShow<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> () <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=&gt;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">_handleTransition<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;onShow&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> onResume<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> () <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=&gt;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">_handleTransition<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;onResume&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> onHide<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> () <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=&gt;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">_handleTransition<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;onHide&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> onInactive<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> () <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=&gt;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">_handleTransition<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;onInactive&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> onPause<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> () <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=&gt;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">_handleTransition<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;onPause&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> onDetach<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> () <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=&gt;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">_handleTransition<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;onDetach&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> onRestart<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> () <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">=&gt;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">_handleTransition<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;onRestart&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> onStateChange<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> _handleStateChange,<\/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>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">@override<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">void<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">dispose<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">() {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> _listener.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">dispose<\/span><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\">super<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">dispose<\/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>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">void<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">_handleTransition<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">String<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> name) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">print<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;Called Transition() [<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">$<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">name<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">]&#39;<\/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>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">void<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">_handleStateChange<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> state) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">print<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;Called StateChange() [<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">${<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">state<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">.<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">name<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">}<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">]&#39;<\/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\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<h4 id=\"content-using-widgetsbindingobserver\"><a href=https://samsungtizenos.com/"#content-using-widgetsbindingobserver\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>Using WidgetsBindingObserver<\/h4>\n<p><code>WidgetsBindingObserver<\/code> provides an alternative approach to track life-cycle changes:<\/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\">import<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;package:flutter\/material.dart&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#D73A49;--shiki-dark:#F97583\">class<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">_MyHomePageState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">extends<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">State<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">&lt;<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">MyHomePage<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">&gt; <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">with<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">WidgetsBindingObserver<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">@override<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">void<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">initState<\/span><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\">super<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">initState<\/span><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\">WidgetsBinding<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.instance.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">addObserver<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">this<\/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>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">@override<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">void<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">dispose<\/span><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\">WidgetsBinding<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.instance.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">removeObserver<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">this<\/span><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\">super<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">dispose<\/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>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">@override<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">void<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">didChangeAppLifecycleState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> state) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">super<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.<\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">didChangeAppLifecycleState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(state);<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">print<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(state);<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">switch<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> (state) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">case<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.resumed<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">print<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;The app has been [resumed].&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">break<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">case<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.inactive<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">print<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;The app has been [inactive].&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">break<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">case<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.paused<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">print<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;The app has been [paused].&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">break<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">case<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.detached<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">print<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;The app has been [detached].&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">break<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">case<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">AppLifecycleState<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">.hidden<\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">print<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">(<\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">&#39;The app has been [hidden].&#39;<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">);<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#D73A49;--shiki-dark:#F97583\">break<\/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\"> }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#24292E;--shiki-dark:#E1E4E8\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<hr \/>\n<h2 id=\"content-3-flutter-tizen-application-packaging\"><a href=https://samsungtizenos.com/"#content-3-flutter-tizen-application-packaging\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>3. Flutter Tizen Application Packaging<\/h2>\n<p>The process of packaging a Flutter Tizen application involves creating a &quot;tpk&quot; file, which is the standard package format for Tizen applications. The packaging process follows similar policies to Tizen native applications, with specific considerations for Flutter applications.<\/p>\n<p><strong>Package ID &amp; Application ID<\/strong><\/p>\n<ul>\n<li>The Package ID and Application ID are unique identifiers for the application and follow the same naming conventions as Tizen native applications.<\/li>\n<li>Package ID format: Use a-z, A-Z, 0-9, &quot;.&quot;, &quot;-&quot;, and &quot;_&quot; characters, with a maximum length of 50 characters.<\/li>\n<\/ul>\n<p><strong>Application Directory Policy<\/strong><\/p>\n<p>Flutter Tizen applications have the following directory structure:<\/p>\n<ul>\n<li><strong>&quot;bin&quot; directory<\/strong>: Contains the Flutter Tizen application binary and all published output files<\/li>\n<li><strong>&quot;lib&quot; directory<\/strong>: Contains Flutter Tizen libraries and plugins<\/li>\n<li><strong>&quot;res&quot; directory<\/strong>: Contains application resources<\/li>\n<li><strong>&quot;data&quot; directory<\/strong>: Application's own directory for read\/write operations<\/li>\n<li><strong>&quot;shared\/&quot; directory<\/strong>: For sharing with other applications<\/li>\n<\/ul>\n<p>The <code>tizen-manifest.xml<\/code> file and signature files are located in the application root directory, similar to other Tizen applications.<\/p>\n<p><strong>Manifest File<\/strong><\/p>\n<ul>\n<li>A manifest file (tizen-manifest.xml) defines the metadata, permissions, and functionality of the application<\/li>\n<li><strong>Platform version and API version<\/strong>: Ensure that your application targets the correct Tizen platform version and API level<\/li>\n<li>The manifest file follows the same structure as Tizen native applications<\/li>\n<\/ul>\n<p><strong>Signature Policy<\/strong><\/p>\n<ul>\n<li>To install an application on a Tizen device, you must sign it with a valid certificate<\/li>\n<li>The signing process is the same as for Tizen native applications, using author and distributor signatures<\/li>\n<li>For more information, please refer to the <a href=https://samsungtizenos.com/"..//guides//flutter-tizen//doc//install-tizen-sdk.md#create-a-certificate-profile\">Create a certificate profile<\/a> section.<\/li>\n<\/ul>\n<hr \/>\n<h2 id=\"content-4-flutter-tizen-api\"><a href=https://samsungtizenos.com/"#content-4-flutter-tizen-api\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>4. Flutter Tizen API<\/h2>\n<p>Flutter Tizen applications leverage the Flutter framework APIs along with platform-specific APIs provided by flutter-tizen plugins.<\/p>\n<p><strong>Flutter Framework API<\/strong><\/p>\n<ul>\n<li>The Flutter framework provides a rich set of widgets and APIs for building user interfaces<\/li>\n<li>Includes material design, Cupertino design, and custom widget support<\/li>\n<li>Provides state management solutions like <code>setState()<\/code>, <code>Provider<\/code>, <code>Bloc<\/code>, and more<\/li>\n<\/ul>\n<p><strong>flutter-tizen plugins<\/strong><\/p>\n<ul>\n<li>flutter-tizen plugins expose Tizen native APIs to Flutter applications<\/li>\n<li>Plugins provide access to Tizen-specific features such as multimedia playback, system information, networking, and device hardware<\/li>\n<li>For a complete list of available plugins and their documentation, visit the <a href=https://samsungtizenos.com/"https:////github.com//flutter-tizen//plugins/">flutter-tizen plugins repository<\/a><\/li>\n<\/ul>\n<p><strong>tizen-interop plugin<\/strong><\/p>\n<ul>\n<li>The <a href=https://samsungtizenos.com/"https:////github.com//flutter-tizen//tizen_interop/">tizen_interop plugin allows Flutter apps to use Tizen native libraries directly<\/li>\n<li>Provides a mechanism for interoperability between Flutter and Tizen native code<\/li>\n<li>Useful for accessing features not yet available as plugins<\/li>\n<\/ul>\n<hr \/>\n<h2 id=\"content-5-flutter-tizen-application-development\"><a href=https://samsungtizenos.com/"#content-5-flutter-tizen-application-development\" class=\"heading-permalink\" aria-hidden=\"true\" title=\"Permalink\">\u00b6<\/a>5. Flutter Tizen Application Development<\/h2>\n<p>To start developing a Flutter Tizen application, follow these steps:<\/p>\n<ol>\n<li>\n<p><strong>Installation<\/strong>:<\/p>\n<ul>\n<li><a href=https://samsungtizenos.com/".//guides//flutter-tizen//doc//linux-install.md/">Linux (x64)<\/a><\/li>\n<li><a href=https://samsungtizenos.com/".//guides//flutter-tizen//doc//windows-install.md/">Windows (x64)<\/a><\/li>\n<li><a href=https://samsungtizenos.com/".//guides//flutter-tizen//doc//macos-install.md/">macOS (x64)<\/a><\/li>\n<\/ul>\n<\/li>\n<li>\n<p><strong>Create a new project<\/strong>:<\/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\">flutter-tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">create<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#005CC5;--shiki-dark:#79B8FF\">--platforms<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">my_app<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<li>\n<p><strong>Code Writing<\/strong>:<\/p>\n<ul>\n<li>Use Dart and Flutter framework to develop application logic<\/li>\n<li>Integrate flutter-tizen plugins for Tizen-specific features<\/li>\n<li>Implement life-cycle management using <code>AppLifecycleListener<\/code> or <code>WidgetsBindingObserver<\/code><\/li>\n<\/ul>\n<\/li>\n<li>\n<p><strong>Build and deploy<\/strong>:<\/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:#6A737D;--shiki-dark:#6A737D\"># Build a TPK in release mode and sign with an active profile.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">flutter-tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">build<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">tpk<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D;--shiki-dark:#6A737D\"># Install &quot;build\/tizen\/tpk\/*.tpk&quot; on a Tizen device.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">flutter-tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">install<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">or<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#6A737D;--shiki-dark:#6A737D\"># Build and run in debug mode.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6F42C1;--shiki-dark:#B392F0\">flutter-tizen<\/span><span style=\"color:#24292E;--shiki-dark:#E1E4E8\"> <\/span><span style=\"color:#032F62;--shiki-dark:#9ECBFF\">run<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre>\n<\/li>\n<\/ol>\n<p>The entry point for a Flutter Tizen application is defined in the <code>main()<\/code> function of the application, where the Flutter app is initialized using <code>runApp()<\/code>.<\/p>\n<p><strong>Development Tools<\/strong><\/p>\n<ul>\n<li><strong>Flutter CLI<\/strong>: Standard Flutter development tools<\/li>\n<li><strong>flutter-tizen CLI<\/strong>: Tizen-specific build and deployment command line interface<\/li>\n<li><strong>VS Code<\/strong>: With Flutter and Tizen extensions for an enhanced development experience<\/li>\n<\/ul>\n","table_of_content":"<ul class=\"table-of-contents\">\n<li><a href=https://samsungtizenos.com/"#content-1-flutter-tizen-application-model\">1. Flutter Tizen Application Model<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-2-flutter-tizen-application-life-cycle\">2. Flutter Tizen Application Life-cycle<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-application-states\">Application States<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-state-transitions\">State Transitions<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-managing-application-life-cycle\">Managing Application Life-cycle<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-using-applifecyclelistener\">Using AppLifecycleListener<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-using-widgetsbindingobserver\">Using WidgetsBindingObserver<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-3-flutter-tizen-application-packaging\">3. Flutter Tizen Application Packaging<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-4-flutter-tizen-api\">4. Flutter Tizen API<\/a><\/li>\n<li><a href=https://samsungtizenos.com/"#content-5-flutter-tizen-application-development\">5. Flutter Tizen Application Development<\/a><\/li>\n<\/ul>\n","title":"Flutter Tizen Application","raw":null},{"class":"App\\Services\\Documentation\\Data\\RenderedMarkdown","s":"wrbl"}]},"memo":{"id":"n6hRX1jejIETVJT9fXTK","name":"documentation::article","path":"docs\/application\/flutter\/overview\/overview","method":"GET","release":"a-a-a","children":[],"scripts":[],"assets":[],"lazyLoaded":false,"lazyIsolated":true,"errors":[],"locale":"en","islands":[]},"checksum":"36c9a6ca91165cb62259bcc66918d6da508d4b3f959e6f890d3230cc7861a32a"}" wire:effects="[]" wire:id="n6hRX1jejIETVJT9fXTK" wire:name="documentation::article" x-init="$wire.__lazyLoad('eyJkYXRhIjp7ImZvck1vdW50IjpbeyJtYXJrZG93biI6W3siYm9keSI6IjxoMSBpZD1cImNvbnRlbnQtZmx1dHRlci10aXplbi1hcHBsaWNhdGlvblwiPjxhIGhyZWY9XCIjY29udGVudC1mbHV0dGVyLXRpemVuLWFwcGxpY2F0aW9uXCIgY2xhc3M9XCJoZWFkaW5nLXBlcm1hbGlua1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwiUGVybWFsaW5rXCI+XHUwMGI2PFwvYT5GbHV0dGVyIFRpemVuIEFwcGxpY2F0aW9uPFwvaDE+PGRpdiBkYXRhLWtub3dsZWRnZS1iYXNlLW1ldGFkYXRhPjxcL2Rpdj5cbjxwPlRoZSBmbHV0dGVyLXRpemVuIHByb2plY3QgZW5hYmxlcyB5b3UgdG8gZGV2ZWxvcCBhbmQgZGVwbG95IGNyb3NzLXBsYXRmb3JtIDxhIGhyZWY9XCJodHRwczpcL1wvZmx1dHRlci5kZXZcIj5GbHV0dGVyPFwvYT4gYXBwbGljYXRpb25zIG9uIFRpemVuIGRldmljZXMuIFRoaXMgZ3VpZGUgY292ZXJzIHRoZSBGbHV0dGVyIFRpemVuIEFwcGxpY2F0aW9uIG1vZGVsLCBsaWZlLWN5Y2xlLCBwYWNrYWdpbmcgcG9saWN5LCBGbHV0dGVyIFRpemVuIEFQSXMsIGFuZCBwcm92aWRlcyBlc3NlbnRpYWwgaW5mb3JtYXRpb24gZm9yIGJ1aWxkaW5nIGFuZCBkZXBsb3lpbmcgYXBwbGljYXRpb25zIG9uIHRoZSBUaXplbiBwbGF0Zm9ybS48XC9wPlxuPGhyIFwvPlxuPGgyIGlkPVwiY29udGVudC0xLWZsdXR0ZXItdGl6ZW4tYXBwbGljYXRpb24tbW9kZWxcIj48YSBocmVmPVwiI2NvbnRlbnQtMS1mbHV0dGVyLXRpemVuLWFwcGxpY2F0aW9uLW1vZGVsXCIgY2xhc3M9XCJoZWFkaW5nLXBlcm1hbGlua1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwiUGVybWFsaW5rXCI+XHUwMGI2PFwvYT4xLiBGbHV0dGVyIFRpemVuIEFwcGxpY2F0aW9uIE1vZGVsPFwvaDI+XG48cD5UaGUgRmx1dHRlciBUaXplbiBhcHBsaWNhdGlvbiBtb2RlbCBpcyBiYXNlZCBvbiB0aGUgRmx1dHRlciBmcmFtZXdvcmsgYW5kIGFsbG93cyBkZXZlbG9wZXJzIHRvIGJ1aWxkIGJlYXV0aWZ1bCwgbmF0aXZlbHktY29tcGlsZWQgYXBwbGljYXRpb25zIGZvciBtb2JpbGUsIHdlYiwgYW5kIGRlc2t0b3AgZnJvbSBhIHNpbmdsZSBjb2RlYmFzZS4gVGhlIG1vZGVsIGludGVncmF0ZXMgc2VhbWxlc3NseSB3aXRoIFRpemVuJ3MgbmF0aXZlIGZlYXR1cmVzIHRocm91Z2ggZmx1dHRlci10aXplbiBwbHVnaW5zLCBwcm92aWRpbmcgYSBmYW1pbGlhciBhbmQgcHJvZHVjdGl2ZSBleHBlcmllbmNlIGZvciBGbHV0dGVyIGRldmVsb3BlcnMuPFwvcD5cbjxwPlRoZSBmbHV0dGVyLXRpemVuIHByb2plY3QgY29uc2lzdHMgb2Y6PFwvcD5cbjx1bD5cbjxsaT48c3Ryb25nPmZsdXR0ZXItdGl6ZW4gQ0xJPFwvc3Ryb25nPjogQ29tbWFuZC1saW5lIHRvb2wgZm9yIGJ1aWxkaW5nIGFuZCBkZXBsb3lpbmcgRmx1dHRlciBhcHBzIHRvIFRpemVuIGRldmljZXM8XC9saT5cbjxsaT48c3Ryb25nPmZsdXR0ZXItdGl6ZW4gcGx1Z2luczxcL3N0cm9uZz46IFBsYXRmb3JtLXNwZWNpZmljIGltcGxlbWVudGF0aW9ucyB0aGF0IGV4cG9zZSBUaXplbiBuYXRpdmUgQVBJcyB0byBGbHV0dGVyIGFwcHM8XC9saT5cbjxsaT48c3Ryb25nPnRpemVuLWludGVyb3AgcGx1Z2luPFwvc3Ryb25nPjogRW5hYmxlcyBGbHV0dGVyIGFwcHMgdG8gdXNlIFRpemVuIG5hdGl2ZSBsaWJyYXJpZXMgZGlyZWN0bHk8XC9saT5cbjxcL3VsPlxuPGhyIFwvPlxuPGgyIGlkPVwiY29udGVudC0yLWZsdXR0ZXItdGl6ZW4tYXBwbGljYXRpb24tbGlmZS1jeWNsZVwiPjxhIGhyZWY9XCIjY29udGVudC0yLWZsdXR0ZXItdGl6ZW4tYXBwbGljYXRpb24tbGlmZS1jeWNsZVwiIGNsYXNzPVwiaGVhZGluZy1wZXJtYWxpbmtcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB0aXRsZT1cIlBlcm1hbGlua1wiPlx1MDBiNjxcL2E+Mi4gRmx1dHRlciBUaXplbiBBcHBsaWNhdGlvbiBMaWZlLWN5Y2xlPFwvaDI+XG48cD5UaGUgbGlmZS1jeWNsZSBvZiBhIEZsdXR0ZXIgVGl6ZW4gYXBwbGljYXRpb24gZm9sbG93cyB0aGUgRmx1dHRlciBhcHBsaWNhdGlvbiBsaWZlLWN5Y2xlIHBhdHRlcm4sIHdoaWNoIGlzIHNsaWdodGx5IGRpZmZlcmVudCBmcm9tIFRpemVuIG5hdGl2ZSBhbmQgLk5FVCBhcHBsaWNhdGlvbnMuIFRoZSBsaWZlLWN5Y2xlIGlzIG1hbmFnZWQgYnkgdGhlIEZsdXR0ZXIgZW5naW5lIGFuZCBjYW4gYmUgdHJhY2tlZCB1c2luZyA8Y29kZT5BcHBMaWZlY3ljbGVMaXN0ZW5lcjxcL2NvZGU+IG9yIDxjb2RlPldpZGdldHNCaW5kaW5nT2JzZXJ2ZXI8XC9jb2RlPi48XC9wPlxuPGhyIFwvPlxuPGgzIGlkPVwiY29udGVudC1hcHBsaWNhdGlvbi1zdGF0ZXNcIj48YSBocmVmPVwiI2NvbnRlbnQtYXBwbGljYXRpb24tc3RhdGVzXCIgY2xhc3M9XCJoZWFkaW5nLXBlcm1hbGlua1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwiUGVybWFsaW5rXCI+XHUwMGI2PFwvYT5BcHBsaWNhdGlvbiBTdGF0ZXM8XC9oMz5cbjxwPkEgRmx1dHRlciBUaXplbiBhcHBsaWNhdGlvbiBjYW4gYmUgaW4gb25lIG9mIHRoZSBmb2xsb3dpbmcgc3RhdGVzOjxcL3A+XG48cD48c3Ryb25nPlRhYmxlOiBBcHBsaWNhdGlvbiBTdGF0ZXM8XC9zdHJvbmc+PFwvcD5cbjxkaXYgY2xhc3M9XCJvdmVyZmxvdy1hdXRvIGdyaWQgdGFibGUtZml4ZWRcIiBkYXRhLXRhYmxlLWNvbnRhaW5lcj1cImRhdGEtdGFibGUtY29udGFpbmVyXCI+PHRhYmxlPlxuPHRoZWFkPlxuPHRyPlxuPHRoPlN0YXRlPFwvdGg+XG48dGg+RGVzY3JpcHRpb248XC90aD5cbjxcL3RyPlxuPFwvdGhlYWQ+XG48dGJvZHk+XG48dHI+XG48dGQ+PHN0cm9uZz5yZXN1bWVkPFwvc3Ryb25nPjxcL3RkPlxuPHRkPkFwcGxpY2F0aW9uIGlzIGluIHRoZSBmb3JlZ3JvdW5kIGFuZCB0aGUgdXNlciBjYW4gaW50ZXJhY3Qgd2l0aCBpdC4gQ29ycmVzcG9uZHMgdG8gdGhlIDxjb2RlPm9uUmVzdW1lKCk8XC9jb2RlPiBjYWxsYmFjay48XC90ZD5cbjxcL3RyPlxuPHRyPlxuPHRkPjxzdHJvbmc+aW5hY3RpdmU8XC9zdHJvbmc+PFwvdGQ+XG48dGQ+QXBwbGljYXRpb24gaXMgdHJhbnNpdGlvbmluZyB0byBiYWNrZ3JvdW5kIG9yIGFub3RoZXIgYXBwbGljYXRpb24uIENvcnJlc3BvbmRzIHRvIDxjb2RlPm9uSW5hY3RpdmUoKTxcL2NvZGU+IG9yIDxjb2RlPm9uU2hvdygpPFwvY29kZT4gY2FsbGJhY2tzLjxcL3RkPlxuPFwvdHI+XG48dHI+XG48dGQ+PHN0cm9uZz5oaWRkZW48XC9zdHJvbmc+PFwvdGQ+XG48dGQ+QWxsIHZpZXdzIG9mIHRoZSBhcHBsaWNhdGlvbiBhcmUgaGlkZGVuLiBUaGlzIHN0YXRlIG9jY3VycyB3aGVuIHRoZSBhcHAgaXMgYWJvdXQgdG8gcGF1c2Ugb3Igd2hlbiB0cmFuc2l0aW9uaW5nIGZyb20gcGF1c2VkIHRvIGluYWN0aXZlLjxcL3RkPlxuPFwvdHI+XG48dHI+XG48dGQ+PHN0cm9uZz5wYXVzZWQ8XC9zdHJvbmc+PFwvdGQ+XG48dGQ+QXBwbGljYXRpb24gaXMgaW4gdGhlIGJhY2tncm91bmQgYW5kIG5vdCByZXNwb25kaW5nIHRvIHVzZXIgaW5wdXQuIENvcnJlc3BvbmRzIHRvIDxjb2RlPm9uUGF1c2UoKTxcL2NvZGU+IGNhbGxiYWNrLjxcL3RkPlxuPFwvdHI+XG48dHI+XG48dGQ+PHN0cm9uZz5kZXRhY2hlZDxcL3N0cm9uZz48XC90ZD5cbjx0ZD5GbHV0dGVyIGVuZ2luZSBpcyBjb21wbGV0ZWx5IGRldGFjaGVkIGZyb20gdGhlIHZpZXcsIHR5cGljYWxseSBkdXJpbmcgaW5pdGlhbGl6YXRpb24gb3IgdGVybWluYXRpb24uIENvcnJlc3BvbmRzIHRvIDxjb2RlPm9uRGV0YWNoKCk8XC9jb2RlPiBjYWxsYmFjay48XC90ZD5cbjxcL3RyPlxuPFwvdGJvZHk+XG48XC90YWJsZT48XC9kaXY+XG48cD48c3Ryb25nPkZpZ3VyZTogRmx1dHRlciBhcHBsaWNhdGlvbiBzdGF0ZSB0cmFuc2l0aW9uczxcL3N0cm9uZz48XC9wPlxuPHA+PGltZyBzcmM9XCJtZWRpYVwvYXBwX2xpZmVjeWNsZS5wbmdcIiBhbHQ9XCJBcHBsaWNhdGlvbiBzdGF0ZSB0cmFuc2l0aW9uc1wiIHRpdGxlPVwiRmx1dHRlciBhcHBsaWNhdGlvbiBzdGF0ZSB0cmFuc2l0aW9uc1wiIFwvPjxcL3A+XG48aDMgaWQ9XCJjb250ZW50LXN0YXRlLXRyYW5zaXRpb25zXCI+PGEgaHJlZj1cIiNjb250ZW50LXN0YXRlLXRyYW5zaXRpb25zXCIgY2xhc3M9XCJoZWFkaW5nLXBlcm1hbGlua1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwiUGVybWFsaW5rXCI+XHUwMGI2PFwvYT5TdGF0ZSBUcmFuc2l0aW9uczxcL2gzPlxuPHA+VGhlIGZvbGxvd2luZyB0YWJsZSBzaG93cyBGbHV0dGVyIGFwcGxpY2F0aW9uIHN0YXRlcyBhbmQgdGhlaXIgY29ycmVzcG9uZGluZyBjYWxsYmFja3M6PFwvcD5cbjxwPjxzdHJvbmc+VGFibGU6IFN0YXRlIFRyYW5zaXRpb25zPFwvc3Ryb25nPjxcL3A+XG48ZGl2IGNsYXNzPVwib3ZlcmZsb3ctYXV0byBncmlkIHRhYmxlLWZpeGVkXCIgZGF0YS10YWJsZS1jb250YWluZXI9XCJkYXRhLXRhYmxlLWNvbnRhaW5lclwiPjx0YWJsZT5cbjx0aGVhZD5cbjx0cj5cbjx0aD5GbHV0dGVyIFN0YXRlPFwvdGg+XG48dGg+Q2FsbGJhY2sgTWV0aG9kPFwvdGg+XG48XC90cj5cbjxcL3RoZWFkPlxuPHRib2R5PlxuPHRyPlxuPHRkPnJlc3VtZWQgKG9uUmVzdW1lKCkgb3IgaW5pdFN0YXRlKCkpPFwvdGQ+XG48dGQ+QXBwbGljYXRpb24gaW5pdGlhbGl6YXRpb248XC90ZD5cbjxcL3RyPlxuPHRyPlxuPHRkPmluYWN0aXZlIChvbkluYWN0aXZlKCkpIFx1MjE5MiBoaWRkZW4gKG9uSGlkZSgpKSBcdTIxOTIgcGF1c2VkIChvblBhdXNlKCkpPFwvdGQ+XG48dGQ+QmFja2dyb3VuZCB0cmFuc2l0aW9uPFwvdGQ+XG48XC90cj5cbjx0cj5cbjx0ZD5oaWRkZW4gKG9uUmVzdGFydCgpKSBcdTIxOTIgaW5hY3RpdmUgKG9uU2hvdygpKSBcdTIxOTIgcmVzdW1lZCAob25SZXN1bWUoKSk8XC90ZD5cbjx0ZD5Gb3JlZ3JvdW5kIHRyYW5zaXRpb248XC90ZD5cbjxcL3RyPlxuPHRyPlxuPHRkPmRldGFjaGVkIChvbkRldGFjaCgpIG9yIGRpc3Bvc2UoKSk8XC90ZD5cbjx0ZD5BcHBsaWNhdGlvbiB0ZXJtaW5hdGlvbjxcL3RkPlxuPFwvdHI+XG48XC90Ym9keT5cbjxcL3RhYmxlPjxcL2Rpdj5cbjxoMyBpZD1cImNvbnRlbnQtbWFuYWdpbmctYXBwbGljYXRpb24tbGlmZS1jeWNsZVwiPjxhIGhyZWY9XCIjY29udGVudC1tYW5hZ2luZy1hcHBsaWNhdGlvbi1saWZlLWN5Y2xlXCIgY2xhc3M9XCJoZWFkaW5nLXBlcm1hbGlua1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwiUGVybWFsaW5rXCI+XHUwMGI2PFwvYT5NYW5hZ2luZyBBcHBsaWNhdGlvbiBMaWZlLWN5Y2xlPFwvaDM+XG48cD5GbHV0dGVyIHByb3ZpZGVzIHR3byBtYWluIGFwcHJvYWNoZXMgdG8gbWFuYWdlIGFwcGxpY2F0aW9uIGxpZmUtY3ljbGU6PFwvcD5cbjxoNCBpZD1cImNvbnRlbnQtdXNpbmctYXBwbGlmZWN5Y2xlbGlzdGVuZXJcIj48YSBocmVmPVwiI2NvbnRlbnQtdXNpbmctYXBwbGlmZWN5Y2xlbGlzdGVuZXJcIiBjbGFzcz1cImhlYWRpbmctcGVybWFsaW5rXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgdGl0bGU9XCJQZXJtYWxpbmtcIj5cdTAwYjY8XC9hPlVzaW5nIEFwcExpZmVjeWNsZUxpc3RlbmVyPFwvaDQ+XG48cD48Y29kZT5BcHBMaWZlY3ljbGVMaXN0ZW5lcjxcL2NvZGU+IHByb3ZpZGVzIGEgbW9kZXJuLCBjb252ZW5pZW50IHdheSB0byB0cmFjayBhcHBsaWNhdGlvbiBzdGF0ZSBjaGFuZ2VzOjxcL3A+XG48cHJlIGNsYXNzPVwic2hpa2kgc2hpa2ktdGhlbWVzIGdpdGh1Yi1saWdodCBnaXRodWItZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjojZmZmOy0tc2hpa2ktZGFyay1iZzojMjQyOTJlO2NvbG9yOiMyNDI5MmU7LS1zaGlraS1kYXJrOiNlMWU0ZTg7XCI+PGNvZGU+PHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+aW1wb3J0PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4mIzM5O3BhY2thZ2U6Zmx1dHRlclwvbWF0ZXJpYWwuZGFydCYjMzk7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj47PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+aW1wb3J0PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4mIzM5O3BhY2thZ2U6Zmx1dHRlclwvc2NoZWR1bGVyLmRhcnQmIzM5OzxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5jbGFzczxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+X0FwcExpZmVjeWNsZURpc3BsYXlTdGF0ZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+ZXh0ZW5kczxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+U3RhdGU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiZsdDs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPkFwcExpZmVjeWNsZURpc3BsYXk8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiZndDsgezxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5sYXRlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5maW5hbDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+QXBwTGlmZWN5Y2xlTGlzdGVuZXI8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiBfbGlzdGVuZXI7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5Ab3ZlcnJpZGU8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+dm9pZDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+aW5pdFN0YXRlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oKSB7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+c3VwZXI8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPi48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPmluaXRTdGF0ZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KCk7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgIF9saXN0ZW5lciA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPkFwcExpZmVjeWNsZUxpc3RlbmVyPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oPFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgb25TaG93PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj46PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gKCkgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj49Jmd0OzxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+X2hhbmRsZVRyYW5zaXRpb248XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPiYjMzk7b25TaG93JiMzOTs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiksPFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgb25SZXN1bWU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPjo8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAoKSA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj0mZ3Q7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5faGFuZGxlVHJhbnNpdGlvbjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+JiMzOTtvblJlc3VtZSYjMzk7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4pLDxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgIG9uSGlkZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+OjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICgpIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+PSZndDs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPl9oYW5kbGVUcmFuc2l0aW9uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4mIzM5O29uSGlkZSYjMzk7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4pLDxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgIG9uSW5hY3RpdmU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPjo8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAoKSA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPj0mZ3Q7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5faGFuZGxlVHJhbnNpdGlvbjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+JiMzOTtvbkluYWN0aXZlJiMzOTs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiksPFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgb25QYXVzZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+OjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICgpIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+PSZndDs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPl9oYW5kbGVUcmFuc2l0aW9uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4mIzM5O29uUGF1c2UmIzM5OzxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KSw8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gICAgICBvbkRldGFjaDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+OjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICgpIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+PSZndDs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPl9oYW5kbGVUcmFuc2l0aW9uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4mIzM5O29uRGV0YWNoJiMzOTs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiksPFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgb25SZXN0YXJ0PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj46PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gKCkgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj49Jmd0OzxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+X2hhbmRsZVRyYW5zaXRpb248XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPiYjMzk7b25SZXN0YXJ0JiMzOTs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiksPFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgb25TdGF0ZUNoYW5nZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+OjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IF9oYW5kbGVTdGF0ZUNoYW5nZSw8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gICAgKTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gIH08XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPkBvdmVycmlkZTxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj52b2lkPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5kaXNwb3NlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oKSB7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgIF9saXN0ZW5lci48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPmRpc3Bvc2U8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPigpOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPnN1cGVyPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5kaXNwb3NlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oKTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gIH08XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPnZvaWQ8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPl9oYW5kbGVUcmFuc2l0aW9uPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5TdHJpbmc8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiBuYW1lKSB7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+cHJpbnQ8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPiYjMzk7Q2FsbGVkIFRyYW5zaXRpb24oKSBbPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4kPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5uYW1lPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj5dJiMzOTs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPik7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICB9PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj52b2lkPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5faGFuZGxlU3RhdGVDaGFuZ2U8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPkFwcExpZmVjeWNsZVN0YXRlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gc3RhdGUpIHs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5wcmludDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+JiMzOTtDYWxsZWQgU3RhdGVDaGFuZ2UoKSBbPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4kezxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+c3RhdGU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPi48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPm5hbWU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPn08XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPl0mIzM5OzxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gIH08XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj59PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj48XC9jb2RlPjxcL3ByZT5cbjxoNCBpZD1cImNvbnRlbnQtdXNpbmctd2lkZ2V0c2JpbmRpbmdvYnNlcnZlclwiPjxhIGhyZWY9XCIjY29udGVudC11c2luZy13aWRnZXRzYmluZGluZ29ic2VydmVyXCIgY2xhc3M9XCJoZWFkaW5nLXBlcm1hbGlua1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwiUGVybWFsaW5rXCI+XHUwMGI2PFwvYT5Vc2luZyBXaWRnZXRzQmluZGluZ09ic2VydmVyPFwvaDQ+XG48cD48Y29kZT5XaWRnZXRzQmluZGluZ09ic2VydmVyPFwvY29kZT4gcHJvdmlkZXMgYW4gYWx0ZXJuYXRpdmUgYXBwcm9hY2ggdG8gdHJhY2sgbGlmZS1jeWNsZSBjaGFuZ2VzOjxcL3A+XG48cHJlIGNsYXNzPVwic2hpa2kgc2hpa2ktdGhlbWVzIGdpdGh1Yi1saWdodCBnaXRodWItZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjojZmZmOy0tc2hpa2ktZGFyay1iZzojMjQyOTJlO2NvbG9yOiMyNDI5MmU7LS1zaGlraS1kYXJrOiNlMWU0ZTg7XCI+PGNvZGU+PHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+aW1wb3J0PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4mIzM5O3BhY2thZ2U6Zmx1dHRlclwvbWF0ZXJpYWwuZGFydCYjMzk7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj47PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPmNsYXNzPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5fTXlIb21lUGFnZVN0YXRlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5leHRlbmRzPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5TdGF0ZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+Jmx0OzxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+TXlIb21lUGFnZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+Jmd0OyA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPndpdGg8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPldpZGdldHNCaW5kaW5nT2JzZXJ2ZXI8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiB7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPkBvdmVycmlkZTxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj52b2lkPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5pbml0U3RhdGU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPigpIHs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5zdXBlcjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+LjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+aW5pdFN0YXRlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oKTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5XaWRnZXRzQmluZGluZzxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+Lmluc3RhbmNlLjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+YWRkT2JzZXJ2ZXI8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPnRoaXM8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPik7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICB9PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5Ab3ZlcnJpZGU8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+dm9pZDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+ZGlzcG9zZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KCkgezxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPldpZGdldHNCaW5kaW5nPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4uaW5zdGFuY2UuPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5yZW1vdmVPYnNlcnZlcjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+dGhpczxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KTs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5zdXBlcjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+LjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+ZGlzcG9zZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KCk7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICB9PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5Ab3ZlcnJpZGU8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+dm9pZDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+ZGlkQ2hhbmdlQXBwTGlmZWN5Y2xlU3RhdGU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPig8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNUNDNTstLXNoaWtpLWRhcms6Izc5QjhGRlwiPkFwcExpZmVjeWNsZVN0YXRlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gc3RhdGUpIHs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5zdXBlcjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+LjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+ZGlkQ2hhbmdlQXBwTGlmZWN5Y2xlU3RhdGU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPihzdGF0ZSk7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+cHJpbnQ8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPihzdGF0ZSk7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPnN3aXRjaDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IChzdGF0ZSkgezxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+Y2FzZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+QXBwTGlmZWN5Y2xlU3RhdGU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPi5yZXN1bWVkPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj46PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgICA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPnByaW50PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4oPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj4mIzM5O1RoZSBhcHAgaGFzIGJlZW4gW3Jlc3VtZWRdLiYjMzk7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4pOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5icmVhazxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+Y2FzZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+QXBwTGlmZWN5Y2xlU3RhdGU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPi5pbmFjdGl2ZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+OjxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5wcmludDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+JiMzOTtUaGUgYXBwIGhhcyBiZWVuIFtpbmFjdGl2ZV0uJiMzOTs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPik7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgICA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPmJyZWFrPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj47PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5jYXNlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5BcHBMaWZlY3ljbGVTdGF0ZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+LnBhdXNlZDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+OjxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5wcmludDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+JiMzOTtUaGUgYXBwIGhhcyBiZWVuIFtwYXVzZWRdLiYjMzk7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4pOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5icmVhazxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgIDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+Y2FzZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+QXBwTGlmZWN5Y2xlU3RhdGU8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPi5kZXRhY2hlZDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+OjxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5wcmludDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+JiMzOTtUaGUgYXBwIGhhcyBiZWVuIFtkZXRhY2hlZF0uJiMzOTs8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPik7PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgICA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6I0Q3M0E0OTstLXNoaWtpLWRhcms6I0Y5NzU4M1wiPmJyZWFrPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj47PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICAgICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5jYXNlPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMDVDQzU7LS1zaGlraS1kYXJrOiM3OUI4RkZcIj5BcHBMaWZlY3ljbGVTdGF0ZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+LmhpZGRlbjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojRDczQTQ5Oy0tc2hpa2ktZGFyazojRjk3NTgzXCI+OjxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiM2RjQyQzE7LS1zaGlraS1kYXJrOiNCMzkyRjBcIj5wcmludDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+KDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+JiMzOTtUaGUgYXBwIGhhcyBiZWVuIFtoaWRkZW5dLiYjMzk7PFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4pOzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICAgICAgPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiNENzNBNDk7LS1zaGlraS1kYXJrOiNGOTc1ODNcIj5icmVhazxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+OzxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiAgICB9PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+ICB9PFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+fTxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxcL3NwYW4+PFwvY29kZT48XC9wcmU+XG48aHIgXC8+XG48aDIgaWQ9XCJjb250ZW50LTMtZmx1dHRlci10aXplbi1hcHBsaWNhdGlvbi1wYWNrYWdpbmdcIj48YSBocmVmPVwiI2NvbnRlbnQtMy1mbHV0dGVyLXRpemVuLWFwcGxpY2F0aW9uLXBhY2thZ2luZ1wiIGNsYXNzPVwiaGVhZGluZy1wZXJtYWxpbmtcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB0aXRsZT1cIlBlcm1hbGlua1wiPlx1MDBiNjxcL2E+My4gRmx1dHRlciBUaXplbiBBcHBsaWNhdGlvbiBQYWNrYWdpbmc8XC9oMj5cbjxwPlRoZSBwcm9jZXNzIG9mIHBhY2thZ2luZyBhIEZsdXR0ZXIgVGl6ZW4gYXBwbGljYXRpb24gaW52b2x2ZXMgY3JlYXRpbmcgYSAmcXVvdDt0cGsmcXVvdDsgZmlsZSwgd2hpY2ggaXMgdGhlIHN0YW5kYXJkIHBhY2thZ2UgZm9ybWF0IGZvciBUaXplbiBhcHBsaWNhdGlvbnMuIFRoZSBwYWNrYWdpbmcgcHJvY2VzcyBmb2xsb3dzIHNpbWlsYXIgcG9saWNpZXMgdG8gVGl6ZW4gbmF0aXZlIGFwcGxpY2F0aW9ucywgd2l0aCBzcGVjaWZpYyBjb25zaWRlcmF0aW9ucyBmb3IgRmx1dHRlciBhcHBsaWNhdGlvbnMuPFwvcD5cbjxwPjxzdHJvbmc+UGFja2FnZSBJRCAmYW1wOyBBcHBsaWNhdGlvbiBJRDxcL3N0cm9uZz48XC9wPlxuPHVsPlxuPGxpPlRoZSBQYWNrYWdlIElEIGFuZCBBcHBsaWNhdGlvbiBJRCBhcmUgdW5pcXVlIGlkZW50aWZpZXJzIGZvciB0aGUgYXBwbGljYXRpb24gYW5kIGZvbGxvdyB0aGUgc2FtZSBuYW1pbmcgY29udmVudGlvbnMgYXMgVGl6ZW4gbmF0aXZlIGFwcGxpY2F0aW9ucy48XC9saT5cbjxsaT5QYWNrYWdlIElEIGZvcm1hdDogVXNlIGEteiwgQS1aLCAwLTksICZxdW90Oy4mcXVvdDssICZxdW90Oy0mcXVvdDssIGFuZCAmcXVvdDtfJnF1b3Q7IGNoYXJhY3RlcnMsIHdpdGggYSBtYXhpbXVtIGxlbmd0aCBvZiA1MCBjaGFyYWN0ZXJzLjxcL2xpPlxuPFwvdWw+XG48cD48c3Ryb25nPkFwcGxpY2F0aW9uIERpcmVjdG9yeSBQb2xpY3k8XC9zdHJvbmc+PFwvcD5cbjxwPkZsdXR0ZXIgVGl6ZW4gYXBwbGljYXRpb25zIGhhdmUgdGhlIGZvbGxvd2luZyBkaXJlY3Rvcnkgc3RydWN0dXJlOjxcL3A+XG48dWw+XG48bGk+PHN0cm9uZz4mcXVvdDtiaW4mcXVvdDsgZGlyZWN0b3J5PFwvc3Ryb25nPjogQ29udGFpbnMgdGhlIEZsdXR0ZXIgVGl6ZW4gYXBwbGljYXRpb24gYmluYXJ5IGFuZCBhbGwgcHVibGlzaGVkIG91dHB1dCBmaWxlczxcL2xpPlxuPGxpPjxzdHJvbmc+JnF1b3Q7bGliJnF1b3Q7IGRpcmVjdG9yeTxcL3N0cm9uZz46IENvbnRhaW5zIEZsdXR0ZXIgVGl6ZW4gbGlicmFyaWVzIGFuZCBwbHVnaW5zPFwvbGk+XG48bGk+PHN0cm9uZz4mcXVvdDtyZXMmcXVvdDsgZGlyZWN0b3J5PFwvc3Ryb25nPjogQ29udGFpbnMgYXBwbGljYXRpb24gcmVzb3VyY2VzPFwvbGk+XG48bGk+PHN0cm9uZz4mcXVvdDtkYXRhJnF1b3Q7IGRpcmVjdG9yeTxcL3N0cm9uZz46IEFwcGxpY2F0aW9uJ3Mgb3duIGRpcmVjdG9yeSBmb3IgcmVhZFwvd3JpdGUgb3BlcmF0aW9uczxcL2xpPlxuPGxpPjxzdHJvbmc+JnF1b3Q7c2hhcmVkXC8mcXVvdDsgZGlyZWN0b3J5PFwvc3Ryb25nPjogRm9yIHNoYXJpbmcgd2l0aCBvdGhlciBhcHBsaWNhdGlvbnM8XC9saT5cbjxcL3VsPlxuPHA+VGhlIDxjb2RlPnRpemVuLW1hbmlmZXN0LnhtbDxcL2NvZGU+IGZpbGUgYW5kIHNpZ25hdHVyZSBmaWxlcyBhcmUgbG9jYXRlZCBpbiB0aGUgYXBwbGljYXRpb24gcm9vdCBkaXJlY3RvcnksIHNpbWlsYXIgdG8gb3RoZXIgVGl6ZW4gYXBwbGljYXRpb25zLjxcL3A+XG48cD48c3Ryb25nPk1hbmlmZXN0IEZpbGU8XC9zdHJvbmc+PFwvcD5cbjx1bD5cbjxsaT5BIG1hbmlmZXN0IGZpbGUgKHRpemVuLW1hbmlmZXN0LnhtbCkgZGVmaW5lcyB0aGUgbWV0YWRhdGEsIHBlcm1pc3Npb25zLCBhbmQgZnVuY3Rpb25hbGl0eSBvZiB0aGUgYXBwbGljYXRpb248XC9saT5cbjxsaT48c3Ryb25nPlBsYXRmb3JtIHZlcnNpb24gYW5kIEFQSSB2ZXJzaW9uPFwvc3Ryb25nPjogRW5zdXJlIHRoYXQgeW91ciBhcHBsaWNhdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IFRpemVuIHBsYXRmb3JtIHZlcnNpb24gYW5kIEFQSSBsZXZlbDxcL2xpPlxuPGxpPlRoZSBtYW5pZmVzdCBmaWxlIGZvbGxvd3MgdGhlIHNhbWUgc3RydWN0dXJlIGFzIFRpemVuIG5hdGl2ZSBhcHBsaWNhdGlvbnM8XC9saT5cbjxcL3VsPlxuPHA+PHN0cm9uZz5TaWduYXR1cmUgUG9saWN5PFwvc3Ryb25nPjxcL3A+XG48dWw+XG48bGk+VG8gaW5zdGFsbCBhbiBhcHBsaWNhdGlvbiBvbiBhIFRpemVuIGRldmljZSwgeW91IG11c3Qgc2lnbiBpdCB3aXRoIGEgdmFsaWQgY2VydGlmaWNhdGU8XC9saT5cbjxsaT5UaGUgc2lnbmluZyBwcm9jZXNzIGlzIHRoZSBzYW1lIGFzIGZvciBUaXplbiBuYXRpdmUgYXBwbGljYXRpb25zLCB1c2luZyBhdXRob3IgYW5kIGRpc3RyaWJ1dG9yIHNpZ25hdHVyZXM8XC9saT5cbjxsaT5Gb3IgbW9yZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHJlZmVyIHRvIHRoZSA8YSBocmVmPVwiLi5cL2d1aWRlc1wvZmx1dHRlci10aXplblwvZG9jXC9pbnN0YWxsLXRpemVuLXNkay5tZCNjcmVhdGUtYS1jZXJ0aWZpY2F0ZS1wcm9maWxlXCI+Q3JlYXRlIGEgY2VydGlmaWNhdGUgcHJvZmlsZTxcL2E+IHNlY3Rpb24uPFwvbGk+XG48XC91bD5cbjxociBcLz5cbjxoMiBpZD1cImNvbnRlbnQtNC1mbHV0dGVyLXRpemVuLWFwaVwiPjxhIGhyZWY9XCIjY29udGVudC00LWZsdXR0ZXItdGl6ZW4tYXBpXCIgY2xhc3M9XCJoZWFkaW5nLXBlcm1hbGlua1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwiUGVybWFsaW5rXCI+XHUwMGI2PFwvYT40LiBGbHV0dGVyIFRpemVuIEFQSTxcL2gyPlxuPHA+Rmx1dHRlciBUaXplbiBhcHBsaWNhdGlvbnMgbGV2ZXJhZ2UgdGhlIEZsdXR0ZXIgZnJhbWV3b3JrIEFQSXMgYWxvbmcgd2l0aCBwbGF0Zm9ybS1zcGVjaWZpYyBBUElzIHByb3ZpZGVkIGJ5IGZsdXR0ZXItdGl6ZW4gcGx1Z2lucy48XC9wPlxuPHA+PHN0cm9uZz5GbHV0dGVyIEZyYW1ld29yayBBUEk8XC9zdHJvbmc+PFwvcD5cbjx1bD5cbjxsaT5UaGUgRmx1dHRlciBmcmFtZXdvcmsgcHJvdmlkZXMgYSByaWNoIHNldCBvZiB3aWRnZXRzIGFuZCBBUElzIGZvciBidWlsZGluZyB1c2VyIGludGVyZmFjZXM8XC9saT5cbjxsaT5JbmNsdWRlcyBtYXRlcmlhbCBkZXNpZ24sIEN1cGVydGlubyBkZXNpZ24sIGFuZCBjdXN0b20gd2lkZ2V0IHN1cHBvcnQ8XC9saT5cbjxsaT5Qcm92aWRlcyBzdGF0ZSBtYW5hZ2VtZW50IHNvbHV0aW9ucyBsaWtlIDxjb2RlPnNldFN0YXRlKCk8XC9jb2RlPiwgPGNvZGU+UHJvdmlkZXI8XC9jb2RlPiwgPGNvZGU+QmxvYzxcL2NvZGU+LCBhbmQgbW9yZTxcL2xpPlxuPFwvdWw+XG48cD48c3Ryb25nPmZsdXR0ZXItdGl6ZW4gcGx1Z2luczxcL3N0cm9uZz48XC9wPlxuPHVsPlxuPGxpPmZsdXR0ZXItdGl6ZW4gcGx1Z2lucyBleHBvc2UgVGl6ZW4gbmF0aXZlIEFQSXMgdG8gRmx1dHRlciBhcHBsaWNhdGlvbnM8XC9saT5cbjxsaT5QbHVnaW5zIHByb3ZpZGUgYWNjZXNzIHRvIFRpemVuLXNwZWNpZmljIGZlYXR1cmVzIHN1Y2ggYXMgbXVsdGltZWRpYSBwbGF5YmFjaywgc3lzdGVtIGluZm9ybWF0aW9uLCBuZXR3b3JraW5nLCBhbmQgZGV2aWNlIGhhcmR3YXJlPFwvbGk+XG48bGk+Rm9yIGEgY29tcGxldGUgbGlzdCBvZiBhdmFpbGFibGUgcGx1Z2lucyBhbmQgdGhlaXIgZG9jdW1lbnRhdGlvbiwgdmlzaXQgdGhlIDxhIGhyZWY9XCJodHRwczpcL1wvZ2l0aHViLmNvbVwvZmx1dHRlci10aXplblwvcGx1Z2luc1wiPmZsdXR0ZXItdGl6ZW4gcGx1Z2lucyByZXBvc2l0b3J5PFwvYT48XC9saT5cbjxcL3VsPlxuPHA+PHN0cm9uZz50aXplbi1pbnRlcm9wIHBsdWdpbjxcL3N0cm9uZz48XC9wPlxuPHVsPlxuPGxpPlRoZSA8YSBocmVmPVwiaHR0cHM6XC9cL2dpdGh1Yi5jb21cL2ZsdXR0ZXItdGl6ZW5cL3RpemVuX2ludGVyb3BcIj50aXplbl9pbnRlcm9wPFwvYT4gcGx1Z2luIGFsbG93cyBGbHV0dGVyIGFwcHMgdG8gdXNlIFRpemVuIG5hdGl2ZSBsaWJyYXJpZXMgZGlyZWN0bHk8XC9saT5cbjxsaT5Qcm92aWRlcyBhIG1lY2hhbmlzbSBmb3IgaW50ZXJvcGVyYWJpbGl0eSBiZXR3ZWVuIEZsdXR0ZXIgYW5kIFRpemVuIG5hdGl2ZSBjb2RlPFwvbGk+XG48bGk+VXNlZnVsIGZvciBhY2Nlc3NpbmcgZmVhdHVyZXMgbm90IHlldCBhdmFpbGFibGUgYXMgcGx1Z2luczxcL2xpPlxuPFwvdWw+XG48aHIgXC8+XG48aDIgaWQ9XCJjb250ZW50LTUtZmx1dHRlci10aXplbi1hcHBsaWNhdGlvbi1kZXZlbG9wbWVudFwiPjxhIGhyZWY9XCIjY29udGVudC01LWZsdXR0ZXItdGl6ZW4tYXBwbGljYXRpb24tZGV2ZWxvcG1lbnRcIiBjbGFzcz1cImhlYWRpbmctcGVybWFsaW5rXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgdGl0bGU9XCJQZXJtYWxpbmtcIj5cdTAwYjY8XC9hPjUuIEZsdXR0ZXIgVGl6ZW4gQXBwbGljYXRpb24gRGV2ZWxvcG1lbnQ8XC9oMj5cbjxwPlRvIHN0YXJ0IGRldmVsb3BpbmcgYSBGbHV0dGVyIFRpemVuIGFwcGxpY2F0aW9uLCBmb2xsb3cgdGhlc2Ugc3RlcHM6PFwvcD5cbjxvbD5cbjxsaT5cbjxwPjxzdHJvbmc+SW5zdGFsbGF0aW9uPFwvc3Ryb25nPjo8XC9wPlxuPHVsPlxuPGxpPjxhIGhyZWY9XCIuXC9ndWlkZXNcL2ZsdXR0ZXItdGl6ZW5cL2RvY1wvbGludXgtaW5zdGFsbC5tZFwiPkxpbnV4ICh4NjQpPFwvYT48XC9saT5cbjxsaT48YSBocmVmPVwiLlwvZ3VpZGVzXC9mbHV0dGVyLXRpemVuXC9kb2NcL3dpbmRvd3MtaW5zdGFsbC5tZFwiPldpbmRvd3MgKHg2NCk8XC9hPjxcL2xpPlxuPGxpPjxhIGhyZWY9XCIuXC9ndWlkZXNcL2ZsdXR0ZXItdGl6ZW5cL2RvY1wvbWFjb3MtaW5zdGFsbC5tZFwiPm1hY09TICh4NjQpPFwvYT48XC9saT5cbjxcL3VsPlxuPFwvbGk+XG48bGk+XG48cD48c3Ryb25nPkNyZWF0ZSBhIG5ldyBwcm9qZWN0PFwvc3Ryb25nPjo8XC9wPlxuPHByZSBjbGFzcz1cInNoaWtpIHNoaWtpLXRoZW1lcyBnaXRodWItbGlnaHQgZ2l0aHViLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6I2ZmZjstLXNoaWtpLWRhcmstYmc6IzI0MjkyZTtjb2xvcjojMjQyOTJlOy0tc2hpa2ktZGFyazojZTFlNGU4O1wiPjxjb2RlPjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPmZsdXR0ZXItdGl6ZW48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPmNyZWF0ZTxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDA1Q0M1Oy0tc2hpa2ktZGFyazojNzlCOEZGXCI+LS1wbGF0Zm9ybXM8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPnRpemVuPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj5teV9hcHA8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPjxcL2NvZGU+PFwvcHJlPlxuPFwvbGk+XG48bGk+XG48cD48c3Ryb25nPkNvZGUgV3JpdGluZzxcL3N0cm9uZz46PFwvcD5cbjx1bD5cbjxsaT5Vc2UgRGFydCBhbmQgRmx1dHRlciBmcmFtZXdvcmsgdG8gZGV2ZWxvcCBhcHBsaWNhdGlvbiBsb2dpYzxcL2xpPlxuPGxpPkludGVncmF0ZSBmbHV0dGVyLXRpemVuIHBsdWdpbnMgZm9yIFRpemVuLXNwZWNpZmljIGZlYXR1cmVzPFwvbGk+XG48bGk+SW1wbGVtZW50IGxpZmUtY3ljbGUgbWFuYWdlbWVudCB1c2luZyA8Y29kZT5BcHBMaWZlY3ljbGVMaXN0ZW5lcjxcL2NvZGU+IG9yIDxjb2RlPldpZGdldHNCaW5kaW5nT2JzZXJ2ZXI8XC9jb2RlPjxcL2xpPlxuPFwvdWw+XG48XC9saT5cbjxsaT5cbjxwPjxzdHJvbmc+QnVpbGQgYW5kIGRlcGxveTxcL3N0cm9uZz46PFwvcD5cbjxwcmUgY2xhc3M9XCJzaGlraSBzaGlraS10aGVtZXMgZ2l0aHViLWxpZ2h0IGdpdGh1Yi1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7LS1zaGlraS1kYXJrLWJnOiMyNDI5MmU7Y29sb3I6IzI0MjkyZTstLXNoaWtpLWRhcms6I2UxZTRlODtcIj48Y29kZT48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiM2QTczN0Q7LS1zaGlraS1kYXJrOiM2QTczN0RcIj4jIEJ1aWxkIGEgVFBLIGluIHJlbGVhc2UgbW9kZSBhbmQgc2lnbiB3aXRoIGFuIGFjdGl2ZSBwcm9maWxlLjxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPmZsdXR0ZXItdGl6ZW48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPmJ1aWxkPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMyNDI5MkU7LS1zaGlraS1kYXJrOiNFMUU0RThcIj4gPFwvc3Bhbj48c3BhbiBzdHlsZT1cImNvbG9yOiMwMzJGNjI7LS1zaGlraS1kYXJrOiM5RUNCRkZcIj50cGs8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48c3BhbiBzdHlsZT1cImNvbG9yOiM2QTczN0Q7LS1zaGlraS1kYXJrOiM2QTczN0RcIj4jIEluc3RhbGwgJnF1b3Q7YnVpbGRcL3RpemVuXC90cGtcLyoudHBrJnF1b3Q7IG9uIGEgVGl6ZW4gZGV2aWNlLjxcL3NwYW4+PFwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwibGluZVwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IzZGNDJDMTstLXNoaWtpLWRhcms6I0IzOTJGMFwiPmZsdXR0ZXItdGl6ZW48XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzI0MjkyRTstLXNoaWtpLWRhcms6I0UxRTRFOFwiPiA8XC9zcGFuPjxzcGFuIHN0eWxlPVwiY29sb3I6IzAzMkY2MjstLXNoaWtpLWRhcms6IzlFQ0JGRlwiPmluc3RhbGw8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+b3I8XC9zcGFuPjxcL3NwYW4+XG48c3BhbiBjbGFzcz1cImxpbmVcIj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkE3MzdEOy0tc2hpa2ktZGFyazojNkE3MzdEXCI+IyBCdWlsZCBhbmQgcnVuIGluIGRlYnVnIG1vZGUuPFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PHNwYW4gc3R5bGU9XCJjb2xvcjojNkY0MkMxOy0tc2hpa2ktZGFyazojQjM5MkYwXCI+Zmx1dHRlci10aXplbjxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMjQyOTJFOy0tc2hpa2ktZGFyazojRTFFNEU4XCI+IDxcL3NwYW4+PHNwYW4gc3R5bGU9XCJjb2xvcjojMDMyRjYyOy0tc2hpa2ktZGFyazojOUVDQkZGXCI+cnVuPFwvc3Bhbj48XC9zcGFuPlxuPHNwYW4gY2xhc3M9XCJsaW5lXCI+PFwvc3Bhbj48XC9jb2RlPjxcL3ByZT5cbjxcL2xpPlxuPFwvb2w+XG48cD5UaGUgZW50cnkgcG9pbnQgZm9yIGEgRmx1dHRlciBUaXplbiBhcHBsaWNhdGlvbiBpcyBkZWZpbmVkIGluIHRoZSA8Y29kZT5tYWluKCk8XC9jb2RlPiBmdW5jdGlvbiBvZiB0aGUgYXBwbGljYXRpb24sIHdoZXJlIHRoZSBGbHV0dGVyIGFwcCBpcyBpbml0aWFsaXplZCB1c2luZyA8Y29kZT5ydW5BcHAoKTxcL2NvZGU+LjxcL3A+XG48cD48c3Ryb25nPkRldmVsb3BtZW50IFRvb2xzPFwvc3Ryb25nPjxcL3A+XG48dWw+XG48bGk+PHN0cm9uZz5GbHV0dGVyIENMSTxcL3N0cm9uZz46IFN0YW5kYXJkIEZsdXR0ZXIgZGV2ZWxvcG1lbnQgdG9vbHM8XC9saT5cbjxsaT48c3Ryb25nPmZsdXR0ZXItdGl6ZW4gQ0xJPFwvc3Ryb25nPjogVGl6ZW4tc3BlY2lmaWMgYnVpbGQgYW5kIGRlcGxveW1lbnQgY29tbWFuZCBsaW5lIGludGVyZmFjZTxcL2xpPlxuPGxpPjxzdHJvbmc+VlMgQ29kZTxcL3N0cm9uZz46IFdpdGggRmx1dHRlciBhbmQgVGl6ZW4gZXh0ZW5zaW9ucyBmb3IgYW4gZW5oYW5jZWQgZGV2ZWxvcG1lbnQgZXhwZXJpZW5jZTxcL2xpPlxuPFwvdWw+XG4iLCJ0YWJsZV9vZl9jb250ZW50IjoiPHVsIGNsYXNzPVwidGFibGUtb2YtY29udGVudHNcIj5cbjxsaT48YSBocmVmPVwiI2NvbnRlbnQtMS1mbHV0dGVyLXRpemVuLWFwcGxpY2F0aW9uLW1vZGVsXCI+MS4gRmx1dHRlciBUaXplbiBBcHBsaWNhdGlvbiBNb2RlbDxcL2E+PFwvbGk+XG48bGk+PGEgaHJlZj1cIiNjb250ZW50LTItZmx1dHRlci10aXplbi1hcHBsaWNhdGlvbi1saWZlLWN5Y2xlXCI+Mi4gRmx1dHRlciBUaXplbiBBcHBsaWNhdGlvbiBMaWZlLWN5Y2xlPFwvYT48XC9saT5cbjxsaT48YSBocmVmPVwiI2NvbnRlbnQtYXBwbGljYXRpb24tc3RhdGVzXCI+QXBwbGljYXRpb24gU3RhdGVzPFwvYT48XC9saT5cbjxsaT48YSBocmVmPVwiI2NvbnRlbnQtc3RhdGUtdHJhbnNpdGlvbnNcIj5TdGF0ZSBUcmFuc2l0aW9uczxcL2E+PFwvbGk+XG48bGk+PGEgaHJlZj1cIiNjb250ZW50LW1hbmFnaW5nLWFwcGxpY2F0aW9uLWxpZmUtY3ljbGVcIj5NYW5hZ2luZyBBcHBsaWNhdGlvbiBMaWZlLWN5Y2xlPFwvYT48XC9saT5cbjxsaT48YSBocmVmPVwiI2NvbnRlbnQtdXNpbmctYXBwbGlmZWN5Y2xlbGlzdGVuZXJcIj5Vc2luZyBBcHBMaWZlY3ljbGVMaXN0ZW5lcjxcL2E+PFwvbGk+XG48bGk+PGEgaHJlZj1cIiNjb250ZW50LXVzaW5nLXdpZGdldHNiaW5kaW5nb2JzZXJ2ZXJcIj5Vc2luZyBXaWRnZXRzQmluZGluZ09ic2VydmVyPFwvYT48XC9saT5cbjxsaT48YSBocmVmPVwiI2NvbnRlbnQtMy1mbHV0dGVyLXRpemVuLWFwcGxpY2F0aW9uLXBhY2thZ2luZ1wiPjMuIEZsdXR0ZXIgVGl6ZW4gQXBwbGljYXRpb24gUGFja2FnaW5nPFwvYT48XC9saT5cbjxsaT48YSBocmVmPVwiI2NvbnRlbnQtNC1mbHV0dGVyLXRpemVuLWFwaVwiPjQuIEZsdXR0ZXIgVGl6ZW4gQVBJPFwvYT48XC9saT5cbjxsaT48YSBocmVmPVwiI2NvbnRlbnQtNS1mbHV0dGVyLXRpemVuLWFwcGxpY2F0aW9uLWRldmVsb3BtZW50XCI+NS4gRmx1dHRlciBUaXplbiBBcHBsaWNhdGlvbiBEZXZlbG9wbWVudDxcL2E+PFwvbGk+XG48XC91bD5cbiIsInRpdGxlIjoiRmx1dHRlciBUaXplbiBBcHBsaWNhdGlvbiIsInJhdyI6bnVsbH0seyJjbGFzcyI6IkFwcFxcU2VydmljZXNcXERvY3VtZW50YXRpb25cXERhdGFcXFJlbmRlcmVkTWFya2Rvd24iLCJzIjoid3JibCJ9XX0seyJzIjoiYXJyIn1dfSwibWVtbyI6eyJpZCI6IjI3RUJKbnBLWG5kSlVTcWpvbG1sIiwibmFtZSI6Il9fbW91bnRQYXJhbXNDb250YWluZXIiLCJwYXRoIjoiZG9jc1wvYXBwbGljYXRpb25cL2ZsdXR0ZXJcL292ZXJ2aWV3XC9vdmVydmlldyIsIm1ldGhvZCI6IkdFVCIsInJlbGVhc2UiOiJhLWEtYSJ9LCJjaGVja3N1bSI6ImJkMTMzYjJiODliYjg2ZDlhYTI5ZjFiMmRiMjhiYzg0ZTA5OThmMWFmNmIzYjQxNmJmYmU1NWViMDUzNDc1ZjkifQ==')" >

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.