diff --git a/README.md b/README.md
index c4768a5..d4b68b0 100644
--- a/README.md
+++ b/README.md
@@ -1,17 +1,23 @@
+# Note: New Dark Theme WPF version is here : https://github.com/unitycoder/UnityLauncherPro
+
+### this old winforms version is no longer updated!
+
# UnityLauncher
-Tool for automatically launching specific unity versions for each project (Windows only)
+Handle all your Unity versions and Projects easily!
# Features
-- Launch correct Unity version for your recent projects
-- Option to download missing unity version installation or open webpage
-- Display Recent projects list with project version, last modified date
-- Highlight project version with green if correct unity is installed
-- Easily open project folder in explorer
-- List of installed Unity versions, can easily run, explore, view release notes
-- Can be used in commandline `UnityLauncher.exe -projectPath "c:/project/path/"`
+- Automagically Open Projects with Correct Unity Version
+- Display Recent Projects list with last modified date and project version info
+- Quickly Explore Project Folder
+- List installed Unity versions, can easily Run, Explore installation folder, View release notes
+- Download Missing Unity Versions Easily
+- Can be used from commandline `UnityLauncher.exe -projectPath "c:/project/path/"`
- Can add custom Explorer context menu item to launch folder as a project: https://github.com/unitycoder/UnityLauncher/wiki/Adding-Explorer-Context-Menu
+- Use custom launcher arguments per project!
+- Show project git branch info
- List of custom package folders (quicly explore them and then can import packages)
+- Show list of available Unity versions/updates
# Instructions
- Download, Run
@@ -21,7 +27,7 @@ Tool for automatically launching specific unity versions for each project (Windo
# Keyboard Shortcuts
- When recent list is selected: Enter = Launch selected, F5 = refresh recent list
-- 1,2,3 to switch tabs
+- Project filter field: Esc - clear search
# Download
https://github.com/unitycoder/UnityLauncher/releases
@@ -36,8 +42,22 @@ https://github.com/unitycoder/UnityLauncher/issues
https://forum.unity3d.com/threads/unitylauncher-launch-correct-unity-versions-for-each-project-automatically.488718/
# Images
-
+
+
+
+
+
+
+
+
+
-
+
-
+# Special Thanks (for fixes, updates, pull requests)
+- https://github.com/851marc
+- https://github.com/KyleOrth
+- https://github.com/Raebyn
+- Ville Tuhkanen
+- https://github.com/geo-at-github
+- https://github.com/yschuurmans
diff --git a/UnityLauncher/App.config b/UnityLauncher/App.config
index a44ae39..498e2cf 100644
--- a/UnityLauncher/App.config
+++ b/UnityLauncher/App.config
@@ -1,32 +1,53 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
- C:\Program Files\
-
-
-
-
- True
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+ C:\Program Files\
+
+
+
+
+ True
+
+
+
+
+
+
+
+ True
+
+
+ False
+
+
+ 600
+
+
+ 650
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+
\ No newline at end of file
diff --git a/UnityLauncher/Form1.Designer.cs b/UnityLauncher/Form1.Designer.cs
index b4441de..318d60b 100644
--- a/UnityLauncher/Form1.Designer.cs
+++ b/UnityLauncher/Form1.Designer.cs
@@ -30,10 +30,14 @@ private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
- this.statusStrip1 = new System.Windows.Forms.StatusStrip();
- this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
this.tabControl1 = new System.Windows.Forms.TabControl();
- this.tabPage1 = new System.Windows.Forms.TabPage();
+ this.tabProjects = new System.Windows.Forms.TabPage();
+ this.lblClearSearchField = new System.Windows.Forms.Label();
+ this.btnBrowseForProject = new System.Windows.Forms.Button();
+ this.btnRefreshProjectList = new System.Windows.Forms.Button();
+ this.tbSearchBar = new System.Windows.Forms.TextBox();
+ this.btnUpgradeProject = new System.Windows.Forms.Button();
+ this.btnRunUnityOnly = new System.Windows.Forms.Button();
this.btnOpenUnityFolder = new System.Windows.Forms.Button();
this.btnLaunch = new System.Windows.Forms.Button();
this.gridRecent = new System.Windows.Forms.DataGridView();
@@ -41,20 +45,49 @@ private void InitializeComponent()
this._version = new System.Windows.Forms.DataGridViewTextBoxColumn();
this._path = new System.Windows.Forms.DataGridViewTextBoxColumn();
this._dateModified = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.tabPage2 = new System.Windows.Forms.TabPage();
+ this._launchArguments = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this._gitBranch = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.tabUnitys = new System.Windows.Forms.TabPage();
+ this.btn_refreshUnityList = new System.Windows.Forms.Button();
this.btnOpenReleasePage = new System.Windows.Forms.Button();
this.btnExploreUnity = new System.Windows.Forms.Button();
this.btnLaunchUnity = new System.Windows.Forms.Button();
this.gridUnityList = new System.Windows.Forms.DataGridView();
this._unityVersion = new System.Windows.Forms.DataGridViewTextBoxColumn();
this._unityPath = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this._unityInstallDate = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this._Platforms = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.tabPackages = new System.Windows.Forms.TabPage();
+ this.btnAddAssetStoreFolder = new System.Windows.Forms.Button();
this.btnExplorePackageFolder = new System.Windows.Forms.Button();
this.btnAddPackageFolder = new System.Windows.Forms.Button();
this.btnRemovePackFolder = new System.Windows.Forms.Button();
this.label3 = new System.Windows.Forms.Label();
this.lstPackageFolders = new System.Windows.Forms.ListBox();
- this.tabPage3 = new System.Windows.Forms.TabPage();
+ this.tabUpdates = new System.Windows.Forms.TabPage();
+ this.btnDownloadNewUnity = new System.Windows.Forms.Button();
+ this.tbSearchUpdates = new System.Windows.Forms.TextBox();
+ this.btnOpenUpdateWebsite = new System.Windows.Forms.Button();
+ this.btnFetchUnityVersions = new System.Windows.Forms.Button();
+ this.gridUnityUpdates = new System.Windows.Forms.DataGridView();
+ this._Date = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this._UnityUpdateVersion = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.tabSettings = new System.Windows.Forms.TabPage();
+ this.btnPlayerLogFolder = new System.Windows.Forms.Button();
+ this.btnOpenLogcatCmd = new System.Windows.Forms.Button();
+ this.chkDarkSkin = new System.Windows.Forms.CheckBox();
+ this.btnCheckUpdates = new System.Windows.Forms.Button();
+ this.linkProjectGithub = new System.Windows.Forms.LinkLabel();
+ this.linkArgumentsDocs = new System.Windows.Forms.LinkLabel();
+ this.chkShowGitBranchColumn = new System.Windows.Forms.CheckBox();
+ this.label5 = new System.Windows.Forms.Label();
+ this.chkShowLauncherArgumentsColumn = new System.Windows.Forms.CheckBox();
+ this.ChkQuitAfterOpen = new System.Windows.Forms.CheckBox();
+ this.btnOpenLogFolder = new System.Windows.Forms.Button();
+ this.chkQuitAfterCommandline = new System.Windows.Forms.CheckBox();
+ this.btnAddRegister = new System.Windows.Forms.Button();
+ this.btnRemoveRegister = new System.Windows.Forms.Button();
+ this.label4 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.chkMinimizeToTaskbar = new System.Windows.Forms.CheckBox();
this.label1 = new System.Windows.Forms.Label();
@@ -67,74 +100,148 @@ private void InitializeComponent()
this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog();
this.notifyIcon = new System.Windows.Forms.NotifyIcon(this.components);
this.btnAddPackFolder = new System.Windows.Forms.Button();
- this.btnAddAssetStoreFolder = new System.Windows.Forms.Button();
- this.statusStrip1.SuspendLayout();
+ this.statusStrip1 = new System.Windows.Forms.StatusStrip();
+ this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
+ this.backgroundWorker1 = new System.ComponentModel.BackgroundWorker();
this.tabControl1.SuspendLayout();
- this.tabPage1.SuspendLayout();
+ this.tabProjects.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.gridRecent)).BeginInit();
- this.tabPage2.SuspendLayout();
+ this.tabUnitys.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.gridUnityList)).BeginInit();
this.tabPackages.SuspendLayout();
- this.tabPage3.SuspendLayout();
+ this.tabUpdates.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.gridUnityUpdates)).BeginInit();
+ this.tabSettings.SuspendLayout();
+ this.statusStrip1.SuspendLayout();
this.SuspendLayout();
//
- // statusStrip1
- //
- this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.toolStripStatusLabel1});
- this.statusStrip1.Location = new System.Drawing.Point(0, 590);
- this.statusStrip1.Name = "statusStrip1";
- this.statusStrip1.Size = new System.Drawing.Size(544, 22);
- this.statusStrip1.TabIndex = 6;
- this.statusStrip1.Text = "statusStrip1";
- //
- // toolStripStatusLabel1
- //
- this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
- this.toolStripStatusLabel1.Size = new System.Drawing.Size(39, 17);
- this.toolStripStatusLabel1.Text = "Status";
- //
// tabControl1
//
- this.tabControl1.Controls.Add(this.tabPage1);
- this.tabControl1.Controls.Add(this.tabPage2);
+ this.tabControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.tabControl1.Controls.Add(this.tabProjects);
+ this.tabControl1.Controls.Add(this.tabUnitys);
this.tabControl1.Controls.Add(this.tabPackages);
- this.tabControl1.Controls.Add(this.tabPage3);
+ this.tabControl1.Controls.Add(this.tabUpdates);
+ this.tabControl1.Controls.Add(this.tabSettings);
this.tabControl1.Location = new System.Drawing.Point(0, 12);
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
- this.tabControl1.Size = new System.Drawing.Size(544, 575);
- this.tabControl1.TabIndex = 0;
- //
- // tabPage1
- //
- this.tabPage1.Controls.Add(this.btnOpenUnityFolder);
- this.tabPage1.Controls.Add(this.btnLaunch);
- this.tabPage1.Controls.Add(this.gridRecent);
- this.tabPage1.Location = new System.Drawing.Point(4, 22);
- this.tabPage1.Name = "tabPage1";
- this.tabPage1.Size = new System.Drawing.Size(536, 549);
- this.tabPage1.TabIndex = 0;
- this.tabPage1.Text = "Projects";
- this.tabPage1.UseVisualStyleBackColor = true;
+ this.tabControl1.Size = new System.Drawing.Size(588, 575);
+ this.tabControl1.TabIndex = 6;
+ this.tabControl1.SelectedIndexChanged += new System.EventHandler(this.tabControl1_SelectedIndexChanged);
+ //
+ // tabProjects
+ //
+ this.tabProjects.Controls.Add(this.lblClearSearchField);
+ this.tabProjects.Controls.Add(this.btnBrowseForProject);
+ this.tabProjects.Controls.Add(this.btnRefreshProjectList);
+ this.tabProjects.Controls.Add(this.tbSearchBar);
+ this.tabProjects.Controls.Add(this.btnUpgradeProject);
+ this.tabProjects.Controls.Add(this.btnRunUnityOnly);
+ this.tabProjects.Controls.Add(this.btnOpenUnityFolder);
+ this.tabProjects.Controls.Add(this.btnLaunch);
+ this.tabProjects.Controls.Add(this.gridRecent);
+ this.tabProjects.Location = new System.Drawing.Point(4, 22);
+ this.tabProjects.Name = "tabProjects";
+ this.tabProjects.Size = new System.Drawing.Size(580, 549);
+ this.tabProjects.TabIndex = 0;
+ this.tabProjects.Text = "Projects";
+ this.tabProjects.UseVisualStyleBackColor = true;
+ //
+ // lblClearSearchField
+ //
+ this.lblClearSearchField.AutoSize = true;
+ this.lblClearSearchField.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.lblClearSearchField.ForeColor = System.Drawing.Color.DarkGray;
+ this.lblClearSearchField.Location = new System.Drawing.Point(448, 8);
+ this.lblClearSearchField.Name = "lblClearSearchField";
+ this.lblClearSearchField.Size = new System.Drawing.Size(12, 13);
+ this.lblClearSearchField.TabIndex = 24;
+ this.lblClearSearchField.Text = "x";
+ this.lblClearSearchField.Click += new System.EventHandler(this.lblClearSearchField_Click);
+ this.lblClearSearchField.MouseEnter += new System.EventHandler(this.lblClearSearchField_MouseEnter);
+ this.lblClearSearchField.MouseLeave += new System.EventHandler(this.lblClearSearchField_MouseLeave);
+ //
+ // btnBrowseForProject
+ //
+ this.btnBrowseForProject.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnBrowseForProject.Location = new System.Drawing.Point(469, 3);
+ this.btnBrowseForProject.Name = "btnBrowseForProject";
+ this.btnBrowseForProject.Size = new System.Drawing.Size(80, 23);
+ this.btnBrowseForProject.TabIndex = 23;
+ this.btnBrowseForProject.Text = "+ Add Project";
+ this.toolTip1.SetToolTip(this.btnBrowseForProject, "Browse for a Project");
+ this.btnBrowseForProject.UseVisualStyleBackColor = true;
+ this.btnBrowseForProject.Click += new System.EventHandler(this.btnBrowseForProject_Click);
+ //
+ // btnRefreshProjectList
+ //
+ this.btnRefreshProjectList.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnRefreshProjectList.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.btnRefreshProjectList.Location = new System.Drawing.Point(555, 3);
+ this.btnRefreshProjectList.Name = "btnRefreshProjectList";
+ this.btnRefreshProjectList.Size = new System.Drawing.Size(22, 23);
+ this.btnRefreshProjectList.TabIndex = 22;
+ this.btnRefreshProjectList.Text = "⟳";
+ this.toolTip1.SetToolTip(this.btnRefreshProjectList, "Refresh Unity Installations List");
+ this.btnRefreshProjectList.UseCompatibleTextRendering = true;
+ this.btnRefreshProjectList.UseVisualStyleBackColor = true;
+ this.btnRefreshProjectList.Click += new System.EventHandler(this.btnRefreshProjectList_Click);
+ //
+ // tbSearchBar
+ //
+ this.tbSearchBar.Location = new System.Drawing.Point(3, 5);
+ this.tbSearchBar.Name = "tbSearchBar";
+ this.tbSearchBar.Size = new System.Drawing.Size(460, 20);
+ this.tbSearchBar.TabIndex = 0;
+ this.tbSearchBar.TextChanged += new System.EventHandler(this.FilterRecentProject);
+ //
+ // btnUpgradeProject
+ //
+ this.btnUpgradeProject.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnUpgradeProject.Location = new System.Drawing.Point(3, 511);
+ this.btnUpgradeProject.Name = "btnUpgradeProject";
+ this.btnUpgradeProject.Size = new System.Drawing.Size(98, 35);
+ this.btnUpgradeProject.TabIndex = 4;
+ this.btnUpgradeProject.Text = "Upgrade Project";
+ this.toolTip1.SetToolTip(this.btnUpgradeProject, "Open File Explorer");
+ this.btnUpgradeProject.UseVisualStyleBackColor = true;
+ this.btnUpgradeProject.Click += new System.EventHandler(this.btnUpgradeProject_Click);
+ //
+ // btnRunUnityOnly
+ //
+ this.btnRunUnityOnly.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnRunUnityOnly.Location = new System.Drawing.Point(105, 511);
+ this.btnRunUnityOnly.Name = "btnRunUnityOnly";
+ this.btnRunUnityOnly.Size = new System.Drawing.Size(67, 35);
+ this.btnRunUnityOnly.TabIndex = 5;
+ this.btnRunUnityOnly.Text = "Run Unity";
+ this.toolTip1.SetToolTip(this.btnRunUnityOnly, "Open File Explorer");
+ this.btnRunUnityOnly.UseVisualStyleBackColor = true;
+ this.btnRunUnityOnly.Click += new System.EventHandler(this.btnRunUnityOnly_Click);
//
// btnOpenUnityFolder
//
- this.btnOpenUnityFolder.Location = new System.Drawing.Point(453, 511);
+ this.btnOpenUnityFolder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnOpenUnityFolder.Location = new System.Drawing.Point(510, 511);
this.btnOpenUnityFolder.Name = "btnOpenUnityFolder";
- this.btnOpenUnityFolder.Size = new System.Drawing.Size(80, 35);
- this.btnOpenUnityFolder.TabIndex = 14;
+ this.btnOpenUnityFolder.Size = new System.Drawing.Size(67, 35);
+ this.btnOpenUnityFolder.TabIndex = 3;
this.btnOpenUnityFolder.Text = "Explore";
this.toolTip1.SetToolTip(this.btnOpenUnityFolder, "Open File Explorer");
this.btnOpenUnityFolder.UseVisualStyleBackColor = true;
+ this.btnOpenUnityFolder.Click += new System.EventHandler(this.btn_openFolder_Click);
//
// btnLaunch
//
+ this.btnLaunch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btnLaunch.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnLaunch.Location = new System.Drawing.Point(3, 511);
+ this.btnLaunch.Location = new System.Drawing.Point(176, 511);
this.btnLaunch.Name = "btnLaunch";
- this.btnLaunch.Size = new System.Drawing.Size(444, 35);
- this.btnLaunch.TabIndex = 10;
+ this.btnLaunch.Size = new System.Drawing.Size(330, 35);
+ this.btnLaunch.TabIndex = 2;
this.btnLaunch.Text = "Launch Project";
this.toolTip1.SetToolTip(this.btnLaunch, "Launch selected project");
this.btnLaunch.UseVisualStyleBackColor = true;
@@ -144,27 +251,33 @@ private void InitializeComponent()
//
this.gridRecent.AllowUserToAddRows = false;
this.gridRecent.AllowUserToDeleteRows = false;
- this.gridRecent.AllowUserToResizeColumns = false;
this.gridRecent.AllowUserToResizeRows = false;
+ this.gridRecent.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
this.gridRecent.CausesValidation = false;
this.gridRecent.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.gridRecent.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this._project,
this._version,
this._path,
- this._dateModified});
- this.gridRecent.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;
- this.gridRecent.Location = new System.Drawing.Point(3, 3);
+ this._dateModified,
+ this._launchArguments,
+ this._gitBranch});
+ this.gridRecent.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnF2;
+ this.gridRecent.Location = new System.Drawing.Point(3, 30);
this.gridRecent.MultiSelect = false;
this.gridRecent.Name = "gridRecent";
- this.gridRecent.ReadOnly = true;
+ this.gridRecent.RowHeadersWidth = 18;
this.gridRecent.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.gridRecent.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.gridRecent.ShowCellErrors = false;
this.gridRecent.ShowCellToolTips = false;
- this.gridRecent.ShowEditingIcon = false;
- this.gridRecent.Size = new System.Drawing.Size(530, 502);
- this.gridRecent.TabIndex = 0;
+ this.gridRecent.Size = new System.Drawing.Size(574, 475);
+ this.gridRecent.StandardTab = true;
+ this.gridRecent.TabIndex = 1;
+ this.gridRecent.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.gridRecent_CellEndEdit);
+ this.gridRecent.CellMouseDoubleClick += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.GridRecent_CellMouseDoubleClick);
this.gridRecent.KeyDown += new System.Windows.Forms.KeyEventHandler(this.gridRecent_KeyDown);
//
// _project
@@ -172,48 +285,75 @@ private void InitializeComponent()
this._project.HeaderText = "Project";
this._project.Name = "_project";
this._project.ReadOnly = true;
- this._project.Resizable = System.Windows.Forms.DataGridViewTriState.False;
- this._project.Width = 135;
+ this._project.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this._project.Width = 150;
//
// _version
//
this._version.HeaderText = "Version";
this._version.Name = "_version";
this._version.ReadOnly = true;
- this._version.Width = 65;
+ this._version.Width = 72;
//
// _path
//
this._path.HeaderText = "Path";
this._path.Name = "_path";
this._path.ReadOnly = true;
- this._path.Resizable = System.Windows.Forms.DataGridViewTriState.False;
- this._path.Width = 178;
+ this._path.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this._path.Width = 185;
//
// _dateModified
//
this._dateModified.HeaderText = "Modified";
this._dateModified.Name = "_dateModified";
this._dateModified.ReadOnly = true;
- this._dateModified.Resizable = System.Windows.Forms.DataGridViewTriState.False;
- this._dateModified.Width = 77;
- //
- // tabPage2
- //
- this.tabPage2.Controls.Add(this.btnOpenReleasePage);
- this.tabPage2.Controls.Add(this.btnExploreUnity);
- this.tabPage2.Controls.Add(this.btnLaunchUnity);
- this.tabPage2.Controls.Add(this.gridUnityList);
- this.tabPage2.Location = new System.Drawing.Point(4, 22);
- this.tabPage2.Name = "tabPage2";
- this.tabPage2.Size = new System.Drawing.Size(536, 549);
- this.tabPage2.TabIndex = 1;
- this.tabPage2.Text = "Unity\'s";
- this.tabPage2.UseVisualStyleBackColor = true;
+ this._dateModified.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this._dateModified.Width = 120;
+ //
+ // _launchArguments
+ //
+ this._launchArguments.HeaderText = "Arguments";
+ this._launchArguments.Name = "_launchArguments";
+ //
+ // _gitBranch
+ //
+ this._gitBranch.HeaderText = "GITBranch";
+ this._gitBranch.Name = "_gitBranch";
+ this._gitBranch.ReadOnly = true;
+ //
+ // tabUnitys
+ //
+ this.tabUnitys.Controls.Add(this.btn_refreshUnityList);
+ this.tabUnitys.Controls.Add(this.btnOpenReleasePage);
+ this.tabUnitys.Controls.Add(this.btnExploreUnity);
+ this.tabUnitys.Controls.Add(this.btnLaunchUnity);
+ this.tabUnitys.Controls.Add(this.gridUnityList);
+ this.tabUnitys.Location = new System.Drawing.Point(4, 22);
+ this.tabUnitys.Name = "tabUnitys";
+ this.tabUnitys.Size = new System.Drawing.Size(580, 549);
+ this.tabUnitys.TabIndex = 1;
+ this.tabUnitys.Text = "Unitys";
+ this.tabUnitys.UseVisualStyleBackColor = true;
+ //
+ // btn_refreshUnityList
+ //
+ this.btn_refreshUnityList.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btn_refreshUnityList.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.btn_refreshUnityList.Location = new System.Drawing.Point(555, 3);
+ this.btn_refreshUnityList.Name = "btn_refreshUnityList";
+ this.btn_refreshUnityList.Size = new System.Drawing.Size(22, 23);
+ this.btn_refreshUnityList.TabIndex = 21;
+ this.btn_refreshUnityList.Text = "⟳";
+ this.toolTip1.SetToolTip(this.btn_refreshUnityList, "Refresh Unity Installations List");
+ this.btn_refreshUnityList.UseCompatibleTextRendering = true;
+ this.btn_refreshUnityList.UseVisualStyleBackColor = true;
+ this.btn_refreshUnityList.Click += new System.EventHandler(this.btnRefresh_Click);
//
// btnOpenReleasePage
//
- this.btnOpenReleasePage.Location = new System.Drawing.Point(367, 511);
+ this.btnOpenReleasePage.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnOpenReleasePage.Location = new System.Drawing.Point(411, 511);
this.btnOpenReleasePage.Name = "btnOpenReleasePage";
this.btnOpenReleasePage.Size = new System.Drawing.Size(80, 35);
this.btnOpenReleasePage.TabIndex = 17;
@@ -224,7 +364,8 @@ private void InitializeComponent()
//
// btnExploreUnity
//
- this.btnExploreUnity.Location = new System.Drawing.Point(453, 511);
+ this.btnExploreUnity.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnExploreUnity.Location = new System.Drawing.Point(497, 511);
this.btnExploreUnity.Name = "btnExploreUnity";
this.btnExploreUnity.Size = new System.Drawing.Size(80, 35);
this.btnExploreUnity.TabIndex = 16;
@@ -235,10 +376,11 @@ private void InitializeComponent()
//
// btnLaunchUnity
//
+ this.btnLaunchUnity.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btnLaunchUnity.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btnLaunchUnity.Location = new System.Drawing.Point(3, 511);
this.btnLaunchUnity.Name = "btnLaunchUnity";
- this.btnLaunchUnity.Size = new System.Drawing.Size(358, 35);
+ this.btnLaunchUnity.Size = new System.Drawing.Size(402, 35);
this.btnLaunchUnity.TabIndex = 15;
this.btnLaunchUnity.Text = "Run Unity";
this.toolTip1.SetToolTip(this.btnLaunchUnity, "Launch selected project");
@@ -251,32 +393,39 @@ private void InitializeComponent()
this.gridUnityList.AllowUserToDeleteRows = false;
this.gridUnityList.AllowUserToResizeColumns = false;
this.gridUnityList.AllowUserToResizeRows = false;
+ this.gridUnityList.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
this.gridUnityList.CausesValidation = false;
this.gridUnityList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.gridUnityList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this._unityVersion,
- this._unityPath});
+ this._unityPath,
+ this._unityInstallDate,
+ this._Platforms});
this.gridUnityList.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;
- this.gridUnityList.Location = new System.Drawing.Point(3, 3);
+ this.gridUnityList.Location = new System.Drawing.Point(3, 27);
this.gridUnityList.MultiSelect = false;
this.gridUnityList.Name = "gridUnityList";
this.gridUnityList.ReadOnly = true;
+ this.gridUnityList.RowHeadersWidth = 15;
this.gridUnityList.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.gridUnityList.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.gridUnityList.ShowCellErrors = false;
this.gridUnityList.ShowCellToolTips = false;
this.gridUnityList.ShowEditingIcon = false;
- this.gridUnityList.Size = new System.Drawing.Size(530, 502);
+ this.gridUnityList.Size = new System.Drawing.Size(574, 478);
+ this.gridUnityList.StandardTab = true;
this.gridUnityList.TabIndex = 10;
this.gridUnityList.KeyDown += new System.Windows.Forms.KeyEventHandler(this.unityGridView_KeyDown);
//
// _unityVersion
//
this._unityVersion.HeaderText = "Version";
- this._unityVersion.MinimumWidth = 150;
+ this._unityVersion.MinimumWidth = 120;
this._unityVersion.Name = "_unityVersion";
this._unityVersion.ReadOnly = true;
- this._unityVersion.Width = 150;
+ this._unityVersion.Width = 120;
//
// _unityPath
//
@@ -287,6 +436,19 @@ private void InitializeComponent()
this._unityPath.Resizable = System.Windows.Forms.DataGridViewTriState.False;
this._unityPath.Width = 300;
//
+ // _unityInstallDate
+ //
+ this._unityInstallDate.HeaderText = "Installed";
+ this._unityInstallDate.Name = "_unityInstallDate";
+ this._unityInstallDate.ReadOnly = true;
+ this._unityInstallDate.Width = 120;
+ //
+ // _Platforms
+ //
+ this._Platforms.HeaderText = "Platforms";
+ this._Platforms.Name = "_Platforms";
+ this._Platforms.ReadOnly = true;
+ //
// tabPackages
//
this.tabPackages.Controls.Add(this.btnAddAssetStoreFolder);
@@ -297,17 +459,30 @@ private void InitializeComponent()
this.tabPackages.Controls.Add(this.lstPackageFolders);
this.tabPackages.Location = new System.Drawing.Point(4, 22);
this.tabPackages.Name = "tabPackages";
- this.tabPackages.Size = new System.Drawing.Size(536, 549);
+ this.tabPackages.Size = new System.Drawing.Size(580, 549);
this.tabPackages.TabIndex = 4;
this.tabPackages.Text = "My Packages";
this.tabPackages.UseVisualStyleBackColor = true;
//
+ // btnAddAssetStoreFolder
+ //
+ this.btnAddAssetStoreFolder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnAddAssetStoreFolder.Location = new System.Drawing.Point(416, 232);
+ this.btnAddAssetStoreFolder.Name = "btnAddAssetStoreFolder";
+ this.btnAddAssetStoreFolder.Size = new System.Drawing.Size(142, 23);
+ this.btnAddAssetStoreFolder.TabIndex = 29;
+ this.btnAddAssetStoreFolder.Text = "Add AssetStore Folder";
+ this.btnAddAssetStoreFolder.UseVisualStyleBackColor = true;
+ this.btnAddAssetStoreFolder.Click += new System.EventHandler(this.btnAddAssetStoreFolder_Click);
+ //
// btnExplorePackageFolder
//
+ this.btnExplorePackageFolder.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
this.btnExplorePackageFolder.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btnExplorePackageFolder.Location = new System.Drawing.Point(3, 511);
this.btnExplorePackageFolder.Name = "btnExplorePackageFolder";
- this.btnExplorePackageFolder.Size = new System.Drawing.Size(530, 35);
+ this.btnExplorePackageFolder.Size = new System.Drawing.Size(574, 35);
this.btnExplorePackageFolder.TabIndex = 28;
this.btnExplorePackageFolder.Text = "Explore";
this.toolTip1.SetToolTip(this.btnExplorePackageFolder, "Open File Explorer");
@@ -346,43 +521,349 @@ private void InitializeComponent()
//
// lstPackageFolders
//
+ this.lstPackageFolders.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
this.lstPackageFolders.FormattingEnabled = true;
this.lstPackageFolders.Location = new System.Drawing.Point(19, 40);
this.lstPackageFolders.Name = "lstPackageFolders";
- this.lstPackageFolders.Size = new System.Drawing.Size(495, 186);
+ this.lstPackageFolders.Size = new System.Drawing.Size(539, 186);
this.lstPackageFolders.TabIndex = 21;
//
- // tabPage3
- //
- this.tabPage3.Controls.Add(this.label2);
- this.tabPage3.Controls.Add(this.chkMinimizeToTaskbar);
- this.tabPage3.Controls.Add(this.label1);
- this.tabPage3.Controls.Add(this.btnAddUnityFolder);
- this.tabPage3.Controls.Add(this.btnRemoveInstallFolder);
- this.tabPage3.Controls.Add(this.lstRootFolders);
- this.tabPage3.Controls.Add(this.lbl_unityCount);
- this.tabPage3.Controls.Add(this.btnRefresh);
- this.tabPage3.Location = new System.Drawing.Point(4, 22);
- this.tabPage3.Name = "tabPage3";
- this.tabPage3.Size = new System.Drawing.Size(536, 549);
- this.tabPage3.TabIndex = 3;
- this.tabPage3.Text = "Settings";
- this.tabPage3.UseVisualStyleBackColor = true;
+ // tabUpdates
+ //
+ this.tabUpdates.Controls.Add(this.btnDownloadNewUnity);
+ this.tabUpdates.Controls.Add(this.tbSearchUpdates);
+ this.tabUpdates.Controls.Add(this.btnOpenUpdateWebsite);
+ this.tabUpdates.Controls.Add(this.btnFetchUnityVersions);
+ this.tabUpdates.Controls.Add(this.gridUnityUpdates);
+ this.tabUpdates.Location = new System.Drawing.Point(4, 22);
+ this.tabUpdates.Name = "tabUpdates";
+ this.tabUpdates.Size = new System.Drawing.Size(580, 549);
+ this.tabUpdates.TabIndex = 5;
+ this.tabUpdates.Text = "Updates";
+ this.tabUpdates.UseVisualStyleBackColor = true;
+ //
+ // btnDownloadNewUnity
+ //
+ this.btnDownloadNewUnity.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnDownloadNewUnity.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.btnDownloadNewUnity.Location = new System.Drawing.Point(3, 511);
+ this.btnDownloadNewUnity.Name = "btnDownloadNewUnity";
+ this.btnDownloadNewUnity.Size = new System.Drawing.Size(239, 35);
+ this.btnDownloadNewUnity.TabIndex = 25;
+ this.btnDownloadNewUnity.Text = "Download in Browser";
+ this.toolTip1.SetToolTip(this.btnDownloadNewUnity, "Open Release Page");
+ this.btnDownloadNewUnity.UseVisualStyleBackColor = true;
+ this.btnDownloadNewUnity.Click += new System.EventHandler(this.btnDownloadNewUnity_Click);
+ //
+ // tbSearchUpdates
+ //
+ this.tbSearchUpdates.Location = new System.Drawing.Point(3, 5);
+ this.tbSearchUpdates.Name = "tbSearchUpdates";
+ this.tbSearchUpdates.Size = new System.Drawing.Size(460, 20);
+ this.tbSearchUpdates.TabIndex = 8;
+ this.tbSearchUpdates.TextChanged += new System.EventHandler(this.FilterUnityUpdates);
+ //
+ // btnOpenUpdateWebsite
+ //
+ this.btnOpenUpdateWebsite.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnOpenUpdateWebsite.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.btnOpenUpdateWebsite.Location = new System.Drawing.Point(248, 511);
+ this.btnOpenUpdateWebsite.Name = "btnOpenUpdateWebsite";
+ this.btnOpenUpdateWebsite.Size = new System.Drawing.Size(329, 35);
+ this.btnOpenUpdateWebsite.TabIndex = 24;
+ this.btnOpenUpdateWebsite.Text = "Open Website";
+ this.toolTip1.SetToolTip(this.btnOpenUpdateWebsite, "Open Release Page");
+ this.btnOpenUpdateWebsite.UseVisualStyleBackColor = true;
+ this.btnOpenUpdateWebsite.Click += new System.EventHandler(this.btnOpenUpdateWebsite_Click);
+ //
+ // btnFetchUnityVersions
+ //
+ this.btnFetchUnityVersions.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnFetchUnityVersions.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.btnFetchUnityVersions.Location = new System.Drawing.Point(555, 3);
+ this.btnFetchUnityVersions.Name = "btnFetchUnityVersions";
+ this.btnFetchUnityVersions.Size = new System.Drawing.Size(22, 23);
+ this.btnFetchUnityVersions.TabIndex = 23;
+ this.btnFetchUnityVersions.Text = "⟳";
+ this.toolTip1.SetToolTip(this.btnFetchUnityVersions, "Fetch list of Unity Updates");
+ this.btnFetchUnityVersions.UseCompatibleTextRendering = true;
+ this.btnFetchUnityVersions.UseVisualStyleBackColor = true;
+ this.btnFetchUnityVersions.Click += new System.EventHandler(this.btnFetchUnityVersions_Click);
+ //
+ // gridUnityUpdates
+ //
+ this.gridUnityUpdates.AllowUserToAddRows = false;
+ this.gridUnityUpdates.AllowUserToDeleteRows = false;
+ this.gridUnityUpdates.AllowUserToResizeColumns = false;
+ this.gridUnityUpdates.AllowUserToResizeRows = false;
+ this.gridUnityUpdates.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.gridUnityUpdates.CausesValidation = false;
+ this.gridUnityUpdates.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+ this.gridUnityUpdates.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+ this._Date,
+ this._UnityUpdateVersion});
+ this.gridUnityUpdates.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;
+ this.gridUnityUpdates.Location = new System.Drawing.Point(3, 30);
+ this.gridUnityUpdates.MultiSelect = false;
+ this.gridUnityUpdates.Name = "gridUnityUpdates";
+ this.gridUnityUpdates.ReadOnly = true;
+ this.gridUnityUpdates.RowHeadersWidth = 18;
+ this.gridUnityUpdates.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
+ this.gridUnityUpdates.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+ this.gridUnityUpdates.ShowCellErrors = false;
+ this.gridUnityUpdates.ShowCellToolTips = false;
+ this.gridUnityUpdates.ShowEditingIcon = false;
+ this.gridUnityUpdates.Size = new System.Drawing.Size(574, 475);
+ this.gridUnityUpdates.StandardTab = true;
+ this.gridUnityUpdates.TabIndex = 22;
+ //
+ // _Date
+ //
+ this._Date.HeaderText = "Date";
+ this._Date.MinimumWidth = 100;
+ this._Date.Name = "_Date";
+ this._Date.ReadOnly = true;
+ this._Date.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+ //
+ // _UnityUpdateVersion
+ //
+ this._UnityUpdateVersion.HeaderText = "Version";
+ this._UnityUpdateVersion.MinimumWidth = 350;
+ this._UnityUpdateVersion.Name = "_UnityUpdateVersion";
+ this._UnityUpdateVersion.ReadOnly = true;
+ this._UnityUpdateVersion.Width = 350;
+ //
+ // tabSettings
+ //
+ this.tabSettings.Controls.Add(this.btnPlayerLogFolder);
+ this.tabSettings.Controls.Add(this.btnOpenLogcatCmd);
+ this.tabSettings.Controls.Add(this.chkDarkSkin);
+ this.tabSettings.Controls.Add(this.btnCheckUpdates);
+ this.tabSettings.Controls.Add(this.linkProjectGithub);
+ this.tabSettings.Controls.Add(this.linkArgumentsDocs);
+ this.tabSettings.Controls.Add(this.chkShowGitBranchColumn);
+ this.tabSettings.Controls.Add(this.label5);
+ this.tabSettings.Controls.Add(this.chkShowLauncherArgumentsColumn);
+ this.tabSettings.Controls.Add(this.ChkQuitAfterOpen);
+ this.tabSettings.Controls.Add(this.btnOpenLogFolder);
+ this.tabSettings.Controls.Add(this.chkQuitAfterCommandline);
+ this.tabSettings.Controls.Add(this.btnAddRegister);
+ this.tabSettings.Controls.Add(this.btnRemoveRegister);
+ this.tabSettings.Controls.Add(this.label4);
+ this.tabSettings.Controls.Add(this.label2);
+ this.tabSettings.Controls.Add(this.chkMinimizeToTaskbar);
+ this.tabSettings.Controls.Add(this.label1);
+ this.tabSettings.Controls.Add(this.btnAddUnityFolder);
+ this.tabSettings.Controls.Add(this.btnRemoveInstallFolder);
+ this.tabSettings.Controls.Add(this.lstRootFolders);
+ this.tabSettings.Controls.Add(this.lbl_unityCount);
+ this.tabSettings.Controls.Add(this.btnRefresh);
+ this.tabSettings.Location = new System.Drawing.Point(4, 22);
+ this.tabSettings.Name = "tabSettings";
+ this.tabSettings.Size = new System.Drawing.Size(580, 549);
+ this.tabSettings.TabIndex = 3;
+ this.tabSettings.Text = "Settings";
+ this.tabSettings.UseVisualStyleBackColor = true;
+ //
+ // btnPlayerLogFolder
+ //
+ this.btnPlayerLogFolder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnPlayerLogFolder.Location = new System.Drawing.Point(328, 300);
+ this.btnPlayerLogFolder.Name = "btnPlayerLogFolder";
+ this.btnPlayerLogFolder.Size = new System.Drawing.Size(119, 23);
+ this.btnPlayerLogFolder.TabIndex = 43;
+ this.btnPlayerLogFolder.Text = "Player.log Folder";
+ this.btnPlayerLogFolder.UseVisualStyleBackColor = true;
+ this.btnPlayerLogFolder.Click += new System.EventHandler(this.btnPlayerLogFolder_Click);
+ //
+ // btnOpenLogcatCmd
+ //
+ this.btnOpenLogcatCmd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnOpenLogcatCmd.Location = new System.Drawing.Point(453, 271);
+ this.btnOpenLogcatCmd.Name = "btnOpenLogcatCmd";
+ this.btnOpenLogcatCmd.Size = new System.Drawing.Size(119, 23);
+ this.btnOpenLogcatCmd.TabIndex = 42;
+ this.btnOpenLogcatCmd.Text = "ADB logcat (cmd)";
+ this.toolTip1.SetToolTip(this.btnOpenLogcatCmd, "adb logcat -s Unity ActivityManager PackageManager dalvikvm DEBUG -v color");
+ this.btnOpenLogcatCmd.UseVisualStyleBackColor = true;
+ this.btnOpenLogcatCmd.Click += new System.EventHandler(this.btnOpenLogcatCmd_Click);
+ //
+ // chkDarkSkin
+ //
+ this.chkDarkSkin.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.chkDarkSkin.AutoSize = true;
+ this.chkDarkSkin.Location = new System.Drawing.Point(20, 443);
+ this.chkDarkSkin.Name = "chkDarkSkin";
+ this.chkDarkSkin.Size = new System.Drawing.Size(85, 17);
+ this.chkDarkSkin.TabIndex = 41;
+ this.chkDarkSkin.Text = "Dark Theme";
+ this.chkDarkSkin.UseVisualStyleBackColor = true;
+ this.chkDarkSkin.CheckedChanged += new System.EventHandler(this.chkDarkSkin_CheckedChanged);
+ //
+ // btnCheckUpdates
+ //
+ this.btnCheckUpdates.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnCheckUpdates.Location = new System.Drawing.Point(415, 495);
+ this.btnCheckUpdates.Name = "btnCheckUpdates";
+ this.btnCheckUpdates.Size = new System.Drawing.Size(157, 23);
+ this.btnCheckUpdates.TabIndex = 40;
+ this.btnCheckUpdates.Text = "Open Github Releases Page";
+ this.btnCheckUpdates.UseVisualStyleBackColor = true;
+ this.btnCheckUpdates.Click += new System.EventHandler(this.btnCheckUpdates_Click);
+ //
+ // linkProjectGithub
+ //
+ this.linkProjectGithub.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.linkProjectGithub.AutoSize = true;
+ this.linkProjectGithub.LinkArea = new System.Windows.Forms.LinkArea(20, 6);
+ this.linkProjectGithub.LinkBehavior = System.Windows.Forms.LinkBehavior.AlwaysUnderline;
+ this.linkProjectGithub.Location = new System.Drawing.Point(434, 532);
+ this.linkProjectGithub.Name = "linkProjectGithub";
+ this.linkProjectGithub.Size = new System.Drawing.Size(138, 17);
+ this.linkProjectGithub.TabIndex = 39;
+ this.linkProjectGithub.TabStop = true;
+ this.linkProjectGithub.Text = "Visit UnityLauncher Github";
+ this.linkProjectGithub.UseCompatibleTextRendering = true;
+ this.linkProjectGithub.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkProjectGithub_LinkClicked);
+ //
+ // linkArgumentsDocs
+ //
+ this.linkArgumentsDocs.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.linkArgumentsDocs.AutoSize = true;
+ this.linkArgumentsDocs.LinkArea = new System.Windows.Forms.LinkArea(1, 4);
+ this.linkArgumentsDocs.LinkBehavior = System.Windows.Forms.LinkBehavior.AlwaysUnderline;
+ this.linkArgumentsDocs.Location = new System.Drawing.Point(385, 375);
+ this.linkArgumentsDocs.Name = "linkArgumentsDocs";
+ this.linkArgumentsDocs.Size = new System.Drawing.Size(36, 17);
+ this.linkArgumentsDocs.TabIndex = 38;
+ this.linkArgumentsDocs.TabStop = true;
+ this.linkArgumentsDocs.Text = "(docs)";
+ this.linkArgumentsDocs.UseCompatibleTextRendering = true;
+ this.linkArgumentsDocs.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkArgumentsDocs_LinkClicked);
+ //
+ // chkShowGitBranchColumn
+ //
+ this.chkShowGitBranchColumn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.chkShowGitBranchColumn.AutoSize = true;
+ this.chkShowGitBranchColumn.Location = new System.Drawing.Point(266, 397);
+ this.chkShowGitBranchColumn.Name = "chkShowGitBranchColumn";
+ this.chkShowGitBranchColumn.Size = new System.Drawing.Size(76, 17);
+ this.chkShowGitBranchColumn.TabIndex = 36;
+ this.chkShowGitBranchColumn.Text = "Git Branch";
+ this.chkShowGitBranchColumn.UseVisualStyleBackColor = true;
+ this.chkShowGitBranchColumn.CheckedChanged += new System.EventHandler(this.checkShowGitBranchColumn_CheckedChanged);
+ //
+ // label5
+ //
+ this.label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.label5.AutoSize = true;
+ this.label5.Enabled = false;
+ this.label5.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.label5.Location = new System.Drawing.Point(263, 349);
+ this.label5.Name = "label5";
+ this.label5.Size = new System.Drawing.Size(105, 13);
+ this.label5.TabIndex = 35;
+ this.label5.Text = "Optional Columns";
+ //
+ // chkShowLauncherArgumentsColumn
+ //
+ this.chkShowLauncherArgumentsColumn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.chkShowLauncherArgumentsColumn.AutoSize = true;
+ this.chkShowLauncherArgumentsColumn.Location = new System.Drawing.Point(266, 374);
+ this.chkShowLauncherArgumentsColumn.Name = "chkShowLauncherArgumentsColumn";
+ this.chkShowLauncherArgumentsColumn.Size = new System.Drawing.Size(124, 17);
+ this.chkShowLauncherArgumentsColumn.TabIndex = 34;
+ this.chkShowLauncherArgumentsColumn.Text = "Launcher Arguments";
+ this.chkShowLauncherArgumentsColumn.UseVisualStyleBackColor = true;
+ this.chkShowLauncherArgumentsColumn.CheckedChanged += new System.EventHandler(this.checkShowLauncherArgumentsColumn_CheckedChanged);
+ //
+ // ChkQuitAfterOpen
+ //
+ this.ChkQuitAfterOpen.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.ChkQuitAfterOpen.AutoSize = true;
+ this.ChkQuitAfterOpen.Location = new System.Drawing.Point(20, 397);
+ this.ChkQuitAfterOpen.Name = "ChkQuitAfterOpen";
+ this.ChkQuitAfterOpen.Size = new System.Drawing.Size(172, 17);
+ this.ChkQuitAfterOpen.TabIndex = 33;
+ this.ChkQuitAfterOpen.Text = "Close after launching a project";
+ this.ChkQuitAfterOpen.UseVisualStyleBackColor = true;
+ this.ChkQuitAfterOpen.CheckedChanged += new System.EventHandler(this.ChkQuitAfterOpen_CheckedChanged);
+ //
+ // btnOpenLogFolder
+ //
+ this.btnOpenLogFolder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnOpenLogFolder.Location = new System.Drawing.Point(328, 271);
+ this.btnOpenLogFolder.Name = "btnOpenLogFolder";
+ this.btnOpenLogFolder.Size = new System.Drawing.Size(119, 23);
+ this.btnOpenLogFolder.TabIndex = 32;
+ this.btnOpenLogFolder.Text = "Open Editor Log Folder";
+ this.btnOpenLogFolder.UseVisualStyleBackColor = true;
+ this.btnOpenLogFolder.Click += new System.EventHandler(this.btnOpenLogFolder_Click);
+ //
+ // chkQuitAfterCommandline
+ //
+ this.chkQuitAfterCommandline.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.chkQuitAfterCommandline.AutoSize = true;
+ this.chkQuitAfterCommandline.Location = new System.Drawing.Point(20, 420);
+ this.chkQuitAfterCommandline.Name = "chkQuitAfterCommandline";
+ this.chkQuitAfterCommandline.Size = new System.Drawing.Size(189, 17);
+ this.chkQuitAfterCommandline.TabIndex = 31;
+ this.chkQuitAfterCommandline.Text = "Close after launching from Explorer";
+ this.chkQuitAfterCommandline.UseVisualStyleBackColor = true;
+ this.chkQuitAfterCommandline.CheckedChanged += new System.EventHandler(this.chkQuitAfterCommandline_CheckedChanged);
+ //
+ // btnAddRegister
+ //
+ this.btnAddRegister.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnAddRegister.Location = new System.Drawing.Point(139, 493);
+ this.btnAddRegister.Name = "btnAddRegister";
+ this.btnAddRegister.Size = new System.Drawing.Size(64, 23);
+ this.btnAddRegister.TabIndex = 30;
+ this.btnAddRegister.Text = "Install";
+ this.btnAddRegister.UseVisualStyleBackColor = true;
+ this.btnAddRegister.Click += new System.EventHandler(this.btnAddRegister_Click);
+ //
+ // btnRemoveRegister
+ //
+ this.btnRemoveRegister.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnRemoveRegister.Location = new System.Drawing.Point(209, 493);
+ this.btnRemoveRegister.Name = "btnRemoveRegister";
+ this.btnRemoveRegister.Size = new System.Drawing.Size(64, 23);
+ this.btnRemoveRegister.TabIndex = 29;
+ this.btnRemoveRegister.Text = "Uninstall";
+ this.btnRemoveRegister.UseVisualStyleBackColor = true;
+ this.btnRemoveRegister.Click += new System.EventHandler(this.btnRemoveRegister_Click);
+ //
+ // label4
+ //
+ this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.label4.AutoSize = true;
+ this.label4.Location = new System.Drawing.Point(19, 498);
+ this.label4.Name = "label4";
+ this.label4.Size = new System.Drawing.Size(117, 13);
+ this.label4.TabIndex = 28;
+ this.label4.Text = "Explorer Context Menu:";
//
// label2
//
+ this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.label2.AutoSize = true;
this.label2.Enabled = false;
- this.label2.Location = new System.Drawing.Point(17, 361);
+ this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.label2.Location = new System.Drawing.Point(17, 349);
this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(74, 13);
+ this.label2.Size = new System.Drawing.Size(88, 13);
this.label2.TabIndex = 26;
this.label2.Text = "Other Settings";
//
// chkMinimizeToTaskbar
//
+ this.chkMinimizeToTaskbar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.chkMinimizeToTaskbar.AutoSize = true;
- this.chkMinimizeToTaskbar.Location = new System.Drawing.Point(20, 386);
+ this.chkMinimizeToTaskbar.Location = new System.Drawing.Point(20, 374);
this.chkMinimizeToTaskbar.Name = "chkMinimizeToTaskbar";
this.chkMinimizeToTaskbar.Size = new System.Drawing.Size(116, 17);
this.chkMinimizeToTaskbar.TabIndex = 25;
@@ -422,17 +903,20 @@ private void InitializeComponent()
//
// lstRootFolders
//
+ this.lstRootFolders.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
this.lstRootFolders.FormattingEnabled = true;
this.lstRootFolders.Location = new System.Drawing.Point(20, 31);
this.lstRootFolders.Name = "lstRootFolders";
- this.lstRootFolders.Size = new System.Drawing.Size(495, 186);
+ this.lstRootFolders.Size = new System.Drawing.Size(563, 186);
this.lstRootFolders.TabIndex = 20;
//
// lbl_unityCount
//
+ this.lbl_unityCount.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lbl_unityCount.AutoSize = true;
this.lbl_unityCount.Enabled = false;
- this.lbl_unityCount.Location = new System.Drawing.Point(418, 15);
+ this.lbl_unityCount.Location = new System.Drawing.Point(483, 15);
this.lbl_unityCount.Name = "lbl_unityCount";
this.lbl_unityCount.Size = new System.Drawing.Size(97, 13);
this.lbl_unityCount.TabIndex = 18;
@@ -440,9 +924,10 @@ private void InitializeComponent()
//
// btnRefresh
//
- this.btnRefresh.Location = new System.Drawing.Point(378, 223);
+ this.btnRefresh.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnRefresh.Location = new System.Drawing.Point(453, 223);
this.btnRefresh.Name = "btnRefresh";
- this.btnRefresh.Size = new System.Drawing.Size(137, 23);
+ this.btnRefresh.Size = new System.Drawing.Size(119, 23);
this.btnRefresh.TabIndex = 19;
this.btnRefresh.Text = "Refresh Unity List";
this.toolTip1.SetToolTip(this.btnRefresh, "Refresh Unity Installations List");
@@ -470,73 +955,83 @@ private void InitializeComponent()
this.btnAddPackFolder.Text = "Add Folder";
this.btnAddPackFolder.UseVisualStyleBackColor = true;
//
- // btnAddAssetStoreFolder
+ // statusStrip1
//
- this.btnAddAssetStoreFolder.Location = new System.Drawing.Point(372, 232);
- this.btnAddAssetStoreFolder.Name = "btnAddAssetStoreFolder";
- this.btnAddAssetStoreFolder.Size = new System.Drawing.Size(142, 23);
- this.btnAddAssetStoreFolder.TabIndex = 29;
- this.btnAddAssetStoreFolder.Text = "Add AssetStore Folder";
- this.btnAddAssetStoreFolder.UseVisualStyleBackColor = true;
- this.btnAddAssetStoreFolder.Click += new System.EventHandler(this.btnAddAssetStoreFolder_Click);
+ // this next line keeps disappearing : this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {this.toolStripStatusLabel1});
+ this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.toolStripStatusLabel1 });
+ this.statusStrip1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.statusStrip1.AutoSize = false;
+ this.statusStrip1.Dock = System.Windows.Forms.DockStyle.None;
+ this.statusStrip1.Location = new System.Drawing.Point(0, 590);
+ this.statusStrip1.Name = "statusStrip1";
+ this.statusStrip1.Size = new System.Drawing.Size(579, 22);
+ this.statusStrip1.SizingGrip = false;
+ this.statusStrip1.TabIndex = 7;
+ this.statusStrip1.Text = "statusStrip1";
+ //
+ // toolStripStatusLabel1
+ //
+ this.toolStripStatusLabel1.AutoSize = false;
+ this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
+ this.toolStripStatusLabel1.Size = new System.Drawing.Size(550, 17);
+ this.toolStripStatusLabel1.Text = "toolStripStatusLabel1";
+ this.toolStripStatusLabel1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(544, 612);
- this.Controls.Add(this.tabControl1);
+ this.ClientSize = new System.Drawing.Size(588, 612);
this.Controls.Add(this.statusStrip1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+ this.Controls.Add(this.tabControl1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.KeyPreview = true;
this.MaximizeBox = false;
+ this.MinimumSize = new System.Drawing.Size(600, 650);
this.Name = "Form1";
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
- this.Text = "UnityLauncher - Potato Edition 5";
+ this.Text = "UnityLauncher - AutumnEdition 29";
+ this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
this.Load += new System.EventHandler(this.Form1_Load);
+ this.ResizeEnd += new System.EventHandler(this.Form1_ResizeEnd);
this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.Form1_KeyPress);
this.Resize += new System.EventHandler(this.Form1_Resize);
- this.statusStrip1.ResumeLayout(false);
- this.statusStrip1.PerformLayout();
this.tabControl1.ResumeLayout(false);
- this.tabPage1.ResumeLayout(false);
+ this.tabProjects.ResumeLayout(false);
+ this.tabProjects.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.gridRecent)).EndInit();
- this.tabPage2.ResumeLayout(false);
+ this.tabUnitys.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.gridUnityList)).EndInit();
this.tabPackages.ResumeLayout(false);
this.tabPackages.PerformLayout();
- this.tabPage3.ResumeLayout(false);
- this.tabPage3.PerformLayout();
+ this.tabUpdates.ResumeLayout(false);
+ this.tabUpdates.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.gridUnityUpdates)).EndInit();
+ this.tabSettings.ResumeLayout(false);
+ this.tabSettings.PerformLayout();
+ this.statusStrip1.ResumeLayout(false);
+ this.statusStrip1.PerformLayout();
this.ResumeLayout(false);
- this.PerformLayout();
}
#endregion
- private System.Windows.Forms.StatusStrip statusStrip1;
- private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
private System.Windows.Forms.TabControl tabControl1;
- private System.Windows.Forms.TabPage tabPage1;
+ private System.Windows.Forms.TabPage tabProjects;
private System.Windows.Forms.Button btnOpenUnityFolder;
private System.Windows.Forms.ToolTip toolTip1;
private System.Windows.Forms.Button btnLaunch;
private System.Windows.Forms.DataGridView gridRecent;
- private System.Windows.Forms.DataGridViewTextBoxColumn _project;
- private System.Windows.Forms.DataGridViewTextBoxColumn _version;
- private System.Windows.Forms.DataGridViewTextBoxColumn _path;
- private System.Windows.Forms.DataGridViewTextBoxColumn _dateModified;
- private System.Windows.Forms.TabPage tabPage2;
+ private System.Windows.Forms.TabPage tabUnitys;
private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1;
private System.Windows.Forms.NotifyIcon notifyIcon;
- private System.Windows.Forms.TabPage tabPage3;
+ private System.Windows.Forms.TabPage tabSettings;
private System.Windows.Forms.Label lbl_unityCount;
private System.Windows.Forms.Button btnRefresh;
private System.Windows.Forms.DataGridView gridUnityList;
private System.Windows.Forms.Button btnExploreUnity;
private System.Windows.Forms.Button btnLaunchUnity;
- private System.Windows.Forms.DataGridViewTextBoxColumn _unityVersion;
- private System.Windows.Forms.DataGridViewTextBoxColumn _unityPath;
private System.Windows.Forms.ListBox lstRootFolders;
private System.Windows.Forms.Button btnAddUnityFolder;
private System.Windows.Forms.Button btnRemoveInstallFolder;
@@ -552,6 +1047,49 @@ private void InitializeComponent()
private System.Windows.Forms.Button btnRemovePackFolder;
private System.Windows.Forms.Button btnAddPackFolder;
private System.Windows.Forms.Button btnAddAssetStoreFolder;
+ private System.Windows.Forms.Button btnAddRegister;
+ private System.Windows.Forms.Button btnRemoveRegister;
+ private System.Windows.Forms.Label label4;
+ private System.Windows.Forms.CheckBox chkQuitAfterCommandline;
+ private System.Windows.Forms.Button btnRunUnityOnly;
+ private System.Windows.Forms.StatusStrip statusStrip1;
+ private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
+ private System.Windows.Forms.Button btnUpgradeProject;
+ private System.Windows.Forms.Button btnOpenLogFolder;
+ private System.Windows.Forms.TextBox tbSearchBar;
+ private System.Windows.Forms.CheckBox ChkQuitAfterOpen;
+ private System.Windows.Forms.Button btn_refreshUnityList;
+ private System.Windows.Forms.TabPage tabUpdates;
+ private System.Windows.Forms.Button btnFetchUnityVersions;
+ private System.Windows.Forms.DataGridView gridUnityUpdates;
+ private System.Windows.Forms.Button btnOpenUpdateWebsite;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _Date;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _UnityUpdateVersion;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _project;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _version;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _path;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _dateModified;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _launchArguments;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _gitBranch;
+ private System.Windows.Forms.CheckBox chkShowGitBranchColumn;
+ private System.Windows.Forms.Label label5;
+ private System.Windows.Forms.CheckBox chkShowLauncherArgumentsColumn;
+ private System.Windows.Forms.LinkLabel linkArgumentsDocs;
+ private System.Windows.Forms.LinkLabel linkProjectGithub;
+ private System.Windows.Forms.Button btnCheckUpdates;
+ private System.Windows.Forms.Button btnRefreshProjectList;
+ private System.Windows.Forms.Button btnBrowseForProject;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _unityVersion;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _unityPath;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _unityInstallDate;
+ private System.Windows.Forms.DataGridViewTextBoxColumn _Platforms;
+ private System.Windows.Forms.TextBox tbSearchUpdates;
+ private System.ComponentModel.BackgroundWorker backgroundWorker1;
+ private System.Windows.Forms.CheckBox chkDarkSkin;
+ private System.Windows.Forms.Button btnOpenLogcatCmd;
+ private System.Windows.Forms.Button btnDownloadNewUnity;
+ private System.Windows.Forms.Button btnPlayerLogFolder;
+ private System.Windows.Forms.Label lblClearSearchField;
}
}
diff --git a/UnityLauncher/Form1.cs b/UnityLauncher/Form1.cs
index a26306e..456283e 100644
--- a/UnityLauncher/Form1.cs
+++ b/UnityLauncher/Form1.cs
@@ -1,744 +1,1479 @@
-using Microsoft.Win32;
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.Drawing;
-using System.IO;
-using System.Linq;
-using System.Net;
-using System.Text;
-using System.Text.RegularExpressions;
-using System.Windows.Forms;
-
-namespace UnityLauncher
-{
- public partial class Form1 : Form
- {
- // version,exe path (example: 5.6.1f1,c:\prog\unity561\editor\unity.exe)
- Dictionary unityList = new Dictionary();
-
- public Form1()
- {
- InitializeComponent();
- }
-
- private void Form1_Load(object sender, EventArgs e)
- {
- SetStatus("Initializing..");
-
- // check installations folder
- var root = GetRootFolder();
- if (root == null || root.Length == 0)
- {
- SetStatus("Missing root folder..");
- AddRootFolder();
- SetStatus("Ready");
- }
-
- // update settings window
- chkMinimizeToTaskbar.Checked = Properties.Settings.Default.minimizeToTaskbar;
-
- // update installations folder listbox
- lstRootFolders.Items.AddRange(Properties.Settings.Default.rootFolders.Cast().ToArray());
- // update packages folder listbox
- lstPackageFolders.Items.AddRange(Properties.Settings.Default.packageFolders.Cast().ToArray());
-
- // scan installed unitys, TODO: could cache results, at least fileinfo's
- bool foundedUnitys = ScanUnityInstallations();
- if (foundedUnitys == false)
- {
- SetStatus("Error> Did not found any Unity installations, try setting correct root folder..");
- UpdateRecentProjectsList();
- tabControl1.SelectedIndex = 2; // settings tab
- return;
- }
-
- // check if received -projectPath argument (that means, should try open the project)
- string[] args = Environment.GetCommandLineArgs();
- if (args != null && args.Length > 2)
- {
- var commandArg = args[1];
- if (commandArg == "-projectPath")
- {
- SetStatus("Launching from commandline..");
-
- var pathArg = args[2];
- // Console.WriteLine("\nPATH: " + pathArg);
- LaunchProject(pathArg);
- SetStatus("Ready");
- }
- else
- {
- // Console.WriteLine("Invalid arguments:" + args[1]);
- SetStatus("Error> Invalid arguments:" + args[1]);
- }
-
- }
-
- UpdateRecentProjectsList();
-
- // preselect grid
- gridRecent.Select();
- }
-
- ///
- /// returns true if we have exact version installed
- ///
- ///
- ///
- bool HaveExactVersionInstalled(string version)
- {
- //Console.WriteLine("checking: '" + version + "'");
- var installedExact = unityList.ContainsKey(version);
- //Console.WriteLine("have exact:" + installedExact);
- return installedExact;
- }
-
-
- // read and parse project settings file
- string GetProjectVersion(string path)
- {
- var version = "";
- if (Directory.Exists(Path.Combine(path, "ProjectSettings")))
- {
- var versionPath = Path.Combine(path, "ProjectSettings", "ProjectVersion.txt");
- if (File.Exists(versionPath) == true)
- {
- var data = File.ReadAllLines(versionPath);
-
- if (data != null && data.Length > 0)
- {
- var dd = data[0];
- // check first line
- if (dd.Contains("m_EditorVersion"))
- {
- var t = dd.Split(new string[] { "m_EditorVersion: " }, StringSplitOptions.None);
- if (t != null && t.Length > 0)
- {
- version = t[1].Trim();
- }
- else
- {
- throw new InvalidDataException("invalid version data:" + data);
- }
- }
- else
- {
- throw new InvalidDataException("Cannot find m_EditorVersion:" + dd);
- }
- }
- else
- {
- throw new InvalidDataException("invalid projectversion data:" + data.ToString());
- }
- }
- }
- return version;
- }
-
-
- void AddRootFolder()
- {
- folderBrowserDialog1.Description = "Select root folder";
- var d = folderBrowserDialog1.ShowDialog();
- var newRoot = folderBrowserDialog1.SelectedPath;
-
- if (String.IsNullOrWhiteSpace(newRoot) == false && Directory.Exists(newRoot) == true)
- {
- lstRootFolders.Items.Add(newRoot);
- Properties.Settings.Default.rootFolders.Add(newRoot);
- Properties.Settings.Default.Save();
- }
- }
-
- bool ScanUnityInstallations()
- {
- SetStatus("Scanning unity installations..");
-
- // dictionary to keep version and path
- unityList.Clear();
-
- // installed unitys list in other tab
- gridUnityList.Rows.Clear();
-
- // iterate all root folders
- foreach (string root in lstRootFolders.Items)
- {
- // var root = GetRootFolder();
- if (String.IsNullOrWhiteSpace(root) == false && Directory.Exists(root) == true)
- {
- // parse all folders here, and search for unity editor files
- var directories = Directory.GetDirectories(root);
- for (int i = 0, length = directories.Length; i < length; i++)
- {
- var uninstallExe = Path.Combine(directories[i], "Editor", "Uninstall.exe");
- if (File.Exists(uninstallExe) == true)
- {
- var unityExe = Path.Combine(directories[i], "Editor", "Unity.exe");
- if (File.Exists(uninstallExe) == true)
- {
- var unityVersion = GetUnityVersion(uninstallExe).Replace("Unity", "").Trim();
- if (unityList.ContainsKey(unityVersion) == false)
- {
- unityList.Add(unityVersion, unityExe);
- gridUnityList.Rows.Add(unityVersion, unityExe);
- }
- //Console.WriteLine(unityVersion);
- } // have unity.exe
- } // have uninstaller.exe
- } // got folders
- } // failed check
- } // all root folders
-
-
- lbl_unityCount.Text = "Founded " + unityList.Count.ToString() + " versions";
-
- SetStatus("Finished scanning");
-
- // founded any unity installations?
- return unityList.Count > 0;
- }
-
-
- private string GetUnityVersion(string path)
- {
- // todo check path
- FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(path);
- return fvi.ProductName.Replace("(64-bit)", "").Trim();
- }
-
-
- // returns already sorted list of recent entries
- void UpdateRecentProjectsList()
- {
- SetStatus("Updating recent projects list..");
-
- var hklm = RegistryKey.OpenBaseKey(RegistryHive.CurrentUser, RegistryView.Registry64);
- RegistryKey key = hklm.OpenSubKey(@"SOFTWARE\Unity Technologies\Unity Editor 5.x");
-
- //Console.WriteLine(key);
- if (key == null)
- {
- // no recent list founded
- Console.WriteLine("No recent projects list founded");
- return;
- }
-
- gridRecent.Rows.Clear();
-
- foreach (var valueName in key.GetValueNames())
- {
- if (valueName.IndexOf("RecentlyUsedProjectPaths-") == 0)
- {
- byte[] projectPathBytes = (byte[])key.GetValue(valueName);
- string projectPath = Encoding.Default.GetString(projectPathBytes, 0, projectPathBytes.Length - 1);
- string projectName = projectPath.Substring(projectPath.LastIndexOf("/") + 1);
-
- string csprojFile = Path.Combine(projectPath, projectName + ".csproj");
-
- // editor only project
- if (File.Exists(csprojFile) == false)
- {
- csprojFile = Path.Combine(projectPath, projectName + ".Editor.csproj");
- }
-
- DateTime? lastUpdated = GetLastUpdatedTime(csprojFile);
-
- string projectVersion = GetProjectVersion(projectPath);
- // TODO: could display "Today", "Yesterday", "Last week"..
-
- gridRecent.Rows.Add(projectName, projectVersion, projectPath, lastUpdated);
- //gridRecent.Rows[gridRecent.Rows.Count-1].Cells[1].Style.BackColor = HaveExactVersionInstalled(projectVersion) ?Color.Green:Color.Red;
- gridRecent.Rows[gridRecent.Rows.Count - 1].Cells[1].Style.ForeColor = HaveExactVersionInstalled(projectVersion) ? Color.Green : Color.Red;
- }
- }
-
- SetStatus("Ready");
- }
-
- DateTime? GetLastUpdatedTime(string path)
- {
- if (File.Exists(path) == true)
- {
- DateTime modification = File.GetLastWriteTime(path);
- //return modification.ToShortDateString();
- return modification;
- }
- else
- {
- return null;
- }
- }
-
- void LaunchProject(string pathArg = null)
- {
- // check if path is unity project folder
- if (Directory.Exists(pathArg) == true)
- {
- // validate folder
- if (Directory.Exists(Path.Combine(pathArg, "Assets")))
- {
- var version = GetProjectVersion(pathArg);
- Console.WriteLine("Detected project version: " + version);
-
- bool installed = HaveExactVersionInstalled(version);
- if (installed == true)
- {
- // TODO: open?
- Console.WriteLine("Opening unity version " + version);
-
- try
- {
- Process myProcess = new Process();
- var cmd = "\"" + unityList[version] + "\"";
- var pars = " -projectPath " + "\"" + pathArg + "\"";
- myProcess.StartInfo.FileName = cmd;
- myProcess.StartInfo.Arguments = pars;
- myProcess.Start();
- }
- catch (Exception ex)
- {
- Console.WriteLine(ex);
- }
-
- }
- else
- {
- var yesno = MessageBox.Show("Unity version " + version + " is not installed! Yes = Download, No = Open Webpage", "UnityLauncher", MessageBoxButtons.YesNoCancel);
-
- string url = GetUnityReleaseURL(version);
-
- // download file
- if (yesno == DialogResult.Yes)
- {
- Console.WriteLine("download unity: " + url);
- if (string.IsNullOrEmpty(url) == false)
- {
- DownloadAndRun(url);
- }
- }
-
- // open page
- if (yesno == DialogResult.No)
- {
- if (string.IsNullOrEmpty(url) == false)
- {
- Process.Start(url);
- }
- }
- }
- }
- else
- {
- SetStatus("No Assets folder founded in: " + pathArg);
- }
- }
- else // given path doesnt exists, strange
- {
- SetStatus("Invalid Path:" + pathArg);
- }
- }
-
- ///
- /// downloads unity installer and launches it
- ///
- ///
- void DownloadAndRun(string url)
- {
- ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
- using (WebClient client = new WebClient())
- {
- string html = client.DownloadString(url);
-
- string foundedURL = "";
- var allLines = html.Split('\n');
- for (int i = 0, length = allLines.Length; i < length; i++)
- {
- if (allLines[i].Contains("UnityDownloadAssistant") && allLines[i].Contains(".exe"))
- {
- var dlURL = allLines[i].Split('\"');
- if (dlURL.Length > 1)
- {
- Console.WriteLine(dlURL[1]);
- foundedURL = dlURL[1];
- break;
- }
- break;
- }
- }
-
- if (string.IsNullOrEmpty(foundedURL) == false)
- {
- // download temp file
- using (WebClient downloader = new WebClient())
- {
- var f = GetFileNameFromUrl(foundedURL);
- FileInfo fileInfo = new FileInfo(f);
- downloader.DownloadFile(foundedURL, f);
- if (File.Exists(fileInfo.FullName))
- {
- try
- {
- Process myProcess = new Process();
- myProcess.StartInfo.FileName = fileInfo.FullName;
- myProcess.Start();
- myProcess.WaitForExit();
- }
- catch (Exception ex)
- {
- Console.WriteLine(ex);
- }
-
- }
- }
- }
- else // not found
- {
- Console.WriteLine("Cannot parse exe.. opening website instead");
- Process.Start(url);
- }
- }
- }
-
- ///
- /// parse unity installer filename from url
- ///
- ///
- ///
- string GetFileNameFromUrl(string url)
- {
- var uri = new Uri(url);
- var filename = uri.Segments.Last();
- return filename;
- }
-
- ///
- /// get rootfolder from settings, default is c:\program files\
- ///
- ///
- string[] GetRootFolder()
- {
- string[] rootFolders = null;
- try
- {
- // if settings exists, use that
- rootFolders = new string[Properties.Settings.Default.rootFolders.Count];
- Properties.Settings.Default.rootFolders.CopyTo(rootFolders, 0);
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- // this doesnt work?
- Properties.Settings.Default.Reset();
- Properties.Settings.Default.Save();
- }
- return rootFolders;
- }
-
- ///
- /// launch windows explorer to selected project folder
- ///
- ///
- void LaunchExplorer(string folder)
- {
- if (Directory.Exists(folder) == true)
- {
- Process.Start(folder);
- }
- else
- {
- SetStatus("Error> Directory not found: " + folder);
- }
- }
-
- void SetStatus(string msg)
- {
- toolStripStatusLabel1.Text = msg;
- this.Refresh();
- }
-
- private void ShowForm()
- {
- this.Show();
- this.WindowState = FormWindowState.Normal;
- notifyIcon.Visible = false;
- }
-
- void LaunchSelectedProject()
- {
- var selected = gridRecent.CurrentCell.RowIndex;
- if (selected > -1)
- {
- SetStatus("Launching project..");
- LaunchProject(gridRecent.Rows[selected].Cells["_path"].Value.ToString());
- SetStatus("Ready");
- }
- }
-
- void LaunchSelectedUnity()
- {
- var selected = gridUnityList.CurrentCell.RowIndex;
- if (selected > -1)
- {
- SetStatus("Launching Unity..");
- var version = gridUnityList.Rows[selected].Cells["_unityVersion"].Value.ToString();
- try
- {
- Process myProcess = new Process();
- var cmd = "\"" + unityList[version] + "\"";
- myProcess.StartInfo.FileName = cmd;
- myProcess.Start();
- }
- catch (Exception ex)
- {
- Console.WriteLine(ex);
- }
- SetStatus("Ready");
- }
- }
-
-
- string GetUnityReleaseURL(string version)
- {
- string url = "";
- if (version.Contains("f")) // archived
- {
- version = Regex.Replace(version, @"f.", "", RegexOptions.IgnoreCase);
- url = "https://unity3d.com/unity/whats-new/unity-" + version;
- }
- if (version.Contains("p")) // patch version
- {
- url = "https://unity3d.com/unity/qa/patch-releases/" + version;
- }
- if (version.Contains("b")) // beta version
- {
- url = "https://unity3d.com/unity/beta/unity" + version;
- }
- return url;
- }
-
- void AddPackageFolder()
- {
- folderBrowserDialog1.Description = "Select package folder";
- var d = folderBrowserDialog1.ShowDialog();
- var newPackageFolder = folderBrowserDialog1.SelectedPath;
-
- if (String.IsNullOrWhiteSpace(newPackageFolder) == false && Directory.Exists(newPackageFolder) == true)
- {
- lstPackageFolders.Items.Add(newPackageFolder);
- Properties.Settings.Default.packageFolders.Add(newPackageFolder);
- Properties.Settings.Default.Save();
- }
- }
-
-
-
- #region Buttons and UI events
-
- private void chkMinimizeToTaskbar_CheckedChanged(object sender, EventArgs e)
- {
- Properties.Settings.Default.minimizeToTaskbar = chkMinimizeToTaskbar.Checked;
- Properties.Settings.Default.Save();
- }
-
- private void btnAddPackageFolder_Click(object sender, EventArgs e)
- {
- AddPackageFolder();
- }
-
- private void btnRemovePackFolder_Click(object sender, EventArgs e)
- {
- if (lstPackageFolders.SelectedIndex > -1)
- {
- lstPackageFolders.Items.RemoveAt(lstPackageFolders.SelectedIndex);
- }
- }
-
- private void btnOpenReleasePage_Click(object sender, EventArgs e)
- {
- var selected = gridUnityList.CurrentCell.RowIndex;
- if (selected > -1)
- {
- var version = gridUnityList.Rows[selected].Cells["_unityVersion"].Value.ToString();
- var url = GetUnityReleaseURL(version);
- if (string.IsNullOrEmpty(url) == false)
- {
- Process.Start(url);
- }
- }
- }
-
- private void btnLaunchUnity_Click(object sender, EventArgs e)
- {
- LaunchSelectedUnity();
- }
-
- private void btnExploreUnity_Click(object sender, EventArgs e)
- {
- var selected = gridUnityList.CurrentCell.RowIndex;
- if (selected > -1)
- {
- var unityPath = Path.GetDirectoryName(gridUnityList.Rows[selected].Cells["_unityPath"].Value.ToString());
- LaunchExplorer(unityPath);
- }
- }
-
- private void btnAddUnityFolder_Click(object sender, EventArgs e)
- {
- AddRootFolder();
- ScanUnityInstallations();
- }
-
- private void btnRemoveInstallFolder_Click(object sender, EventArgs e)
- {
- if (lstRootFolders.SelectedIndex > -1)
- {
- Properties.Settings.Default.rootFolders.Remove(lstRootFolders.Items[lstRootFolders.SelectedIndex].ToString());
- Properties.Settings.Default.Save();
- lstRootFolders.Items.RemoveAt(lstRootFolders.SelectedIndex);
- ScanUnityInstallations();
- }
- }
-
- private void unityGridView_KeyDown(object sender, KeyEventArgs e)
- {
- switch (e.KeyCode)
- {
- case Keys.Return: // launch selected unity
- e.SuppressKeyPress = true;
- LaunchSelectedUnity();
- break;
- case Keys.F5: // refresh installed unitys list
- ScanUnityInstallations();
- break;
- default:
- break;
- }
- }
-
- ///
- /// global keys
- ///
- ///
- ///
- private void Form1_KeyPress(object sender, KeyPressEventArgs e)
- {
- switch (e.KeyChar)
- {
- case '1':
- tabControl1.SelectedIndex = 0;
- break;
- case '2':
- tabControl1.SelectedIndex = 1;
- break;
- case '3':
- tabControl1.SelectedIndex = 2;
- break;
- case '4':
- tabControl1.SelectedIndex = 3;
- break;
- default:
- break;
- }
- }
-
- ///
- /// grid keys
- ///
- ///
- ///
- private void gridRecent_KeyDown(object sender, KeyEventArgs e)
- {
- //Console.WriteLine(e.KeyValue);
- switch (e.KeyCode)
- {
- case Keys.Return: // launch selected project
- e.SuppressKeyPress = true;
- LaunchSelectedProject();
- break;
- case Keys.F5: // refresh recent projects list
- UpdateRecentProjectsList();
- break;
- default:
- break;
- }
- }
-
- // set basefolder of all unity installations
- private void btn_setinstallfolder_Click(object sender, EventArgs e)
- {
- AddRootFolder();
- ScanUnityInstallations();
- UpdateRecentProjectsList();
- }
-
- private void btnLaunch_Click(object sender, EventArgs e)
- {
- LaunchSelectedProject();
- }
-
- private void Form1_Resize(object sender, EventArgs e)
- {
- if (chkMinimizeToTaskbar.Checked == true)
- {
- if (FormWindowState.Minimized == this.WindowState)
- {
- notifyIcon.Visible = true;
- this.Hide();
- }
- else if (FormWindowState.Normal == this.WindowState)
- {
- notifyIcon.Visible = false;
- }
- }
- }
-
- private void btnRefresh_Click(object sender, EventArgs e)
- {
- ScanUnityInstallations();
- }
-
- private void notifyIcon_MouseClick(object sender, MouseEventArgs e)
- {
- ShowForm();
- }
-
- private void btn_openFolder_Click(object sender, EventArgs e)
- {
- var selected = gridRecent.CurrentCell.RowIndex;
- if (selected > -1)
- {
- LaunchExplorer(gridRecent.Rows[selected].Cells["_path"].Value.ToString());
- }
- }
-
- private void btnExplorePackageFolder_Click(object sender, EventArgs e)
- {
- var selected = lstPackageFolders.SelectedIndex;
- Console.WriteLine(lstPackageFolders.Items[selected].ToString());
- if (selected > -1)
- {
- var path = lstPackageFolders.Items[selected].ToString();
- LaunchExplorer(path);
- }
- }
-
- private void btnAddAssetStoreFolder_Click(object sender, EventArgs e)
- {
- var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Unity", "Asset Store-5.x");
- if (Directory.Exists(path) == true)
- {
- if (lstPackageFolders.Items.Contains(path) == false)
- {
- lstPackageFolders.Items.Add(path);
- Properties.Settings.Default.packageFolders.Add(path);
- Properties.Settings.Default.Save();
- }
- }
- }
-
-
-
- #endregion
- }
-}
+using Microsoft.Win32;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Net;
+using System.Reflection;
+using System.Text;
+using System.Text.RegularExpressions;
+using System.Windows.Forms;
+using UnityLauncherTools;
+
+namespace UnityLauncher
+{
+ public partial class Form1 : Form
+ {
+ public static Dictionary unityList = new Dictionary();
+ const string contextRegRoot = "Software\\Classes\\Directory\\Background\\shell";
+ const string launcherArgumentsFile = "LauncherArguments.txt";
+ const string githubReleasesLinkURL = "https://github.com/unitycoder/UnityLauncher/releases";
+
+ bool isDownloadingUnityList = false;
+ string previousGitRelease = "0";
+
+
+ public Form1()
+ {
+ InitializeComponent();
+ }
+
+ private void Form1_Load(object sender, EventArgs e)
+ {
+ Start();
+ }
+
+
+
+ void Start()
+ {
+ SetStatus("Initializing ...");
+ // check installations folder
+ var root = GetUnityInstallationsRootFolder();
+ if (root == null || root.Length == 0)
+ {
+ SetStatus("Missing root folder ...");
+ AddUnityInstallationRootFolder();
+ SetStatus("Ready");
+ }
+
+ LoadSettings();
+
+ // scan installed unitys
+ bool foundUnitys = ScanUnityInstallations();
+ if (foundUnitys == false)
+ {
+ SetStatus("Error> Did not find any Unity installations, try setting correct root folder ...");
+ UpdateRecentProjectsList();
+ tabControl1.SelectedIndex = tabControl1.TabCount - 1; // last tab is settings
+ return;
+ }
+
+
+
+ // check if received -projectPath argument (that means opening from explorer / cmdline)
+ string[] args = Environment.GetCommandLineArgs();
+ if (args != null && args.Length > 2)
+ {
+ // first argument needs to be -projectPath
+ var commandLineArgs = args[1];
+ if (commandLineArgs == "-projectPath")
+ {
+ SetStatus("Launching from commandline ...");
+
+ // path
+ var projectPathArgument = args[2];
+
+ // resolve full path if path parameter isn't a rooted path
+ if (!Path.IsPathRooted(projectPathArgument))
+ {
+ projectPathArgument = Directory.GetCurrentDirectory() + projectPathArgument;
+ }
+
+ var version = Tools.GetProjectVersion(projectPathArgument);
+
+ // take extra arguments also
+ var commandLineArguments = "";
+ for (int i = 3, len = args.Length; i < len; i++)
+ {
+ commandLineArguments += " " + args[i];
+ }
+
+ // check if force-update button is down
+ if ((Control.ModifierKeys & Keys.Shift) != 0)
+ {
+ DisplayUpgradeDialog(version, projectPathArgument, launchProject: true, commandLineArguments: commandLineArguments);
+ }
+ else
+ {
+ // try launching it
+ LaunchProject(projectPathArgument, version, openProject: true, commandLineArguments: commandLineArguments);
+ }
+
+
+ // quit after launch if enabled in settings
+ if (Properties.Settings.Default.closeAfterExplorer == true)
+ {
+ Application.Exit();
+ }
+
+ //SetStatus("Ready");
+ }
+ else
+ {
+ SetStatus("Error> Invalid arguments:" + args[1]);
+ }
+ }
+
+ UpdateRecentProjectsList();
+
+ // preselect grid
+ gridRecent.Select();
+
+ // get previous version build info string
+ // this string is release tag for latest release when this app was compiled
+ using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("UnityLauncher." + "PreviousVersion.txt"))
+ using (StreamReader reader = new StreamReader(stream))
+ {
+ previousGitRelease = reader.ReadToEnd().Trim();
+ }
+ }
+
+ void LoadSettings()
+ {
+ // form size
+ this.Width = Properties.Settings.Default.formWidth;
+ this.Height = Properties.Settings.Default.formHeight;
+
+ // update settings window
+ chkMinimizeToTaskbar.Checked = Properties.Settings.Default.minimizeToTaskbar;
+ chkQuitAfterCommandline.Checked = Properties.Settings.Default.closeAfterExplorer;
+ ChkQuitAfterOpen.Checked = Properties.Settings.Default.closeAfterProject;
+ chkShowLauncherArgumentsColumn.Checked = Properties.Settings.Default.showArgumentsColumn;
+ chkShowGitBranchColumn.Checked = Properties.Settings.Default.showGitBranchColumn;
+ chkDarkSkin.Checked = Properties.Settings.Default.useDarkSkin;
+
+ // update optional grid columns, hidden or visible
+ gridRecent.Columns["_launchArguments"].Visible = chkShowLauncherArgumentsColumn.Checked;
+ gridRecent.Columns["_gitBranch"].Visible = chkShowGitBranchColumn.Checked;
+
+ // update installations folder listbox
+ lstRootFolders.Items.Clear();
+ lstRootFolders.Items.AddRange(Properties.Settings.Default.rootFolders.Cast().ToArray());
+ // update packages folder listbox
+ lstPackageFolders.Items.AddRange(Properties.Settings.Default.packageFolders.Cast().ToArray());
+
+ // restore data grid view widths
+ int[] gridColumnWidths = Properties.Settings.Default.gridColumnWidths;
+ if (gridColumnWidths != null)
+ {
+
+ for (int i = 0; i < gridColumnWidths.Length; ++i)
+ {
+ gridRecent.Columns[i].Width = gridColumnWidths[i];
+ }
+ }
+
+ // TODO assign colors for dark theme
+ if (chkDarkSkin.Checked == true)
+ {
+ var darkBg = Color.FromArgb(32, 37, 41);
+ var darkRaised = Color.FromArgb(50, 56, 61);
+ var darkBright = Color.FromArgb(161, 180, 196);
+
+
+ this.BackColor = darkBg;
+ tabProjects.BackColor = darkRaised;
+ gridRecent.BackgroundColor = darkRaised;
+
+ gridRecent.GridColor = darkBg;
+ var dgs = new DataGridViewCellStyle();
+ dgs.BackColor = darkRaised;
+ dgs.ForeColor = darkBright;
+ gridRecent.DefaultCellStyle = dgs;
+
+ statusStrip1.BackColor = darkRaised;
+ }
+ }
+
+ ///
+ /// returns true if we have exact version installed
+ ///
+ ///
+ ///
+ bool HaveExactVersionInstalled(string version)
+ {
+ return string.IsNullOrEmpty(version) == false && unityList.ContainsKey(version);
+ }
+
+
+ void AddUnityInstallationRootFolder()
+ {
+ folderBrowserDialog1.Description = "Select Unity installations root folder";
+ var d = folderBrowserDialog1.ShowDialog();
+ var newRoot = folderBrowserDialog1.SelectedPath;
+
+ if (String.IsNullOrWhiteSpace(newRoot) == false && Directory.Exists(newRoot) == true)
+ {
+ lstRootFolders.Items.Add(newRoot);
+ Properties.Settings.Default.rootFolders.Add(newRoot);
+ Properties.Settings.Default.Save();
+ }
+ }
+
+ bool ScanUnityInstallations()
+ {
+ SetStatus("Scanning Unity installations ...");
+
+ // dictionary to keep version and path
+ unityList.Clear();
+
+ // installed unitys list in other tab
+ gridUnityList.Rows.Clear();
+
+ // iterate all root folders
+ foreach (string root in lstRootFolders.Items)
+ {
+ if (String.IsNullOrWhiteSpace(root) == false && Directory.Exists(root) == true)
+ {
+ // parse all folders here, and search for unity editor files
+ var directories = Directory.GetDirectories(root);
+ for (int i = 0, length = directories.Length; i < length; i++)
+ {
+ var uninstallExe = Path.Combine(directories[i], "Editor", "Uninstall.exe");
+ if (File.Exists(uninstallExe) == true)
+ {
+ var unityExe = Path.Combine(directories[i], "Editor", "Unity.exe");
+ if (File.Exists(unityExe) == true)
+ {
+ // get full version number from uninstaller
+ var unityVersion = Tools.GetFileVersionData(uninstallExe).Replace("Unity", "").Trim();
+ if (unityList.ContainsKey(unityVersion) == false)
+ {
+ unityList.Add(unityVersion, unityExe);
+ var dataFolder = Path.Combine(directories[i], "Editor", "Data");
+ DateTime? installDate = Tools.GetLastModifiedTime(dataFolder);
+ // TODO add platforms: PC|iOS|tvOS|Android|UWP|WebGL|Facebook|XBox|PSVita|PS4
+ gridUnityList.Rows.Add(unityVersion, unityExe, installDate);
+ }
+ } // have unity.exe
+ } // have uninstaller.exe
+ else // no uninstaller, probably preview builds
+ {
+ var unityExe = Path.Combine(directories[i], "Editor", "Unity.exe");
+ if (File.Exists(unityExe) == true)
+ {
+ // get full version number from uninstaller
+ var unityVersion = Tools.GetFileVersionData(unityExe).Replace("Unity", "").Trim();
+ if (unityList.ContainsKey(unityVersion) == false)
+ {
+ unityList.Add(unityVersion, unityExe);
+ var dataFolder = Path.Combine(directories[i], "Editor", "Data");
+ DateTime? installDate = Tools.GetLastModifiedTime(dataFolder);
+ // TODO add platforms: PC|iOS|tvOS|Android|UWP|WebGL|Facebook|XBox|PSVita|PS4
+ gridUnityList.Rows.Add(unityVersion, unityExe, installDate);
+ }
+ } // have unity.exe
+ }
+ } // got folders
+ } // failed check
+ } // all root folders
+
+ lbl_unityCount.Text = "Found " + unityList.Count.ToString() + " versions";
+
+ SetStatus("Finished scanning");
+
+ // found any Unity installations?
+ return unityList.Count > 0;
+ }
+
+
+ void FilterRecentProject(object sender, EventArgs e)
+ {
+ SetStatus("Filtering recent projects list ...");
+ string searchString = tbSearchBar.Text;
+
+ foreach (DataGridViewRow row in gridRecent.Rows)
+ {
+ if (row.Cells["_project"].Value.ToString().IndexOf(searchString, StringComparison.OrdinalIgnoreCase) > -1)
+ {
+ row.Visible = true;
+ }
+ else
+ {
+ row.Visible = false;
+ }
+ }
+
+ lblClearSearchField.Visible = tbSearchBar.Text.Length > 0;
+
+ }
+
+ void FilterUnityUpdates(object sender, EventArgs e)
+ {
+ SetStatus("Filtering Unity updates list ...");
+ string searchString = tbSearchUpdates.Text;
+ foreach (DataGridViewRow row in gridUnityUpdates.Rows)
+ {
+ if (row.Cells["_UnityUpdateVersion"].Value.ToString().IndexOf(searchString, StringComparison.OrdinalIgnoreCase) > -1)
+ {
+ row.Visible = true;
+ }
+ else
+ {
+ row.Visible = false;
+ }
+ }
+ }
+
+ ///
+ /// scans registry for recent projects and adds to project grid list
+ ///
+ void UpdateRecentProjectsList()
+ {
+ SetStatus("Updating recent projects list ...");
+
+ gridRecent.Rows.Clear();
+
+ var hklm = RegistryKey.OpenBaseKey(RegistryHive.CurrentUser, RegistryView.Registry64);
+ string[] registryPathsToCheck = new string[] { @"SOFTWARE\Unity Technologies\Unity Editor 5.x", @"SOFTWARE\Unity Technologies\Unity Editor 4.x" };
+
+ // check each version path
+ for (int i = 0, len = registryPathsToCheck.Length; i < len; i++)
+ {
+ RegistryKey key = hklm.OpenSubKey(registryPathsToCheck[i]);
+
+ if (key == null)
+ {
+ continue;
+ }
+ else
+ {
+ //Console.WriteLine("Null registry key at " + registryPathsToCheck[i]);
+ }
+
+ // parse recent project path
+ foreach (var valueName in key.GetValueNames())
+ {
+ if (valueName.IndexOf("RecentlyUsedProjectPaths-") == 0)
+ {
+ string projectPath = "";
+ // check if binary or not
+ var valueKind = key.GetValueKind(valueName);
+ if (valueKind == RegistryValueKind.Binary)
+ {
+ byte[] projectPathBytes = (byte[])key.GetValue(valueName);
+ projectPath = Encoding.UTF8.GetString(projectPathBytes, 0, projectPathBytes.Length - 1);
+ }
+ else // should be string then
+ {
+ projectPath = (string)key.GetValue(valueName);
+ }
+
+ // first check if whole folder exists, if not, skip
+ if (Directory.Exists(projectPath) == false)
+ {
+ //Console.WriteLine("Recent project directory not found, skipping: " + projectPath);
+ continue;
+ }
+
+ string projectName = "";
+
+ // get project name from full path
+ if (projectPath.IndexOf(Path.DirectorySeparatorChar) > -1)
+ {
+ projectName = projectPath.Substring(projectPath.LastIndexOf(Path.DirectorySeparatorChar) + 1);
+ }
+ else if (projectPath.IndexOf(Path.AltDirectorySeparatorChar) > -1)
+ {
+ projectName = projectPath.Substring(projectPath.LastIndexOf(Path.AltDirectorySeparatorChar) + 1);
+ }
+ else // no path separator found
+ {
+ projectName = projectPath;
+ }
+
+ string csprojFile = Path.Combine(projectPath, projectName + ".csproj");
+
+ // solution only
+ if (File.Exists(csprojFile) == false)
+ {
+ csprojFile = Path.Combine(projectPath, projectName + ".sln");
+ }
+
+ // editor only project
+ if (File.Exists(csprojFile) == false)
+ {
+ csprojFile = Path.Combine(projectPath, projectName + ".Editor.csproj");
+ }
+
+ // maybe 4.x project
+ if (File.Exists(csprojFile) == false)
+ {
+ csprojFile = Path.Combine(projectPath, "Assembly-CSharp.csproj");
+ }
+
+ // get last modified date
+ DateTime? lastUpdated = Tools.GetLastModifiedTime(csprojFile);
+
+ // get project version
+ string projectVersion = Tools.GetProjectVersion(projectPath);
+
+ // get custom launch arguments, only if column in enabled
+ string customArgs = "";
+ if (chkShowLauncherArgumentsColumn.Checked == true)
+ {
+ customArgs = Tools.ReadCustomLaunchArguments(projectPath, launcherArgumentsFile);
+ }
+
+ // get git branchinfo, only if column in enabled
+ string gitBranch = "";
+ if (chkShowGitBranchColumn.Checked == true)
+ {
+ gitBranch = Tools.ReadGitBranchInfo(projectPath);
+ }
+
+ gridRecent.Rows.Add(projectName, projectVersion, projectPath, lastUpdated, customArgs, gitBranch);
+ gridRecent.Rows[gridRecent.Rows.Count - 1].Cells[1].Style.ForeColor = HaveExactVersionInstalled(projectVersion) ? Color.Green : Color.Red;
+ }
+ }
+ }
+ //SetStatus("Ready");
+ }
+
+ void LaunchProject(string projectPath, string version, bool openProject = true, string commandLineArguments = "")
+ {
+ if (Directory.Exists(projectPath) == true)
+ {
+ // no assets path, probably we want to create new project then
+ var assetsFolder = Path.Combine(projectPath, "Assets");
+ if (Directory.Exists(assetsFolder) == false)
+ {
+ // TODO could ask if want to create project..
+ Directory.CreateDirectory(assetsFolder);
+ }
+
+ // when opening project, check for crashed backup scene first
+ if (openProject == true)
+ {
+ var cancelLaunch = CheckCrashBackupScene(projectPath);
+ if (cancelLaunch == true)
+ {
+ return;
+ }
+ }
+
+ if (HaveExactVersionInstalled(version) == true)
+ {
+ if (openProject == true)
+ {
+ SetStatus("Launching project in Unity " + version);
+ }
+ else
+ {
+ SetStatus("Launching Unity " + version);
+ }
+
+ try
+ {
+ Process myProcess = new Process();
+ var cmd = "\"" + unityList[version] + "\"";
+ myProcess.StartInfo.FileName = cmd;
+ if (openProject == true)
+ {
+ var pars = " -projectPath " + "\"" + projectPath + "\"";
+
+ // check for custom launch parameters and append them
+ string customArguments = GetSelectedRowData("_launchArguments");
+ if (string.IsNullOrEmpty(customArguments) == false)
+ {
+ pars += " " + customArguments;
+ }
+
+ myProcess.StartInfo.Arguments = pars + commandLineArguments;
+ }
+ myProcess.Start();
+
+ if (Properties.Settings.Default.closeAfterProject)
+ {
+ Environment.Exit(0);
+ }
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine(ex);
+ }
+ }
+ else // we dont have this version installed (or no version info available)
+ {
+ SetStatus("Missing Unity version: " + version);
+ // if only running only, stop here
+ if (openProject == true) DisplayUpgradeDialog(version, projectPath);
+ }
+ }
+ else // given path doesnt exists, strange
+ {
+ SetStatus("Invalid path: " + projectPath);
+ }
+ }
+
+ bool CheckCrashBackupScene(string projectPath)
+ {
+ var cancelRunningUnity = false;
+ var recoveryFile = Path.Combine(projectPath, "Temp", "__Backupscenes", "0.backup");
+ if (File.Exists(recoveryFile))
+ {
+ DialogResult dialogResult = MessageBox.Show("Crash recovery scene found, do you want to copy it into Assets/_Recovery/-folder?", "UnityLauncher - Scene Recovery", MessageBoxButtons.YesNoCancel);
+ if (dialogResult == DialogResult.Yes) // restore
+ {
+ var restoreFolder = Path.Combine(projectPath, "Assets", "_Recovery");
+ if (Directory.Exists(restoreFolder) == false)
+ {
+ Directory.CreateDirectory(restoreFolder);
+ }
+ if (Directory.Exists(restoreFolder) == true)
+ {
+ Int32 unixTimestamp = (Int32)(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1))).TotalSeconds;
+ var uniqueFileName = "Recovered_Scene" + unixTimestamp + ".unity";
+ File.Copy(recoveryFile, Path.Combine(restoreFolder, uniqueFileName));
+ SetStatus("Recovered crashed scene into: " + restoreFolder);
+ }
+ else
+ {
+ SetStatus("Error: Failed to create restore folder: " + restoreFolder);
+ cancelRunningUnity = true;
+ }
+ }
+ else if (dialogResult == DialogResult.Cancel) // dont do restore, but run Unity
+ {
+ cancelRunningUnity = true;
+ }
+ }
+ return cancelRunningUnity;
+ }
+
+ // parse Unity installer exe from release page
+ // thanks to https://github.com/softfruit
+ string ParseDownloadURLFromWebpage(string version)
+ {
+ string url = "";
+
+ using (WebClient client = new WebClient())
+ {
+ // get correct page url
+ string website = "https://unity3d.com/get-unity/download/archive";
+ if (Tools.VersionIsPatch(version)) website = "https://unity3d.com/unity/qa/patch-releases";
+ if (Tools.VersionIsBeta(version)) website = "https://unity3d.com/unity/beta/" + version;
+ if (Tools.VersionIsAlpha(version)) website = "https://unity3d.com/unity/alpha/" + version;
+
+ // download html
+ string sourceHTML = client.DownloadString(website);
+ string[] lines = sourceHTML.Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.None);
+
+ // patch version download assistant finder
+ if (Tools.VersionIsPatch(version))
+ {
+ for (int i = 0; i < lines.Length; i++)
+ {
+ if (lines[i].Contains("UnityDownloadAssistant-" + version + ".exe"))
+ {
+ int start = lines[i].IndexOf('"') + 1;
+ int end = lines[i].IndexOf('"', start);
+ url = lines[i].Substring(start, end - start);
+ break;
+ }
+ }
+ }
+ else if (Tools.VersionIsArchived(version))
+ {
+ // archived version download assistant finder
+ for (int i = 0; i < lines.Length; i++)
+ {
+ // find line where full installer is (from archive page)
+ if (lines[i].Contains("UnitySetup64-" + version))
+ {
+ // take previous line, which contains download assistant url
+ string line = lines[i - 1];
+ int start = line.IndexOf('"') + 1;
+ int end = line.IndexOf('"', start);
+ url = @"https://unity3d.com" + line.Substring(start, end - start);
+ break;
+ }
+ }
+ }
+ else // alpha or beta version download assistant finder
+ {
+ for (int i = 0; i < lines.Length; i++)
+ {
+ if (lines[i].Contains("UnityDownloadAssistant.exe"))
+ {
+ int start = lines[i].IndexOf('"') + 1;
+ int end = lines[i].IndexOf('"', start);
+ url = lines[i].Substring(start, end - start) + "#version=" + version;
+ break;
+ }
+ }
+ }
+ }
+
+ // didnt find installer
+ if (string.IsNullOrEmpty(url))
+ {
+ SetStatus("Cannot find UnityDownloadAssistant.exe for this version.");
+ }
+
+ return url;
+ }
+
+ ///
+ /// launches browser to download installer
+ ///
+ /// full url to installer
+ void DownloadInBrowser(string url, string version)
+ {
+ string exeURL = ParseDownloadURLFromWebpage(version);
+
+ if (string.IsNullOrEmpty(exeURL) == false)
+ {
+ SetStatus("Download installer in browser: " + exeURL);
+ Process.Start(exeURL);
+ }
+ else // not found
+ {
+ SetStatus("Error> Cannot find installer executable ... opening website instead");
+ url = "https://unity3d.com/get-unity/download/archive";
+ Process.Start(url + "#installer-not-found---version-" + version);
+ }
+ }
+
+ ///
+ /// get rootfolder from settings, default is c:\program files\
+ ///
+ ///
+ string[] GetUnityInstallationsRootFolder()
+ {
+ string[] rootFolders = null;
+ try
+ {
+ // if settings exists, use that value
+ rootFolders = new string[Properties.Settings.Default.rootFolders.Count];
+ Properties.Settings.Default.rootFolders.CopyTo(rootFolders, 0);
+ }
+ catch (Exception e)
+ {
+ MessageBox.Show("Rare error while checking Unity installation folder settings: " + e.Message, "UnityLauncher", MessageBoxButtons.OK);
+
+ // this doesnt work?
+ Properties.Settings.Default.Reset();
+ Properties.Settings.Default.Save();
+ }
+ return rootFolders;
+ }
+
+ void SetStatus(string msg)
+ {
+ toolStripStatusLabel1.Text = msg;
+ this.Refresh();
+ }
+
+ private void ShowForm()
+ {
+ this.WindowState = FormWindowState.Minimized;
+ this.Show();
+ this.WindowState = FormWindowState.Normal;
+ notifyIcon.Visible = false;
+ }
+
+ void LaunchSelectedProject(bool openProject = true)
+ {
+ FixSelectedRow();
+ var selected = gridRecent?.CurrentCell?.RowIndex;
+
+ if (selected.HasValue && selected > -1)
+ {
+ var projectPath = gridRecent.Rows[(int)selected].Cells["_path"].Value.ToString();
+ var version = Tools.GetProjectVersion(projectPath);
+ Console.WriteLine("version: '" + version + "'");
+ LaunchProject(projectPath, version, openProject);
+ //SetStatus("Ready");
+ }
+ }
+
+ void LaunchSelectedUnity()
+ {
+
+ var selected = gridUnityList?.CurrentCell?.RowIndex;
+ if (selected.HasValue && selected > -1)
+ {
+ var version = gridUnityList.Rows[(int)selected].Cells["_unityVersion"].Value.ToString();
+ SetStatus("Launching Unity: " + version);
+ try
+ {
+ Process myProcess = new Process();
+ var cmd = "\"" + unityList[version] + "\"";
+ myProcess.StartInfo.FileName = cmd;
+ myProcess.Start();
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine(ex);
+ }
+ //SetStatus("Ready");
+ }
+ }
+
+ void AddPackageFolder()
+ {
+ folderBrowserDialog1.Description = "Select package folder";
+ var d = folderBrowserDialog1.ShowDialog();
+ var newPackageFolder = folderBrowserDialog1.SelectedPath;
+
+ if (String.IsNullOrWhiteSpace(newPackageFolder) == false && Directory.Exists(newPackageFolder) == true)
+ {
+ lstPackageFolders.Items.Add(newPackageFolder);
+ Properties.Settings.Default.packageFolders.Add(newPackageFolder);
+ Properties.Settings.Default.Save();
+ }
+ }
+
+
+ #region Buttons and UI events
+
+ private void btnRemoveRegister_Click(object sender, EventArgs e)
+ {
+ Tools.RemoveContextMenuRegistry(contextRegRoot);
+ }
+
+ private void chkMinimizeToTaskbar_CheckedChanged(object sender, EventArgs e)
+ {
+ Properties.Settings.Default.minimizeToTaskbar = chkMinimizeToTaskbar.Checked;
+ Properties.Settings.Default.Save();
+ }
+
+
+
+ private void btnAddPackageFolder_Click(object sender, EventArgs e)
+ {
+ AddPackageFolder();
+ }
+
+ private void btnRemovePackFolder_Click(object sender, EventArgs e)
+ {
+ if (lstPackageFolders.SelectedIndex > -1)
+ {
+ lstPackageFolders.Items.RemoveAt(lstPackageFolders.SelectedIndex);
+ }
+ }
+
+ private void btnOpenReleasePage_Click(object sender, EventArgs e)
+ {
+ var selected = gridUnityList?.CurrentCell?.RowIndex;
+ if (selected.HasValue && selected > -1)
+ {
+ var version = gridUnityList.Rows[(int)selected].Cells["_unityVersion"].Value.ToString();
+ if (Tools.OpenReleaseNotes(version) == true)
+ {
+ SetStatus("Opening release notes for version " + version);
+ }
+ else
+ {
+ SetStatus("Failed opening Release Notes URL for version " + version);
+ }
+ }
+ }
+
+ private void btnLaunchUnity_Click(object sender, EventArgs e)
+ {
+ LaunchSelectedUnity();
+ }
+
+ private void btnExploreUnity_Click(object sender, EventArgs e)
+ {
+
+ var selected = gridUnityList?.CurrentCell?.RowIndex;
+ if (selected.HasValue && selected > -1)
+ {
+ var unityPath = Path.GetDirectoryName(gridUnityList.Rows[(int)selected].Cells["_unityPath"].Value.ToString());
+ if (Tools.LaunchExplorer(unityPath) == false)
+ {
+ SetStatus("Error> Directory not found: " + unityPath);
+ }
+ }
+ }
+
+ private void btnAddUnityFolder_Click(object sender, EventArgs e)
+ {
+ AddUnityInstallationRootFolder();
+ ScanUnityInstallations();
+ UpdateRecentProjectsList();
+ }
+
+ private void btnRemoveInstallFolder_Click(object sender, EventArgs e)
+ {
+ if (lstRootFolders.SelectedIndex > -1)
+ {
+ Properties.Settings.Default.rootFolders.Remove(lstRootFolders.Items[lstRootFolders.SelectedIndex].ToString());
+ Properties.Settings.Default.Save();
+ lstRootFolders.Items.RemoveAt(lstRootFolders.SelectedIndex);
+ ScanUnityInstallations();
+ }
+ }
+
+ private void btnFetchUnityVersions_Click(object sender, EventArgs e)
+ {
+ FetchListOfUnityUpdates();
+ }
+
+ int lastKnownSelectedRow = -1;
+ private void unityGridView_KeyDown(object sender, KeyEventArgs e)
+ {
+ switch (e.KeyCode)
+ {
+ case Keys.Return: // launch selected Unity
+ e.SuppressKeyPress = true;
+ LaunchSelectedUnity();
+ break;
+ case Keys.F5: // refresh installed Unity versions list
+ ScanUnityInstallations();
+ UpdateRecentProjectsList();
+ break;
+ default:
+ break;
+ }
+ }
+
+ ///
+ /// global keys
+ ///
+ ///
+ ///
+ private void Form1_KeyPress(object sender, KeyPressEventArgs e)
+ {
+ // if editing cells, dont focus on search
+ if (gridRecent.IsCurrentCellInEditMode == true) return;
+
+ switch ((int)e.KeyChar)
+ {
+ case 27: // ESCAPE - clear search
+ if (tabControl1.SelectedIndex == 0 && tbSearchBar.Text != "")
+ {
+ tbSearchBar.Text = "";
+ lblClearSearchField.Visible = false;
+ }
+ else if (tabControl1.SelectedIndex == 3 && tbSearchUpdates.Text != "")
+ {
+ tbSearchUpdates.Text = "";
+ }
+ break;
+ default: // any key
+ // activate searchbar if not active and we are in tab#1
+ if (tabControl1.SelectedIndex == 0 && tbSearchBar.Focused == false)
+ {
+ // skip tab key on search field
+ if ((int)e.KeyChar == 9)
+ {
+ break;
+ }
+ tbSearchBar.Focus();
+ tbSearchBar.Text += e.KeyChar;
+ tbSearchBar.Select(tbSearchBar.Text.Length, 0);
+ lblClearSearchField.Visible = tbSearchBar.Text.Length > 0;
+ }
+ break;
+ }
+ }
+
+ ///
+ /// grid keys
+ ///
+ ///
+ ///
+ private void gridRecent_KeyDown(object sender, KeyEventArgs e)
+ {
+ // if editing cells, dont search or launch
+ if (gridRecent.IsCurrentCellInEditMode == true) return;
+
+ switch (e.KeyCode)
+ {
+ case Keys.Return: // launch selected project
+ e.SuppressKeyPress = true;
+ LaunchSelectedProject();
+ break;
+ case Keys.F5: // refresh recent projects list
+ lastKnownSelectedRow = GetSelectedRowIndex();
+ Console.WriteLine(lastKnownSelectedRow);
+ UpdateRecentProjectsList();
+ SetSelectedRowIndex(lastKnownSelectedRow);
+ break;
+ default:
+ break;
+ }
+ }
+
+ //Checks if you are doubleclicking the current cell
+ private void GridRecent_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
+ {
+ if (e.Button == MouseButtons.Left && e.RowIndex == gridRecent.CurrentCell.RowIndex)
+ {
+ LaunchSelectedProject();
+ }
+ }
+
+ // set basefolder of all Unity installations
+ private void btn_setinstallfolder_Click(object sender, EventArgs e)
+ {
+ AddUnityInstallationRootFolder();
+ ScanUnityInstallations();
+ UpdateRecentProjectsList();
+ }
+
+ private void btnLaunch_Click(object sender, EventArgs e)
+ {
+ LaunchSelectedProject();
+ }
+
+ private void Form1_Resize(object sender, EventArgs e)
+ {
+ if (chkMinimizeToTaskbar.Checked == true)
+ {
+ if (FormWindowState.Minimized == this.WindowState)
+ {
+ notifyIcon.Visible = true;
+ this.Hide();
+ }
+ else if (FormWindowState.Normal == this.WindowState)
+ {
+ notifyIcon.Visible = false;
+ }
+ }
+ }
+
+ private void btnRefresh_Click(object sender, EventArgs e)
+ {
+ ScanUnityInstallations();
+ UpdateRecentProjectsList();
+ }
+
+ private void notifyIcon_MouseClick(object sender, MouseEventArgs e)
+ {
+ ShowForm();
+ }
+
+ private void btn_openFolder_Click(object sender, EventArgs e)
+ {
+ FixSelectedRow();
+ var selected = gridRecent?.CurrentCell?.RowIndex;
+ if (selected.HasValue && selected > -1)
+ {
+ string folder = gridRecent.Rows[(int)selected].Cells["_path"].Value.ToString();
+ if (Tools.LaunchExplorer(folder) == false)
+ {
+ SetStatus("Error> Directory not found: " + folder);
+ }
+ }
+ }
+
+ private void btnExplorePackageFolder_Click(object sender, EventArgs e)
+ {
+ var selected = lstPackageFolders.SelectedIndex;
+ //Console.WriteLine(lstPackageFolders.Items[selected].ToString());
+ if (selected > -1)
+ {
+ string folder = lstPackageFolders.Items[selected].ToString();
+ if (Tools.LaunchExplorer(folder) == false)
+ {
+ SetStatus("Error> Directory not found: " + folder);
+ }
+ }
+ }
+
+ private void btnAddAssetStoreFolder_Click(object sender, EventArgs e)
+ {
+ var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Unity", "Asset Store-5.x");
+ if (Directory.Exists(path) == true)
+ {
+ if (lstPackageFolders.Items.Contains(path) == false)
+ {
+ lstPackageFolders.Items.Add(path);
+ Properties.Settings.Default.packageFolders.Add(path);
+ Properties.Settings.Default.Save();
+ }
+ }
+ }
+
+ private void btnAddRegister_Click(object sender, EventArgs e)
+ {
+ Tools.AddContextMenuRegistry(contextRegRoot);
+ }
+
+ private void ChkQuitAfterOpen_CheckedChanged(object sender, EventArgs e)
+ {
+ Properties.Settings.Default.closeAfterProject = ChkQuitAfterOpen.Checked;
+ Properties.Settings.Default.Save();
+ }
+
+ private void chkQuitAfterCommandline_CheckedChanged(object sender, EventArgs e)
+ {
+ Properties.Settings.Default.closeAfterExplorer = chkQuitAfterCommandline.Checked;
+ Properties.Settings.Default.Save();
+ }
+
+ private void chkDarkSkin_CheckedChanged(object sender, EventArgs e)
+ {
+ Properties.Settings.Default.useDarkSkin = chkDarkSkin.Checked;
+ Properties.Settings.Default.Save();
+ }
+
+ private void btnRunUnityOnly_Click(object sender, EventArgs e)
+ {
+ LaunchSelectedProject(openProject: false);
+ }
+
+ private void btnUpgradeProject_Click(object sender, EventArgs e)
+ {
+ UpgradeProject();
+ }
+
+ private void btnOpenLogFolder_Click(object sender, EventArgs e)
+ {
+ var logfolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Unity", "Editor");
+ if (Directory.Exists(logfolder) == true)
+ {
+ if (Tools.LaunchExplorer(logfolder) == false)
+ {
+ SetStatus("Error> Directory not found: " + logfolder);
+ }
+ }
+ }
+
+ private void btnOpenUpdateWebsite_Click(object sender, EventArgs e)
+ {
+ FixSelectedRow();
+ var selected = gridUnityUpdates?.CurrentCell?.RowIndex;
+ if (selected.HasValue && selected > -1)
+ {
+ var version = gridUnityUpdates.Rows[(int)selected].Cells["_UnityUpdateVersion"].Value.ToString();
+ Tools.OpenReleaseNotes(version);
+ }
+ }
+
+ private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ // if enter Updates tab, then automatically fetch list of Unity versions if list is empty (not fetched)
+ if (((TabControl)sender).SelectedIndex == 3) // FIXME: fixed index 3 for this tab..
+ {
+ if (gridUnityUpdates.Rows.Count == 0)
+ {
+ FetchListOfUnityUpdates();
+ }
+ }
+ }
+
+ private void Form1_ResizeEnd(object sender, EventArgs e)
+ {
+ var form = (Form)sender;
+ Properties.Settings.Default.formWidth = form.Size.Width;
+ Properties.Settings.Default.formHeight = form.Size.Height;
+ Properties.Settings.Default.Save();
+ }
+
+ private void checkShowLauncherArgumentsColumn_CheckedChanged(object sender, EventArgs e)
+ {
+ Properties.Settings.Default.showArgumentsColumn = chkShowLauncherArgumentsColumn.Checked;
+ Properties.Settings.Default.Save();
+ gridRecent.Columns["_launchArguments"].Visible = chkShowLauncherArgumentsColumn.Checked;
+ // reload list data, if enabled (otherwise missing data)
+ if (chkShowLauncherArgumentsColumn.Checked == true) UpdateRecentProjectsList();
+ }
+
+ private void checkShowGitBranchColumn_CheckedChanged(object sender, EventArgs e)
+ {
+ Properties.Settings.Default.showGitBranchColumn = chkShowGitBranchColumn.Checked;
+ Properties.Settings.Default.Save();
+ gridRecent.Columns["_gitBranch"].Visible = chkShowGitBranchColumn.Checked;
+ // reload list data, if enabled (otherwise missing data)
+ if (chkShowGitBranchColumn.Checked == true) UpdateRecentProjectsList();
+ }
+
+
+ private void linkArgumentsDocs_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
+ {
+ Tools.OpenURL("https://docs.unity3d.com/Manual/CommandLineArguments.html");
+ }
+
+ private void linkProjectGithub_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
+ {
+ Tools.OpenURL("https://github.com/unitycoder/UnityLauncher/releases");
+ }
+
+
+ // after editing launch arguments cell
+ private void gridRecent_CellEndEdit(object sender, DataGridViewCellEventArgs e)
+ {
+ string path = GetSelectedRowData("_path");
+ if (string.IsNullOrEmpty(path)) return;
+
+ string arguments = GetSelectedRowData("_launchArguments");
+
+ // check folder first
+ string outputFolder = Path.Combine(path, "ProjectSettings");
+ if (Directory.Exists(outputFolder) == false)
+ {
+ Directory.CreateDirectory(outputFolder);
+ }
+
+ // save arguments to projectsettings folder
+ string outputFile = Path.Combine(path, "ProjectSettings", launcherArgumentsFile);
+
+ try
+ {
+ StreamWriter sw = new StreamWriter(outputFile);
+ sw.WriteLine(arguments);
+ sw.Close();
+ }
+ catch (Exception exception)
+ {
+ SetStatus("File error: " + exception.Message);
+ }
+
+ // select the same row again (dont move to next), doesnt work here
+ // var previousRow = gridRecent.CurrentCell.RowIndex;
+ // gridRecent.Rows[previousRow].Selected = true;
+ }
+
+ private void btnCheckUpdates_Click(object sender, EventArgs e)
+ {
+ Tools.OpenURL("https://github.com/unitycoder/UnityLauncher/releases");
+ }
+
+ private void btnRefreshProjectList_Click(object sender, EventArgs e)
+ {
+ UpdateRecentProjectsList();
+ }
+
+ private void btnBrowseForProject_Click(object sender, EventArgs e)
+ {
+ BrowseForExistingProjectFolder();
+ }
+
+ private void Form1_FormClosing(object sender, FormClosingEventArgs e)
+ {
+ SaveSettingsOnExit();
+ }
+
+ #endregion UI events
+
+
+
+
+ // displays version selector to upgrade project
+ void UpgradeProject()
+ {
+ FixSelectedRow();
+ var selected = gridRecent?.CurrentCell?.RowIndex;
+ if (selected.HasValue && selected > -1)
+ {
+ SetStatus("Upgrading project ...");
+
+ var projectPath = gridRecent.Rows[(int)selected].Cells["_path"].Value.ToString();
+ var currentVersion = Tools.GetProjectVersion(projectPath);
+
+ if (string.IsNullOrEmpty(currentVersion) == true)
+ {
+ // TODO no version info available, should handle errors?
+ }
+ else // have version info
+ {
+ bool haveExactVersion = HaveExactVersionInstalled(currentVersion);
+ if (haveExactVersion == true)
+ {
+ // you already have exact version, are you sure about upgrade?
+ }
+ }
+ DisplayUpgradeDialog(currentVersion, projectPath, true);
+ }
+ }
+
+ void DisplayUpgradeDialog(string currentVersion, string projectPath, bool launchProject = true, string commandLineArguments = "")
+ {
+ // display upgrade dialog (version selector)
+ Form2 upgradeDialog = new Form2();
+ Form2.currentVersion = currentVersion;
+
+ // check what user selected
+ var results = upgradeDialog.ShowDialog(this);
+ switch (results)
+ {
+ case DialogResult.Ignore: // view release notes page
+ Tools.OpenReleaseNotes(currentVersion);
+ // display window again for now..
+ DisplayUpgradeDialog(currentVersion, projectPath, launchProject, commandLineArguments);
+ break;
+ case DialogResult.Cancel: // cancelled
+ SetStatus("Cancelled project upgrade");
+ break;
+ case DialogResult.Retry: // download and install missing version
+ SetStatus("Download and install missing version " + currentVersion);
+ string url = Tools.GetUnityReleaseURL(currentVersion);
+ if (string.IsNullOrEmpty(url) == false)
+ {
+ DownloadInBrowser(url, currentVersion);
+ }
+ else
+ {
+ SetStatus("Failed getting Unity Installer URL");
+ }
+ break;
+ case DialogResult.Yes: // upgrade
+ SetStatus("Upgrading project to " + Form2.currentVersion);
+ if (launchProject == true) LaunchProject(projectPath, Form2.currentVersion);
+ break;
+ default:
+ Console.WriteLine("Unknown DialogResult: " + results);
+ break;
+ }
+ upgradeDialog.Close();
+ }
+
+ private void FetchListOfUnityUpdates()
+ {
+ if (isDownloadingUnityList == true)
+ {
+ SetStatus("We are already downloading ...");
+ return;
+ }
+ isDownloadingUnityList = true;
+ SetStatus("Downloading list of Unity versions ...");
+
+ // download list of Unity versions
+ using (WebClient webClient = new WebClient())
+ {
+ webClient.DownloadStringCompleted += new DownloadStringCompletedEventHandler(UnityVersionsListDownloaded);
+ var unityVersionsURL = @"http://symbolserver.unity3d.com/000Admin/history.txt";
+ webClient.DownloadStringAsync(new Uri(unityVersionsURL));
+ }
+ }
+
+ private void UnityVersionsListDownloaded(object sender, DownloadStringCompletedEventArgs e)
+ {
+ // TODO check for error..
+ SetStatus("Downloading list of Unity versions ... done");
+ isDownloadingUnityList = false;
+
+ // parse to list
+ var receivedList = e.Result.Split(new[] { Environment.NewLine }, StringSplitOptions.None);
+ Array.Reverse(receivedList);
+ gridUnityUpdates.Rows.Clear();
+ // fill in, TODO: show only top 50 or so
+ for (int i = 0, len = receivedList.Length; i < len; i++)
+ {
+ var row = receivedList[i].Split(',');
+ var versionTemp = row[6].Trim('"');
+ gridUnityUpdates.Rows.Add(row[3], versionTemp);
+
+ // set color if we already have it installed
+ gridUnityUpdates.Rows[i].Cells[1].Style.ForeColor = unityList.ContainsKey(versionTemp) ? Color.Green : Color.Black;
+ }
+ }
+
+ // returns currently selected rows path string
+ string GetSelectedRowData(string key)
+ {
+ string path = null;
+ FixSelectedRow();
+ var selected = gridRecent?.CurrentCell?.RowIndex;
+ if (selected.HasValue && selected > -1)
+ {
+ path = gridRecent.Rows[(int)selected].Cells[key].Value?.ToString();
+ }
+ return path;
+ }
+
+ void BrowseForExistingProjectFolder()
+ {
+ folderBrowserDialog1.Description = "Select existing project folder";
+ var d = folderBrowserDialog1.ShowDialog();
+ var projectPath = folderBrowserDialog1.SelectedPath;
+
+ // NOTE: if user didnt click enter or deselect-select newly created folder, this fails as it returns "new folder" instead of actual name
+ // https://social.msdn.microsoft.com/Forums/vstudio/en-US/cc7f1d54-c1a0-45de-9611-7f69873f32df/folderbrowserdialog-bug-when-click-ok-while-modify-new-folders-name?forum=netfxbcl
+
+ if (String.IsNullOrWhiteSpace(projectPath) == false && Directory.Exists(projectPath) == true)
+ {
+ // TODO: remove duplicate code (from UpdateRecentList())
+ string projectName = "";
+
+ // get project name from full path
+ if (projectPath.IndexOf(Path.DirectorySeparatorChar) > -1)
+ {
+ projectName = projectPath.Substring(projectPath.LastIndexOf(Path.DirectorySeparatorChar) + 1);
+ }
+ else if (projectPath.IndexOf(Path.AltDirectorySeparatorChar) > -1)
+ {
+ projectName = projectPath.Substring(projectPath.LastIndexOf(Path.AltDirectorySeparatorChar) + 1);
+ }
+ else // no path separator found
+ {
+ projectName = projectPath;
+ }
+
+ string csprojFile = Path.Combine(projectPath, projectName + ".csproj");
+
+ // editor only project
+ if (File.Exists(csprojFile) == false)
+ {
+ csprojFile = Path.Combine(projectPath, projectName + ".Editor.csproj");
+ }
+
+ // maybe 4.x project
+ if (File.Exists(csprojFile) == false)
+ {
+ csprojFile = Path.Combine(projectPath, "Assembly-CSharp.csproj");
+ }
+
+ // get last modified date
+ DateTime? lastUpdated = Tools.GetLastModifiedTime(csprojFile);
+
+ // get project version
+ string projectVersion = Tools.GetProjectVersion(projectPath);
+
+ // get custom launch arguments, only if column in enabled
+ string customArgs = "";
+ if (chkShowLauncherArgumentsColumn.Checked == true)
+ {
+ customArgs = Tools.ReadCustomLaunchArguments(projectPath, launcherArgumentsFile);
+ }
+
+ // get git branchinfo, only if column in enabled
+ string gitBranch = "";
+ if (chkShowGitBranchColumn.Checked == true)
+ {
+ gitBranch = Tools.ReadGitBranchInfo(projectPath);
+ }
+
+ // NOTE: list item will disappear if you dont open the project once..
+
+ // TODO: dont add if not a project??
+
+ gridRecent.Rows.Insert(0, projectName, projectVersion, projectPath, lastUpdated, customArgs, gitBranch);
+ gridRecent.Rows[0].Cells[1].Style.ForeColor = HaveExactVersionInstalled(projectVersion) ? Color.Green : Color.Red;
+ gridRecent.Rows[0].Selected = true;
+ gridRecent.CurrentCell = gridRecent[0, 0]; // reset position to first item
+ }
+ }
+
+ private void SaveSettingsOnExit()
+ {
+ // save list column widths
+ List gridWidths;
+ if (Properties.Settings.Default.gridColumnWidths != null)
+ {
+ gridWidths = new List(Properties.Settings.Default.gridColumnWidths);
+ }
+ else
+ {
+ gridWidths = new List();
+ }
+
+ // restore data grid view widths
+ var colum = gridRecent.Columns[0];
+ for (int i = 0; i < gridRecent.Columns.Count; ++i)
+ {
+ if (Properties.Settings.Default.gridColumnWidths != null && Properties.Settings.Default.gridColumnWidths.Length > i)
+ {
+ gridWidths[i] = gridRecent.Columns[i].Width;
+ }
+ else
+ {
+ gridWidths.Add(gridRecent.Columns[i].Width);
+ }
+ }
+ Properties.Settings.Default.gridColumnWidths = gridWidths.ToArray();
+ Properties.Settings.Default.Save();
+ }
+
+ void FixSelectedRow()
+ {
+ if (gridRecent.CurrentCell == null)
+ {
+ if (gridRecent.SelectedRows.Count != 0)
+ {
+ DataGridViewRow row = gridRecent.SelectedRows[0];
+ gridRecent.CurrentCell = row.Cells[0];
+ }
+ }
+ }
+
+ private void btnOpenLogcatCmd_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ Process myProcess = new Process();
+ var cmd = "cmd.exe";
+ myProcess.StartInfo.FileName = cmd;
+ // NOTE windows 10 cmd line supports ansi colors, otherwise remove -v color
+ var pars = " /c adb logcat -s Unity ActivityManager PackageManager dalvikvm DEBUG -v color";
+ myProcess.StartInfo.Arguments = pars;
+ myProcess.Start();
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine(ex);
+ }
+ }
+
+ int GetSelectedRowIndex()
+ {
+ var selected = gridRecent?.CurrentCell?.RowIndex;
+ if (selected.HasValue && selected > -1)
+ {
+ return (int)selected;
+ }
+ else
+ {
+ return -1;
+ }
+ }
+
+ void SetSelectedRowIndex(int index)
+ {
+ if (index > -1 && index < gridRecent.Rows.Count) gridRecent.Rows[index].Selected = true;
+ }
+
+ private void btnDownloadNewUnity_Click(object sender, EventArgs e)
+ {
+ FixSelectedRow();
+ var selected = gridUnityUpdates?.CurrentCell?.RowIndex;
+ if (selected.HasValue && selected > -1)
+ {
+ var version = gridUnityUpdates.Rows[(int)selected].Cells["_UnityUpdateVersion"].Value.ToString();
+ string url = Tools.GetUnityReleaseURL(version);
+ if (string.IsNullOrEmpty(url) == false)
+ {
+ DownloadInBrowser(url, version);
+ }
+ }
+
+ }
+
+ // open LocalLow folder
+ private void btnPlayerLogFolder_Click(object sender, EventArgs e)
+ {
+ var logfolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + "/../LocalLow");
+ if (Directory.Exists(logfolder) == true)
+ {
+ if (Tools.LaunchExplorer(logfolder) == false)
+ {
+ SetStatus("Error> Directory not found: " + logfolder);
+ }
+ }
+ }
+
+ private void lblClearSearchField_Click(object sender, EventArgs e)
+ {
+ tbSearchBar.Text = "";
+ }
+
+ private void lblClearSearchField_MouseEnter(object sender, EventArgs e)
+ {
+ ((Label)sender).ForeColor = Color.FromArgb(255, 0, 0, 0);
+ }
+
+ private void lblClearSearchField_MouseLeave(object sender, EventArgs e)
+ {
+ ((Label)sender).ForeColor = Color.FromArgb(128, 128, 128, 128);
+ }
+ } // class Form
+} // namespace
\ No newline at end of file
diff --git a/UnityLauncher/Form1.resx b/UnityLauncher/Form1.resx
index f48841a..83ebd0f 100644
--- a/UnityLauncher/Form1.resx
+++ b/UnityLauncher/Form1.resx
@@ -117,9 +117,6 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 376, 18
-
14, 20
@@ -135,6 +132,12 @@
True
+
+ True
+
+
+ True
+
True
@@ -147,18 +150,48 @@
True
+
+ True
+
+
+ True
+
True
True
+
+ True
+
+
+ True
+
True
True
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
14, 20
@@ -171,789 +204,1781 @@
- AAABAAUAEBAAAAEAIABoBAAAVgAAABgYAAABACAAiAkAAL4EAAAgIAAAAQAgAKgQAABGDgAAMDAAAAEA
- IACoJQAA7h4AAEBAAAABAAgAKBYAAJZEAAAoAAAAEAAAACAAAAABACAAAAAAAAAEAAAAAAAAAAAAAAAA
- AAAAAAAACAgI/wcHB/8EBAT/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wQE
- BP8HBwf/CAgI/wcHB/8cHBz/TExM/01NTf9NTU3/TU1N/01NTf9NTU3/TU1N/01NTf9NTU3/TU1N/01N
- Tf9MTEz/HBwc/wcHB/8EBAT/TExM//Pz8//39/f/9/f3//f39//39/f/9/f3//f39//39/f/9/f3//f3
- 9//39/f/8/Pz/0xMTP8EBAT/AwMD/01NTf/39/f//f39//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//f39//f39/9NTU3/AwMD/wMDA/9NTU3/9/f3//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/39/f/TU1N/wMDA/8DAwP/TU1N//f39//8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz/9/f3/01NTf8DAwP/AwMD/01NTf/39/f//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//f39/9NTU3/AwMD/wMDA/9NTU3/9/f3//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/39/f/TU1N/wMDA/8DAwP/TU1N//f39//8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/9/f3/01NTf8DAwP/AwMD/01NTf/39/f//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//f39/9NTU3/AwMD/wMDA/9NTU3/9/f3//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/39/f/TU1N/wMDA/8DAwP/TU1N//f3
- 9//8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/9/f3/01NTf8DAwP/AwMD/01N
- Tf/39/f//f39//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//f39//f39/9NTU3/AwMD/wQE
- BP9MTEz/8/Pz//f39//39/f/9/f3//f39//39/f/9/f3//f39//39/f/9/f3//f39//z8/P/TExM/wQE
- BP8HBwf/HBwc/0xMTP9NTU3/TU1N/01NTf9NTU3/TU1N/01NTf9NTU3/TU1N/01NTf9NTU3/TExM/xwc
- HP8HBwf/CAgI/wcHB/8EBAT/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wQE
- BP8HBwf/CAgI/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAoAAAAGAAAADAAAAABACAAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAACAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8GBgb/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/BgYG/wgI
- CP8ICAj/CAgI/wYGBv8tLS3/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dn
- Z/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/LS0t/wYGBv8ICAj/CAgI/wMDA/9nZ2f///////7+
- /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
- /v//////Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMD
- A/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMD
- A/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMD
- A/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMD
- A/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMD
- A/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMD
- A/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMD
- A/9nZ2f///////7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
- /v/+/v7//v7+//7+/v//////Z2dn/wMDA/8ICAj/CAgI/wYGBv8tLS3/Z2dn/2dnZ/9nZ2f/Z2dn/2dn
- Z/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/LS0t/wYG
- Bv8ICAj/CAgI/wgICP8GBgb/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/BgYG/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAACAA
- AABAAAAAAQAgAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8GBgb/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/BgYG/wgICP8ICAj/CAgI/wgI
- CP8ICAj/BgYG/0VFRf+EhIT/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KC
- gv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4SEhP9FRUX/BgYG/wgI
- CP8ICAj/CAgI/wgICP8DAwP/hISE////////////////////////////////////////////////////
- /////////////////////////////////////////////////////////////////////////////4SE
- hP8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KCgv///////Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgICP8DAwP/goKC///////8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KC
- gv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgI
- CP8DAwP/goKC///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgI
- CP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMD
- A/8ICAj/CAgI/wgICP8ICAj/AwMD/4KCgv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+CgoL/AwMD/wgICP8ICAj/CAgI/wgICP8DAwP/goKC///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//////4KCgv8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KCgv///////Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgICP8DAwP/goKC////
- ///8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgICP8ICAj/CAgI/wMD
- A/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMDA/8ICAj/CAgI/wgI
- CP8ICAj/AwMD/4KCgv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+CgoL/AwMD/wgI
- CP8ICAj/CAgI/wgICP8DAwP/goKC///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//////4KC
- gv8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KCgv///////Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgICP8DAwP/goKC///////8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KC
- gv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgI
- CP8DAwP/goKC///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgI
- CP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMD
- A/8ICAj/CAgI/wgICP8ICAj/AwMD/4SEhP//////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //+EhIT/AwMD/wgICP8ICAj/CAgI/wgICP8GBgb/RUVF/4SEhP+CgoL/goKC/4KCgv+CgoL/goKC/4KC
- gv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KC
- gv+CgoL/hISE/0VFRf8GBgb/CAgI/wgICP8ICAj/CAgI/wgICP8GBgb/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/BgYG/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8AAAAAAAAAAAAA
+ AAABAA0AICAQAAEABADoAgAA1gAAABAQEAABAAQAKAEAAL4DAAAwMAAAAQAIAKgOAADmBAAAICAAAAEA
+ CACoCAAAjhMAABAQAAABAAgAaAUAADYcAAAAAAAAAQAgABwFAACeIQAAQEAAAAEAIAAoQgAAuiYAADAw
+ AAABACAAqCUAAOJoAAAoKAAAAQAgAGgaAACKjgAAICAAAAEAIACoEAAA8qgAABgYAAABACAAiAkAAJq5
+ AAAUFAAAAQAgALgGAAAiwwAAEBAAAAEAIABoBAAA2skAACgAAAAgAAAAQAAAAAEABAAAAAAAgAIAAAAA
+ AAAAAAAAEAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD/
+ /wD/AAAA/wD/AP//AAD///8A////////////////////////////////////////////AAAAAAAAAAAA
+ AAAAAAD//wAAAAAAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAAAP//AA//////////////8AD//wAP////
+ //////////AA//8AD//////////////wAP//AA//////////////8AD//wAP//////////////AA//8A
+ D//////////////wAP//AA//////////////8AD//wAP//////////////AA//8AD//////////////w
+ AP//AA//////////////8AD//wAP//////////////AA//8AD//////////////wAP//AA//////////
+ ////8AD//wAP//////////////AA//8AD//////////////wAP//AA//////////////8AD//wAP////
+ //////////AA//8AD//////////////wAP//AA//////////////8AD//wAP//////////////AA//8A
+ D//////////////wAP//AA//////////////8AD//wAAAAAAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAA
+ AP//AAAAAAAAAAAAAAAAAAD///////////////////////////////////////////8AAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgA
- AAAwAAAAYAAAAAEAIAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ AAAQAAAAIAAAAAEABAAAAAAAwAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAA
+ gACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8A///////////wAAAAAAAAD/D/
+ //////8P8P///////w/w////////D/D///////8P8P///////w/w////////D/D///////8P8P//////
+ /w/w////////D/D///////8P8P///////w/w////////D/AAAAAAAAAP//////////8AAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAA
+ AABgAAAAAQAIAAAAAACACgAAAAAAAAAAAAAAAQAAAAAAAAgICAD8/PwAAA5QAAAUcAAAGpAAACCwAAAm
+ zwAALPAAET3/ADFX/wBRcf8AcYv/AJGl/wCxv/8A0dr/AP///wAAAAAAABovAAAtUAAAP3AAAFGQAABj
+ sAAAds8AAIjwABGY/wAxpv8AUbP/AHHB/wCRz/8Asd3/ANHr/wD///8AAAAAAAAsLwAAS1AAAGhwAACG
+ kAAApbAAAMPPAADh8AAR7/8AMfH/AFHz/wBx9f8Akff/ALH5/wDR+/8A////AAAAAAAALyEAAFA3AABw
+ TAAAkGMAALB5AADPjwAA8KYAEf+0ADH/vgBR/8gAcf/TAJH/3ACx/+UA0f/wAP///wAAAAAAAC8OAABQ
+ GAAAcCIAAJAsAACwNgAAz0AAAPBKABH/WwAx/3EAUf+HAHH/nQCR/7IAsf/JANH/3wD///8AAAAAAAIv
+ AAAEUAAABnAAAAiQAAAKsAAAC88AAA7wAAAg/xIAPf8xAFv/UQB5/3EAmP+RALX/sQDU/9EA////AAAA
+ AAAULwAAIlAAADBwAAA9kAAATLAAAFnPAABn8AAAeP8RAIr/MQCc/1EArv9xAMD/kQDS/7EA5P/RAP//
+ /wAAAAAAJi8AAEBQAABacAAAdJAAAI6wAACpzwAAwvAAANH/EQDY/zEA3v9RAOP/cQDp/5EA7/+xAPb/
+ 0QD///8AAAAAAC8mAABQQQAAcFsAAJB0AACwjgAAz6kAAPDDAAD/0hEA/9gxAP/dUQD/5HEA/+qRAP/w
+ sQD/9tEA////AAAAAAAvFAAAUCIAAHAwAACQPgAAsE0AAM9bAADwaQAA/3kRAP+KMQD/nVEA/69xAP/B
+ kQD/0rEA/+XRAP///wAAAAAALwMAAFAEAABwBgAAkAkAALAKAADPDAAA8A4AAP8gEgD/PjEA/1xRAP96
+ cQD/l5EA/7axAP/U0QD///8AAAAAAC8ADgBQABcAcAAhAJAAKwCwADYAzwBAAPAASQD/EVoA/zFwAP9R
+ hgD/cZwA/5GyAP+xyAD/0d8A////AAAAAAAvACAAUAA2AHAATACQAGIAsAB4AM8AjgDwAKQA/xGzAP8x
+ vgD/UccA/3HRAP+R3AD/seUA/9HwAP///wAAAAAALAAvAEsAUABpAHAAhwCQAKUAsADEAM8A4QDwAPAR
+ /wDyMf8A9FH/APZx/wD3kf8A+bH/APvR/wD///8AAAAAABsALwAtAFAAPwBwAFIAkABjALAAdgDPAIgA
+ 8ACZEf8ApjH/ALRR/wDCcf8Az5H/ANyx/wDr0f8A////AAAAAAAIAC8ADgBQABUAcAAbAJAAIQCwACYA
+ zwAsAPAAPhH/AFgx/wBxUf8AjHH/AKaR/wC/sf8A2tH/AP///wABAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAAB
+ AAAAAAAACAgIAPz8/AAADlAAABRwAAAakAAAILAAACbPAAAs8AARPf8AMVf/AFFx/wBxi/8AkaX/ALG/
+ /wDR2v8A////AAAAAAAAGi8AAC1QAAA/cAAAUZAAAGOwAAB2zwAAiPAAEZj/ADGm/wBRs/8AccH/AJHP
+ /wCx3f8A0ev/AP///wAAAAAAACwvAABLUAAAaHAAAIaQAAClsAAAw88AAOHwABHv/wAx8f8AUfP/AHH1
+ /wCR9/8Asfn/ANH7/wD///8AAAAAAAAvIQAAUDcAAHBMAACQYwAAsHkAAM+PAADwpgAR/7QAMf++AFH/
+ yABx/9MAkf/cALH/5QDR//AA////AAAAAAAALw4AAFAYAABwIgAAkCwAALA2AADPQAAA8EoAEf9bADH/
+ cQBR/4cAcf+dAJH/sgCx/8kA0f/fAP///wAAAAAAAi8AAARQAAAGcAAACJAAAAqwAAALzwAADvAAACD/
+ EgA9/zEAW/9RAHn/cQCY/5EAtf+xANT/0QD///8AAAAAABQvAAAiUAAAMHAAAD2QAABMsAAAWc8AAGfw
+ AAB4/xEAiv8xAJz/UQCu/3EAwP+RANL/sQDk/9EA////AAAAAAAmLwAAQFAAAFpwAAB0kAAAjrAAAKnP
+ AADC8AAA0f8RANj/MQDe/1EA4/9xAOn/kQDv/7EA9v/RAP///wAAAAAALyYAAFBBAABwWwAAkHQAALCO
+ AADPqQAA8MMAAP/SEQD/2DEA/91RAP/kcQD/6pEA//CxAP/20QD///8AAAAAAC8UAABQIgAAcDAAAJA+
+ AACwTQAAz1sAAPBpAAD/eREA/4oxAP+dUQD/r3EA/8GRAP/SsQD/5dEA////AAAAAAAvAwAAUAQAAHAG
+ AACQCQAAsAoAAM8MAADwDgAA/yASAP8+MQD/XFEA/3pxAP+XkQD/trEA/9TRAP///wAAAAAALwAOAFAA
+ FwBwACEAkAArALAANgDPAEAA8ABJAP8RWgD/MXAA/1GGAP9xnAD/kbIA/7HIAP/R3wD///8AAAAAAC8A
+ IABQADYAcABMAJAAYgCwAHgAzwCOAPAApAD/EbMA/zG+AP9RxwD/cdEA/5HcAP+x5QD/0fAA////AAAA
+ AAAsAC8ASwBQAGkAcACHAJAApQCwAMQAzwDhAPAA8BH/APIx/wD0Uf8A9nH/APeR/wD5sf8A+9H/AP//
+ /wAAAAAAGwAvAC0AUAA/AHAAUgCQAGMAsAB2AM8AiADwAJkR/wCmMf8AtFH/AMJx/wDPkf8A3LH/AOvR
+ /wD///8AAAAAAAgALwAOAFAAFQBwABsAkAAhALAAJgDPACwA8AA+Ef8AWDH/AHFR/wCMcf8AppH/AL+x
+ /wDa0f8A////AAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAAB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEB
+ AAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAA
+ AQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQAAAAEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEAAAABAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAABAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQAAAAEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAAB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEB
+ AAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAA
+ AQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAA
+ AAAICAgA/Pz8AAAOUAAAFHAAABqQAAAgsAAAJs8AACzwABE9/wAxV/8AUXH/AHGL/wCRpf8Asb//ANHa
+ /wD///8AAAAAAAAaLwAALVAAAD9wAABRkAAAY7AAAHbPAACI8AARmP8AMab/AFGz/wBxwf8Akc//ALHd
+ /wDR6/8A////AAAAAAAALC8AAEtQAABocAAAhpAAAKWwAADDzwAA4fAAEe//ADHx/wBR8/8AcfX/AJH3
+ /wCx+f8A0fv/AP///wAAAAAAAC8hAABQNwAAcEwAAJBjAACweQAAz48AAPCmABH/tAAx/74AUf/IAHH/
+ 0wCR/9wAsf/lANH/8AD///8AAAAAAAAvDgAAUBgAAHAiAACQLAAAsDYAAM9AAADwSgAR/1sAMf9xAFH/
+ hwBx/50Akf+yALH/yQDR/98A////AAAAAAACLwAABFAAAAZwAAAIkAAACrAAAAvPAAAO8AAAIP8SAD3/
+ MQBb/1EAef9xAJj/kQC1/7EA1P/RAP///wAAAAAAFC8AACJQAAAwcAAAPZAAAEywAABZzwAAZ/AAAHj/
+ EQCK/zEAnP9RAK7/cQDA/5EA0v+xAOT/0QD///8AAAAAACYvAABAUAAAWnAAAHSQAACOsAAAqc8AAMLw
+ AADR/xEA2P8xAN7/UQDj/3EA6f+RAO//sQD2/9EA////AAAAAAAvJgAAUEEAAHBbAACQdAAAsI4AAM+p
+ AADwwwAA/9IRAP/YMQD/3VEA/+RxAP/qkQD/8LEA//bRAP///wAAAAAALxQAAFAiAABwMAAAkD4AALBN
+ AADPWwAA8GkAAP95EQD/ijEA/51RAP+vcQD/wZEA/9KxAP/l0QD///8AAAAAAC8DAABQBAAAcAYAAJAJ
+ AACwCgAAzwwAAPAOAAD/IBIA/z4xAP9cUQD/enEA/5eRAP+2sQD/1NEA////AAAAAAAvAA4AUAAXAHAA
+ IQCQACsAsAA2AM8AQADwAEkA/xFaAP8xcAD/UYYA/3GcAP+RsgD/scgA/9HfAP///wAAAAAALwAgAFAA
+ NgBwAEwAkABiALAAeADPAI4A8ACkAP8RswD/Mb4A/1HHAP9x0QD/kdwA/7HlAP/R8AD///8AAAAAACwA
+ LwBLAFAAaQBwAIcAkAClALAAxADPAOEA8ADwEf8A8jH/APRR/wD2cf8A95H/APmx/wD70f8A////AAAA
+ AAAbAC8ALQBQAD8AcABSAJAAYwCwAHYAzwCIAPAAmRH/AKYx/wC0Uf8AwnH/AM+R/wDcsf8A69H/AP//
+ /wAAAAAACAAvAA4AUAAVAHAAGwCQACEAsAAmAM8ALADwAD4R/wBYMf8AcVH/AIxx/wCmkf8Av7H/ANrR
+ /wD///8AAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQABAQABAQEB
+ AQEBAQEBAQEAAQEAAQEBAQEBAQEBAQEBAAEBAAEBAQEBAQEBAQEBAQABAQABAQEBAQEBAQEBAQEAAQEA
+ AQEBAQEBAQEBAQEBAAEBAAEBAQEBAQEBAQEBAQABAQABAQEBAQEBAQEBAQEAAQEAAQEBAQEBAQEBAQEB
+ AAEBAAEBAQEBAQEBAQEBAQABAQABAQEBAQEBAQEBAQEAAQEAAQEBAQEBAQEBAQEBAAEBAAAAAAAAAAAA
+ AAAAAAABAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACJUE5HDQoaCgAAAA1JSERSAAABAAAAAQAIBgAAAFxyqGYA
+ AATjSURBVHja7dQxTgNAEARByP3/lzq0BDkZBEPLW5WfdBtMf75er68P4KRPAYC7BAAOEwA4TADgMAGA
+ wwQADhMAOEwA4DABgMMEAA4TADhMAOCwPwXg8Xj897+BH57P56/fCAC8CQGAwwQADhMAOEwA4DABgMME
+ AA4TADhMAOAwAYDDBAAOEwA4TADgMAGAwwQADhMAOEwA4DABgMMEAA4TADhMAOAwAYDDBAAOEwA47K0C
+ 8JdjoKq6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsR
+ ABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAG
+ qpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepm
+ BAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGA
+ gepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6
+ GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYA
+ YKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABio
+ bkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsR
+ ABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAG
+ qpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepm
+ BAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGA
+ gepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6
+ GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYA
+ YKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABio
+ bkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsR
+ ABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobiYbAOB3BAAOEwA4TADg
+ MAGAwwQADhMAOEwA4DABgMMEAA4TADhMAOAwAYDDBAAOEwA4TADgMAGAwwQADhMAOEwA4DABgMMEAA4T
+ ADhMAOAwAYDDZgEA3oMAwGECAIcJABwmAHCYAMBhAgCHCQAcJgBwmADAYQIAhwkAHCYAcNg33r/CedAG
+ F2MAAAAASUVORK5CYIIoAAAAQAAAAIAAAAABACAAAAAAAABCAAAAAAAAAAAAAAAAAAAAAAAA/Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/4uL
- i/++vr7/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6
- uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6
- uv+6urr/urq6/7q6uv+6urr/urq6/76+vv+Li4v/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/729vf//////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////+9vb3/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAAAABgAAAAAQAgAAAAAACAJQAAAAAAAAAA
+ AAAAAAAAAAAAAPz8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/729vf//////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////+9vb3/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/4uLi/++vr7/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6
- uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6
- uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/76+vv+Li4v/CAgI/wgI
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAACgAAAAoAAAAUAAAAAEAIAAAAAAAQBoAAAAAAAAAAAAAAAAAAAAAAAD8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAQAAAAIAAAAABAAgAAAAAAAAQ
- AAAAAAAAAAAAAAABAAAAAQAAAAAAAAEBAQACAgIAAwMDAAQEBAAFBQUABgYGAAcHBwAICAgACQkJAAoK
- CgALCwsADAwMAA0NDQAODg4ADw8PABAQEAAREREAEhISABMTEwAUFBQAFRUVABYWFgAXFxcAGBgYABkZ
- GQAaGhoAGxsbABwcHAAdHR0AHh4eAB8fHwAgICAAISEhACIiIgAjIyMAJCQkACUlJQAmJiYAJycnACgo
- KAApKSkAKioqACsrKwAsLCwALS0tAC4uLgAvLy8AMDAwADExMQAyMjIAMzMzADQ0NAA1NTUANjY2ADc3
- NwA4ODgAOTk5ADo6OgA7OzsAPDw8AD09PQA+Pj4APz8/AEBAQABBQUEAQkJCAENDQwBEREQARUVFAEZG
- RgBHR0cASEhIAElJSQBKSkoAS0tLAExMTABNTU0ATk5OAE9PTwBQUFAAUVFRAFJSUgBTU1MAVFRUAFVV
- VQBWVlYAV1dXAFhYWABZWVkAWlpaAFtbWwBcXFwAXV1dAF5eXgBfX18AYGBgAGFhYQBiYmIAY2NjAGRk
- ZABlZWUAZmZmAGdnZwBoaGgAaWlpAGpqagBra2sAbGxsAG1tbQBubm4Ab29vAHBwcABxcXEAcnJyAHNz
- cwB0dHQAdXV1AHZ2dgB3d3cAeHh4AHl5eQB6enoAe3t7AHx8fAB9fX0Afn5+AH9/fwCAgIAAgYGBAIKC
- ggCDg4MAhISEAIWFhQCGhoYAh4eHAIiIiACJiYkAioqKAIuLiwCMjIwAjY2NAI6OjgCPj48AkJCQAJGR
- kQCSkpIAk5OTAJSUlACVlZUAlpaWAJeXlwCYmJgAmZmZAJqamgCbm5sAnJycAJ2dnQCenp4An5+fAKCg
- oAChoaEAoqKiAKOjowCkpKQApaWlAKampgCnp6cAqKioAKmpqQCqqqoAq6urAKysrACtra0Arq6uAK+v
- rwCwsLAAsbGxALKysgCzs7MAtLS0ALW1tQC2trYAt7e3ALi4uAC5ubkAurq6ALu7uwC8vLwAvb29AL6+
- vgC/v78AwMDAAMHBwQDCwsIAw8PDAMTExADFxcUAxsbGAMfHxwDIyMgAycnJAMrKygDLy8sAzMzMAM3N
- zQDOzs4Az8/PANDQ0ADR0dEA0tLSANPT0wDU1NQA1dXVANbW1gDX19cA2NjYANnZ2QDa2toA29vbANzc
- 3ADd3d0A3t7eAN/f3wDg4OAA4eHhAOLi4gDj4+MA5OTkAOXl5QDm5uYA5+fnAOjo6ADp6ekA6urqAOvr
- 6wDs7OwA7e3tAO7u7gDv7+8A8PDwAPHx8QDy8vIA8/PzAPT09AD19fUA9vb2APf39wD4+PgA+fn5APr6
- +gD7+/sA/Pz8AP39/QD+/v4A////AAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgI
- CPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgI
- CAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgI
- CAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwI
- CAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgI
- CPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgI
- CAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgI
- CAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwI
- CAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgI
- CPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgI
- CAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgI
- CAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwI
- CAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgI
- CPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgI
- CAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgI
- CAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwI
- CAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAA==
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAIAAAAEAA
+ AAABACAAAAAAAIAQAAAAAAAAAAAAAAAAAAAAAAAA/Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAABgA
+ AAAwAAAAAQAgAAAAAABgCQAAAAAAAAAAAAAAAAAAAAAAAPz8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAUAAAAKAAAAAEAIAAAAAAAkAYAAAAA
+ AAAAAAAAAAAAAAAAAAD8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/AAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAoAAAAEAAAACAAAAABACAAAAAAAEAEAAAAAAAAAAAAAAAAAAAAAAAA/Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP/8/Pz//Pz8/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj//Pz8//z8/P8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI//z8/P/8/Pz/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP/8/Pz//Pz8/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj//Pz8//z8/P8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI//z8/P/8/Pz/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP/8/Pz//Pz8/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj//Pz8//z8/P8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI//z8/P/8/Pz/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP/8/Pz//Pz8/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj//Pz8//z8/P8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAA=
+
+ 374, 17
+
+
+ 17, 56
+
- 43
+ 25
- AAABAAUAEBAAAAEAIABoBAAAVgAAABgYAAABACAAiAkAAL4EAAAgIAAAAQAgAKgQAABGDgAAMDAAAAEA
- IACoJQAA7h4AAEBAAAABAAgAKBYAAJZEAAAoAAAAEAAAACAAAAABACAAAAAAAAAEAAAAAAAAAAAAAAAA
- AAAAAAAACAgI/wcHB/8EBAT/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wQE
- BP8HBwf/CAgI/wcHB/8cHBz/TExM/01NTf9NTU3/TU1N/01NTf9NTU3/TU1N/01NTf9NTU3/TU1N/01N
- Tf9MTEz/HBwc/wcHB/8EBAT/TExM//Pz8//39/f/9/f3//f39//39/f/9/f3//f39//39/f/9/f3//f3
- 9//39/f/8/Pz/0xMTP8EBAT/AwMD/01NTf/39/f//f39//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//f39//f39/9NTU3/AwMD/wMDA/9NTU3/9/f3//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/39/f/TU1N/wMDA/8DAwP/TU1N//f39//8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz/9/f3/01NTf8DAwP/AwMD/01NTf/39/f//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//f39/9NTU3/AwMD/wMDA/9NTU3/9/f3//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/39/f/TU1N/wMDA/8DAwP/TU1N//f39//8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/9/f3/01NTf8DAwP/AwMD/01NTf/39/f//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//f39/9NTU3/AwMD/wMDA/9NTU3/9/f3//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/39/f/TU1N/wMDA/8DAwP/TU1N//f3
- 9//8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/9/f3/01NTf8DAwP/AwMD/01N
- Tf/39/f//f39//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//f39//f39/9NTU3/AwMD/wQE
- BP9MTEz/8/Pz//f39//39/f/9/f3//f39//39/f/9/f3//f39//39/f/9/f3//f39//z8/P/TExM/wQE
- BP8HBwf/HBwc/0xMTP9NTU3/TU1N/01NTf9NTU3/TU1N/01NTf9NTU3/TU1N/01NTf9NTU3/TExM/xwc
- HP8HBwf/CAgI/wcHB/8EBAT/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wQE
- BP8HBwf/CAgI/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAoAAAAGAAAADAAAAABACAAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAACAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8GBgb/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/BgYG/wgI
- CP8ICAj/CAgI/wYGBv8tLS3/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dn
- Z/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/LS0t/wYGBv8ICAj/CAgI/wMDA/9nZ2f///////7+
- /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
- /v//////Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMD
- A/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMD
- A/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMD
- A/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMD
- A/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMD
- A/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMD
- A/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMDA/9nZ2f//v7+//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/+/v7/Z2dn/wMDA/8ICAj/CAgI/wMD
- A/9nZ2f///////7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
- /v/+/v7//v7+//7+/v//////Z2dn/wMDA/8ICAj/CAgI/wYGBv8tLS3/Z2dn/2dnZ/9nZ2f/Z2dn/2dn
- Z/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/2dnZ/9nZ2f/LS0t/wYG
- Bv8ICAj/CAgI/wgICP8GBgb/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/BgYG/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAACAA
- AABAAAAAAQAgAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8GBgb/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/BgYG/wgICP8ICAj/CAgI/wgI
- CP8ICAj/BgYG/0VFRf+EhIT/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KC
- gv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4SEhP9FRUX/BgYG/wgI
- CP8ICAj/CAgI/wgICP8DAwP/hISE////////////////////////////////////////////////////
- /////////////////////////////////////////////////////////////////////////////4SE
- hP8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KCgv///////Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgICP8DAwP/goKC///////8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KC
- gv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgI
- CP8DAwP/goKC///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgI
- CP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMD
- A/8ICAj/CAgI/wgICP8ICAj/AwMD/4KCgv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+CgoL/AwMD/wgICP8ICAj/CAgI/wgICP8DAwP/goKC///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//////4KCgv8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KCgv///////Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgICP8DAwP/goKC////
- ///8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgICP8ICAj/CAgI/wMD
- A/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMDA/8ICAj/CAgI/wgI
- CP8ICAj/AwMD/4KCgv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+CgoL/AwMD/wgI
- CP8ICAj/CAgI/wgICP8DAwP/goKC///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//////4KC
- gv8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KCgv///////Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgICP8DAwP/goKC///////8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgICP8ICAj/CAgI/wMDA/+CgoL///////z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMDA/8ICAj/CAgI/wgICP8ICAj/AwMD/4KC
- gv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+CgoL/AwMD/wgICP8ICAj/CAgI/wgI
- CP8DAwP/goKC///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//////4KCgv8DAwP/CAgI/wgI
- CP8ICAj/CAgI/wMDA/+CgoL///////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P//////goKC/wMD
- A/8ICAj/CAgI/wgICP8ICAj/AwMD/4SEhP//////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //+EhIT/AwMD/wgICP8ICAj/CAgI/wgICP8GBgb/RUVF/4SEhP+CgoL/goKC/4KCgv+CgoL/goKC/4KC
- gv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KCgv+CgoL/goKC/4KC
- gv+CgoL/hISE/0VFRf8GBgb/CAgI/wgICP8ICAj/CAgI/wgICP8GBgb/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMD
- A/8DAwP/AwMD/wMDA/8DAwP/BgYG/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8AAAAAAAAAAAAA
+ AAABAA0AICAQAAEABADoAgAA1gAAABAQEAABAAQAKAEAAL4DAAAwMAAAAQAIAKgOAADmBAAAICAAAAEA
+ CACoCAAAjhMAABAQAAABAAgAaAUAADYcAAAAAAAAAQAgABwFAACeIQAAQEAAAAEAIAAoQgAAuiYAADAw
+ AAABACAAqCUAAOJoAAAoKAAAAQAgAGgaAACKjgAAICAAAAEAIACoEAAA8qgAABgYAAABACAAiAkAAJq5
+ AAAUFAAAAQAgALgGAAAiwwAAEBAAAAEAIABoBAAA2skAACgAAAAgAAAAQAAAAAEABAAAAAAAgAIAAAAA
+ AAAAAAAAEAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD/
+ /wD/AAAA/wD/AP//AAD///8A////////////////////////////////////////////AAAAAAAAAAAA
+ AAAAAAD//wAAAAAAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAAAP//AA//////////////8AD//wAP////
+ //////////AA//8AD//////////////wAP//AA//////////////8AD//wAP//////////////AA//8A
+ D//////////////wAP//AA//////////////8AD//wAP//////////////AA//8AD//////////////w
+ AP//AA//////////////8AD//wAP//////////////AA//8AD//////////////wAP//AA//////////
+ ////8AD//wAP//////////////AA//8AD//////////////wAP//AA//////////////8AD//wAP////
+ //////////AA//8AD//////////////wAP//AA//////////////8AD//wAP//////////////AA//8A
+ D//////////////wAP//AA//////////////8AD//wAAAAAAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAA
+ AP//AAAAAAAAAAAAAAAAAAD///////////////////////////////////////////8AAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgA
- AAAwAAAAYAAAAAEAIAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ AAAQAAAAIAAAAAEABAAAAAAAwAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAA
+ gACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8A///////////wAAAAAAAAD/D/
+ //////8P8P///////w/w////////D/D///////8P8P///////w/w////////D/D///////8P8P//////
+ /w/w////////D/D///////8P8P///////w/w////////D/AAAAAAAAAP//////////8AAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAA
+ AABgAAAAAQAIAAAAAACACgAAAAAAAAAAAAAAAQAAAAAAAAgICAD8/PwAAA5QAAAUcAAAGpAAACCwAAAm
+ zwAALPAAET3/ADFX/wBRcf8AcYv/AJGl/wCxv/8A0dr/AP///wAAAAAAABovAAAtUAAAP3AAAFGQAABj
+ sAAAds8AAIjwABGY/wAxpv8AUbP/AHHB/wCRz/8Asd3/ANHr/wD///8AAAAAAAAsLwAAS1AAAGhwAACG
+ kAAApbAAAMPPAADh8AAR7/8AMfH/AFHz/wBx9f8Akff/ALH5/wDR+/8A////AAAAAAAALyEAAFA3AABw
+ TAAAkGMAALB5AADPjwAA8KYAEf+0ADH/vgBR/8gAcf/TAJH/3ACx/+UA0f/wAP///wAAAAAAAC8OAABQ
+ GAAAcCIAAJAsAACwNgAAz0AAAPBKABH/WwAx/3EAUf+HAHH/nQCR/7IAsf/JANH/3wD///8AAAAAAAIv
+ AAAEUAAABnAAAAiQAAAKsAAAC88AAA7wAAAg/xIAPf8xAFv/UQB5/3EAmP+RALX/sQDU/9EA////AAAA
+ AAAULwAAIlAAADBwAAA9kAAATLAAAFnPAABn8AAAeP8RAIr/MQCc/1EArv9xAMD/kQDS/7EA5P/RAP//
+ /wAAAAAAJi8AAEBQAABacAAAdJAAAI6wAACpzwAAwvAAANH/EQDY/zEA3v9RAOP/cQDp/5EA7/+xAPb/
+ 0QD///8AAAAAAC8mAABQQQAAcFsAAJB0AACwjgAAz6kAAPDDAAD/0hEA/9gxAP/dUQD/5HEA/+qRAP/w
+ sQD/9tEA////AAAAAAAvFAAAUCIAAHAwAACQPgAAsE0AAM9bAADwaQAA/3kRAP+KMQD/nVEA/69xAP/B
+ kQD/0rEA/+XRAP///wAAAAAALwMAAFAEAABwBgAAkAkAALAKAADPDAAA8A4AAP8gEgD/PjEA/1xRAP96
+ cQD/l5EA/7axAP/U0QD///8AAAAAAC8ADgBQABcAcAAhAJAAKwCwADYAzwBAAPAASQD/EVoA/zFwAP9R
+ hgD/cZwA/5GyAP+xyAD/0d8A////AAAAAAAvACAAUAA2AHAATACQAGIAsAB4AM8AjgDwAKQA/xGzAP8x
+ vgD/UccA/3HRAP+R3AD/seUA/9HwAP///wAAAAAALAAvAEsAUABpAHAAhwCQAKUAsADEAM8A4QDwAPAR
+ /wDyMf8A9FH/APZx/wD3kf8A+bH/APvR/wD///8AAAAAABsALwAtAFAAPwBwAFIAkABjALAAdgDPAIgA
+ 8ACZEf8ApjH/ALRR/wDCcf8Az5H/ANyx/wDr0f8A////AAAAAAAIAC8ADgBQABUAcAAbAJAAIQCwACYA
+ zwAsAPAAPhH/AFgx/wBxUf8AjHH/AKaR/wC/sf8A2tH/AP///wABAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAA
+ AQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAAB
+ AAAAAAAACAgIAPz8/AAADlAAABRwAAAakAAAILAAACbPAAAs8AARPf8AMVf/AFFx/wBxi/8AkaX/ALG/
+ /wDR2v8A////AAAAAAAAGi8AAC1QAAA/cAAAUZAAAGOwAAB2zwAAiPAAEZj/ADGm/wBRs/8AccH/AJHP
+ /wCx3f8A0ev/AP///wAAAAAAACwvAABLUAAAaHAAAIaQAAClsAAAw88AAOHwABHv/wAx8f8AUfP/AHH1
+ /wCR9/8Asfn/ANH7/wD///8AAAAAAAAvIQAAUDcAAHBMAACQYwAAsHkAAM+PAADwpgAR/7QAMf++AFH/
+ yABx/9MAkf/cALH/5QDR//AA////AAAAAAAALw4AAFAYAABwIgAAkCwAALA2AADPQAAA8EoAEf9bADH/
+ cQBR/4cAcf+dAJH/sgCx/8kA0f/fAP///wAAAAAAAi8AAARQAAAGcAAACJAAAAqwAAALzwAADvAAACD/
+ EgA9/zEAW/9RAHn/cQCY/5EAtf+xANT/0QD///8AAAAAABQvAAAiUAAAMHAAAD2QAABMsAAAWc8AAGfw
+ AAB4/xEAiv8xAJz/UQCu/3EAwP+RANL/sQDk/9EA////AAAAAAAmLwAAQFAAAFpwAAB0kAAAjrAAAKnP
+ AADC8AAA0f8RANj/MQDe/1EA4/9xAOn/kQDv/7EA9v/RAP///wAAAAAALyYAAFBBAABwWwAAkHQAALCO
+ AADPqQAA8MMAAP/SEQD/2DEA/91RAP/kcQD/6pEA//CxAP/20QD///8AAAAAAC8UAABQIgAAcDAAAJA+
+ AACwTQAAz1sAAPBpAAD/eREA/4oxAP+dUQD/r3EA/8GRAP/SsQD/5dEA////AAAAAAAvAwAAUAQAAHAG
+ AACQCQAAsAoAAM8MAADwDgAA/yASAP8+MQD/XFEA/3pxAP+XkQD/trEA/9TRAP///wAAAAAALwAOAFAA
+ FwBwACEAkAArALAANgDPAEAA8ABJAP8RWgD/MXAA/1GGAP9xnAD/kbIA/7HIAP/R3wD///8AAAAAAC8A
+ IABQADYAcABMAJAAYgCwAHgAzwCOAPAApAD/EbMA/zG+AP9RxwD/cdEA/5HcAP+x5QD/0fAA////AAAA
+ AAAsAC8ASwBQAGkAcACHAJAApQCwAMQAzwDhAPAA8BH/APIx/wD0Uf8A9nH/APeR/wD5sf8A+9H/AP//
+ /wAAAAAAGwAvAC0AUAA/AHAAUgCQAGMAsAB2AM8AiADwAJkR/wCmMf8AtFH/AMJx/wDPkf8A3LH/AOvR
+ /wD///8AAAAAAAgALwAOAFAAFQBwABsAkAAhALAAJgDPACwA8AA+Ef8AWDH/AHFR/wCMcf8AppH/AL+x
+ /wDa0f8A////AAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAAB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEB
+ AAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAA
+ AQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQAAAAEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEAAAABAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAABAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQAAAAEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAAB
+ AQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEB
+ AAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAA
+ AQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAA
+ AAAICAgA/Pz8AAAOUAAAFHAAABqQAAAgsAAAJs8AACzwABE9/wAxV/8AUXH/AHGL/wCRpf8Asb//ANHa
+ /wD///8AAAAAAAAaLwAALVAAAD9wAABRkAAAY7AAAHbPAACI8AARmP8AMab/AFGz/wBxwf8Akc//ALHd
+ /wDR6/8A////AAAAAAAALC8AAEtQAABocAAAhpAAAKWwAADDzwAA4fAAEe//ADHx/wBR8/8AcfX/AJH3
+ /wCx+f8A0fv/AP///wAAAAAAAC8hAABQNwAAcEwAAJBjAACweQAAz48AAPCmABH/tAAx/74AUf/IAHH/
+ 0wCR/9wAsf/lANH/8AD///8AAAAAAAAvDgAAUBgAAHAiAACQLAAAsDYAAM9AAADwSgAR/1sAMf9xAFH/
+ hwBx/50Akf+yALH/yQDR/98A////AAAAAAACLwAABFAAAAZwAAAIkAAACrAAAAvPAAAO8AAAIP8SAD3/
+ MQBb/1EAef9xAJj/kQC1/7EA1P/RAP///wAAAAAAFC8AACJQAAAwcAAAPZAAAEywAABZzwAAZ/AAAHj/
+ EQCK/zEAnP9RAK7/cQDA/5EA0v+xAOT/0QD///8AAAAAACYvAABAUAAAWnAAAHSQAACOsAAAqc8AAMLw
+ AADR/xEA2P8xAN7/UQDj/3EA6f+RAO//sQD2/9EA////AAAAAAAvJgAAUEEAAHBbAACQdAAAsI4AAM+p
+ AADwwwAA/9IRAP/YMQD/3VEA/+RxAP/qkQD/8LEA//bRAP///wAAAAAALxQAAFAiAABwMAAAkD4AALBN
+ AADPWwAA8GkAAP95EQD/ijEA/51RAP+vcQD/wZEA/9KxAP/l0QD///8AAAAAAC8DAABQBAAAcAYAAJAJ
+ AACwCgAAzwwAAPAOAAD/IBIA/z4xAP9cUQD/enEA/5eRAP+2sQD/1NEA////AAAAAAAvAA4AUAAXAHAA
+ IQCQACsAsAA2AM8AQADwAEkA/xFaAP8xcAD/UYYA/3GcAP+RsgD/scgA/9HfAP///wAAAAAALwAgAFAA
+ NgBwAEwAkABiALAAeADPAI4A8ACkAP8RswD/Mb4A/1HHAP9x0QD/kdwA/7HlAP/R8AD///8AAAAAACwA
+ LwBLAFAAaQBwAIcAkAClALAAxADPAOEA8ADwEf8A8jH/APRR/wD2cf8A95H/APmx/wD70f8A////AAAA
+ AAAbAC8ALQBQAD8AcABSAJAAYwCwAHYAzwCIAPAAmRH/AKYx/wC0Uf8AwnH/AM+R/wDcsf8A69H/AP//
+ /wAAAAAACAAvAA4AUAAVAHAAGwCQACEAsAAmAM8ALADwAD4R/wBYMf8AcVH/AIxx/wCmkf8Av7H/ANrR
+ /wD///8AAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQABAQABAQEB
+ AQEBAQEBAQEAAQEAAQEBAQEBAQEBAQEBAAEBAAEBAQEBAQEBAQEBAQABAQABAQEBAQEBAQEBAQEAAQEA
+ AQEBAQEBAQEBAQEBAAEBAAEBAQEBAQEBAQEBAQABAQABAQEBAQEBAQEBAQEAAQEAAQEBAQEBAQEBAQEB
+ AAEBAAEBAQEBAQEBAQEBAQABAQABAQEBAQEBAQEBAQEAAQEAAQEBAQEBAQEBAQEBAAEBAAAAAAAAAAAA
+ AAAAAAABAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACJUE5HDQoaCgAAAA1JSERSAAABAAAAAQAIBgAAAFxyqGYA
+ AATjSURBVHja7dQxTgNAEARByP3/lzq0BDkZBEPLW5WfdBtMf75er68P4KRPAYC7BAAOEwA4TADgMAGA
+ wwQADhMAOEwA4DABgMMEAA4TADhMAOCwPwXg8Xj897+BH57P56/fCAC8CQGAwwQADhMAOEwA4DABgMME
+ AA4TADhMAOAwAYDDBAAOEwA4TADgMAGAwwQADhMAOEwA4DABgMMEAA4TADhMAOAwAYDDBAAOEwA47K0C
+ 8JdjoKq6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsR
+ ABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAG
+ qpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepm
+ BAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGA
+ gepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6
+ GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYA
+ YKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABio
+ bkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsR
+ ABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAG
+ qpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepm
+ BAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGA
+ gepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6
+ GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYA
+ YKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABio
+ bkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsR
+ ABiobkYAYKC6GQGAgepmBAAGqpsRABiobkYAYKC6GQGAgepmBAAGqpsRABiobiYbAOB3BAAOEwA4TADg
+ MAGAwwQADhMAOEwA4DABgMMEAA4TADhMAOAwAYDDBAAOEwA4TADgMAGAwwQADhMAOEwA4DABgMMEAA4T
+ ADhMAOAwAYDDZgEA3oMAwGECAIcJABwmAHCYAMBhAgCHCQAcJgBwmADAYQIAhwkAHCYAcNg33r/CedAG
+ F2MAAAAASUVORK5CYIIoAAAAQAAAAIAAAAABACAAAAAAAABCAAAAAAAAAAAAAAAAAAAAAAAA/Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/4uL
- i/++vr7/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6
- uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6
- uv+6urr/urq6/7q6uv+6urr/urq6/76+vv+Li4v/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/729vf//////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////+9vb3/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
- //+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6uv///////Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/7q6
- uv///////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//////+6urr/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/729vf//////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////+9vb3/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8ICAj/CAgI/4uLi/++vr7/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6
- uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6
- uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/7q6uv+6urr/urq6/76+vv+Li4v/CAgI/wgI
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
- CP8ICAj/CAgI/wgICP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAAAABgAAAAAQAgAAAAAACAJQAAAAAAAAAA
+ AAAAAAAAAAAAAPz8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAACgAAAAoAAAAUAAAAAEAIAAAAAAAQBoAAAAAAAAAAAAAAAAAAAAAAAD8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAIAAAAEAA
+ AAABACAAAAAAAIAQAAAAAAAAAAAAAAAAAAAAAAAA/Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAABgA
+ AAAwAAAAAQAgAAAAAABgCQAAAAAAAAAAAAAAAAAAAAAAAPz8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8
+ /P8ICAj/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAUAAAAKAAAAAEAIAAAAAAAkAYAAAAA
+ AAAAAAAAAAAAAAAAAAD8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP8ICAj//Pz8//z8/P8ICAj/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI/wgICP/8/Pz//Pz8/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI//z8/P/8/Pz/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAoAAAAEAAAACAAAAABACAAAAAAAEAEAAAAAAAAAAAAAAAAAAAAAAAA/Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI//z8
+ /P/8/Pz/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgI
+ CP/8/Pz//Pz8/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P8ICAj//Pz8//z8/P8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz/CAgI//z8/P/8/Pz/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8/wgICP/8/Pz//Pz8/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P8ICAj//Pz8//z8/P8ICAj//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz/CAgI//z8/P/8/Pz/CAgI//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP/8/Pz//Pz8/wgICP/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj//Pz8//z8/P8ICAj//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI//z8/P/8/Pz/CAgI//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wgICP/8/Pz//Pz8/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P8ICAj//Pz8//z8/P8ICAj//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/CAgI//z8/P/8/Pz/CAgI/wgI
+ CP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP8ICAj/CAgI/wgICP/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8/wAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAQAAAAIAAAAABAAgAAAAAAAAQ
- AAAAAAAAAAAAAAABAAAAAQAAAAAAAAEBAQACAgIAAwMDAAQEBAAFBQUABgYGAAcHBwAICAgACQkJAAoK
- CgALCwsADAwMAA0NDQAODg4ADw8PABAQEAAREREAEhISABMTEwAUFBQAFRUVABYWFgAXFxcAGBgYABkZ
- GQAaGhoAGxsbABwcHAAdHR0AHh4eAB8fHwAgICAAISEhACIiIgAjIyMAJCQkACUlJQAmJiYAJycnACgo
- KAApKSkAKioqACsrKwAsLCwALS0tAC4uLgAvLy8AMDAwADExMQAyMjIAMzMzADQ0NAA1NTUANjY2ADc3
- NwA4ODgAOTk5ADo6OgA7OzsAPDw8AD09PQA+Pj4APz8/AEBAQABBQUEAQkJCAENDQwBEREQARUVFAEZG
- RgBHR0cASEhIAElJSQBKSkoAS0tLAExMTABNTU0ATk5OAE9PTwBQUFAAUVFRAFJSUgBTU1MAVFRUAFVV
- VQBWVlYAV1dXAFhYWABZWVkAWlpaAFtbWwBcXFwAXV1dAF5eXgBfX18AYGBgAGFhYQBiYmIAY2NjAGRk
- ZABlZWUAZmZmAGdnZwBoaGgAaWlpAGpqagBra2sAbGxsAG1tbQBubm4Ab29vAHBwcABxcXEAcnJyAHNz
- cwB0dHQAdXV1AHZ2dgB3d3cAeHh4AHl5eQB6enoAe3t7AHx8fAB9fX0Afn5+AH9/fwCAgIAAgYGBAIKC
- ggCDg4MAhISEAIWFhQCGhoYAh4eHAIiIiACJiYkAioqKAIuLiwCMjIwAjY2NAI6OjgCPj48AkJCQAJGR
- kQCSkpIAk5OTAJSUlACVlZUAlpaWAJeXlwCYmJgAmZmZAJqamgCbm5sAnJycAJ2dnQCenp4An5+fAKCg
- oAChoaEAoqKiAKOjowCkpKQApaWlAKampgCnp6cAqKioAKmpqQCqqqoAq6urAKysrACtra0Arq6uAK+v
- rwCwsLAAsbGxALKysgCzs7MAtLS0ALW1tQC2trYAt7e3ALi4uAC5ubkAurq6ALu7uwC8vLwAvb29AL6+
- vgC/v78AwMDAAMHBwQDCwsIAw8PDAMTExADFxcUAxsbGAMfHxwDIyMgAycnJAMrKygDLy8sAzMzMAM3N
- zQDOzs4Az8/PANDQ0ADR0dEA0tLSANPT0wDU1NQA1dXVANbW1gDX19cA2NjYANnZ2QDa2toA29vbANzc
- 3ADd3d0A3t7eAN/f3wDg4OAA4eHhAOLi4gDj4+MA5OTkAOXl5QDm5uYA5+fnAOjo6ADp6ekA6urqAOvr
- 6wDs7OwA7e3tAO7u7gDv7+8A8PDwAPHx8QDy8vIA8/PzAPT09AD19fUA9vb2APf39wD4+PgA+fn5APr6
- +gD7+/sA/Pz8AP39/QD+/v4A////AAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgI
- CPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgI
- CAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgI
- CAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwI
- CAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgI
- CPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgI
- CAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgI
- CAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwI
- CAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgI
- CPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgI
- CAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgI
- CAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwI
- CAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgICAgICAj8/Pz8/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgICAgICAgICAgI/Pz8
- /Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwICAgICAgICAgICAgI
- CPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8CAgICAgICAgI
- CAgICAj8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/AgICAgI
- CAgICAgICAgI/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PwI
- CAgICAgICAgICAgICPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
- /Pz8CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
- CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAA==
+ AAA=
\ No newline at end of file
diff --git a/UnityLauncher/Form2.Designer.cs b/UnityLauncher/Form2.Designer.cs
new file mode 100644
index 0000000..5f5e19c
--- /dev/null
+++ b/UnityLauncher/Form2.Designer.cs
@@ -0,0 +1,154 @@
+namespace UnityLauncher
+{
+ partial class Form2
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.label1 = new System.Windows.Forms.Label();
+ this.lstUnityVersions = new System.Windows.Forms.ListBox();
+ this.btnCancelUpgrade = new System.Windows.Forms.Button();
+ this.btnConfirmUpgrade = new System.Windows.Forms.Button();
+ this.txtUpgradeCurrentVersion = new System.Windows.Forms.TextBox();
+ this.label2 = new System.Windows.Forms.Label();
+ this.btn_GoInstallMissingVersion = new System.Windows.Forms.Button();
+ this.btn_OpenMissingVersionReleasePage = new System.Windows.Forms.Button();
+ this.SuspendLayout();
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(16, 21);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(118, 13);
+ this.label1.TabIndex = 0;
+ this.label1.Text = "Current Project Version:";
+ //
+ // lstUnityVersions
+ //
+ this.lstUnityVersions.FormattingEnabled = true;
+ this.lstUnityVersions.Location = new System.Drawing.Point(12, 104);
+ this.lstUnityVersions.Name = "lstUnityVersions";
+ this.lstUnityVersions.Size = new System.Drawing.Size(235, 303);
+ this.lstUnityVersions.TabIndex = 1;
+ this.lstUnityVersions.KeyDown += new System.Windows.Forms.KeyEventHandler(this.lstUnityVersions_KeyDown);
+ //
+ // btnCancelUpgrade
+ //
+ this.btnCancelUpgrade.Location = new System.Drawing.Point(12, 413);
+ this.btnCancelUpgrade.Name = "btnCancelUpgrade";
+ this.btnCancelUpgrade.Size = new System.Drawing.Size(95, 56);
+ this.btnCancelUpgrade.TabIndex = 2;
+ this.btnCancelUpgrade.Text = "Cancel";
+ this.btnCancelUpgrade.UseVisualStyleBackColor = true;
+ this.btnCancelUpgrade.Click += new System.EventHandler(this.btnCancelUpgrade_Click);
+ //
+ // btnConfirmUpgrade
+ //
+ this.btnConfirmUpgrade.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.btnConfirmUpgrade.Location = new System.Drawing.Point(113, 413);
+ this.btnConfirmUpgrade.Name = "btnConfirmUpgrade";
+ this.btnConfirmUpgrade.Size = new System.Drawing.Size(136, 56);
+ this.btnConfirmUpgrade.TabIndex = 3;
+ this.btnConfirmUpgrade.Text = "Upgrade Project";
+ this.btnConfirmUpgrade.UseVisualStyleBackColor = true;
+ this.btnConfirmUpgrade.Click += new System.EventHandler(this.btnConfirmUpgrade_Click);
+ //
+ // txtUpgradeCurrentVersion
+ //
+ this.txtUpgradeCurrentVersion.Enabled = false;
+ this.txtUpgradeCurrentVersion.Location = new System.Drawing.Point(136, 18);
+ this.txtUpgradeCurrentVersion.Name = "txtUpgradeCurrentVersion";
+ this.txtUpgradeCurrentVersion.Size = new System.Drawing.Size(111, 20);
+ this.txtUpgradeCurrentVersion.TabIndex = 4;
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(9, 85);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(120, 13);
+ this.label2.TabIndex = 5;
+ this.label2.Text = "Available Unity Versions";
+ //
+ // btn_GoInstallMissingVersion
+ //
+ this.btn_GoInstallMissingVersion.Location = new System.Drawing.Point(136, 44);
+ this.btn_GoInstallMissingVersion.Name = "btn_GoInstallMissingVersion";
+ this.btn_GoInstallMissingVersion.Size = new System.Drawing.Size(111, 22);
+ this.btn_GoInstallMissingVersion.TabIndex = 6;
+ this.btn_GoInstallMissingVersion.Text = "Download";
+ this.btn_GoInstallMissingVersion.UseVisualStyleBackColor = true;
+ this.btn_GoInstallMissingVersion.Click += new System.EventHandler(this.btn_GoInstallMissingVersion_Click);
+ //
+ // btn_OpenMissingVersionReleasePage
+ //
+ this.btn_OpenMissingVersionReleasePage.Location = new System.Drawing.Point(19, 44);
+ this.btn_OpenMissingVersionReleasePage.Name = "btn_OpenMissingVersionReleasePage";
+ this.btn_OpenMissingVersionReleasePage.Size = new System.Drawing.Size(111, 22);
+ this.btn_OpenMissingVersionReleasePage.TabIndex = 7;
+ this.btn_OpenMissingVersionReleasePage.Text = "Open Release Page";
+ this.btn_OpenMissingVersionReleasePage.UseVisualStyleBackColor = true;
+ this.btn_OpenMissingVersionReleasePage.Click += new System.EventHandler(this.btn_OpenMissingVersionReleasePage_Click);
+ //
+ // Form2
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(259, 476);
+ this.Controls.Add(this.btn_OpenMissingVersionReleasePage);
+ this.Controls.Add(this.btn_GoInstallMissingVersion);
+ this.Controls.Add(this.label2);
+ this.Controls.Add(this.txtUpgradeCurrentVersion);
+ this.Controls.Add(this.btnConfirmUpgrade);
+ this.Controls.Add(this.btnCancelUpgrade);
+ this.Controls.Add(this.lstUnityVersions);
+ this.Controls.Add(this.label1);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "Form2";
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+ this.Text = "Missing Exact Unity Version";
+ this.TopMost = true;
+ this.Load += new System.EventHandler(this.Form2_Load);
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.ListBox lstUnityVersions;
+ private System.Windows.Forms.Button btnCancelUpgrade;
+ private System.Windows.Forms.Button btnConfirmUpgrade;
+ private System.Windows.Forms.TextBox txtUpgradeCurrentVersion;
+ private System.Windows.Forms.Label label2;
+ private System.Windows.Forms.Button btn_GoInstallMissingVersion;
+ private System.Windows.Forms.Button btn_OpenMissingVersionReleasePage;
+ }
+}
\ No newline at end of file
diff --git a/UnityLauncher/Form2.cs b/UnityLauncher/Form2.cs
new file mode 100644
index 0000000..d8df7aa
--- /dev/null
+++ b/UnityLauncher/Form2.cs
@@ -0,0 +1,118 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using UnityLauncherTools;
+
+namespace UnityLauncher
+{
+ public partial class Form2 : Form
+ {
+ public static string currentVersion = "";
+
+ public Form2()
+ {
+ InitializeComponent();
+ }
+
+ private void Form2_Load(object sender, EventArgs e)
+ {
+ Start();
+ }
+
+ void Start()
+ {
+ // update unity installations list
+ lstUnityVersions.Items.AddRange(Form1.unityList.Keys.ToArray());
+
+ // show available versions, autoselect nearest one
+ if (string.IsNullOrEmpty(currentVersion) == false)
+ {
+ string nearestVersion = Tools.FindNearestVersion(currentVersion, Form1.unityList.Keys.ToList());
+
+ // preselect most likely version
+ int likelyIndex = lstUnityVersions.FindString(nearestVersion);
+ if (likelyIndex > -1)
+ {
+ lstUnityVersions.SetSelected(likelyIndex, true);
+ }
+ else
+ {
+ // just select first item then
+ lstUnityVersions.SetSelected(0, true);
+ }
+
+ // enable release and dl buttons
+ btn_GoInstallMissingVersion.Enabled = true;
+ btn_OpenMissingVersionReleasePage.Enabled = true;
+
+ }
+ else // we dont have current version
+ {
+ btn_GoInstallMissingVersion.Enabled = false;
+ btn_OpenMissingVersionReleasePage.Enabled = false;
+
+ currentVersion = "None";
+ // just select first item then
+ if (lstUnityVersions != null && lstUnityVersions.Items.Count > 0) lstUnityVersions.SetSelected(0, true);
+ }
+
+ // fill textbox
+ txtUpgradeCurrentVersion.Text = currentVersion;
+ }
+
+ #region UI Events
+
+ private void btnConfirmUpgrade_Click(object sender, EventArgs e)
+ {
+ UpgradeToSelected();
+ }
+
+ private void btnCancelUpgrade_Click(object sender, EventArgs e)
+ {
+ DialogResult = DialogResult.Cancel;
+ }
+
+ private void btn_OpenMissingVersionReleasePage_Click(object sender, EventArgs e)
+ {
+ DialogResult = DialogResult.Ignore; // opens release notes
+ }
+
+ private void btn_GoInstallMissingVersion_Click(object sender, EventArgs e)
+ {
+ DialogResult = DialogResult.Retry; // download package
+ }
+
+ #endregion
+
+ private void lstUnityVersions_KeyDown(object sender, KeyEventArgs e)
+ {
+ if (e.KeyCode == Keys.Return)
+ {
+ UpgradeToSelected();
+ }
+ else if (e.KeyCode == Keys.Escape)
+ {
+ DialogResult = DialogResult.Cancel;
+ }
+ }
+
+ void UpgradeToSelected()
+ {
+ if (lstUnityVersions.SelectedIndex > -1)
+ {
+ currentVersion = lstUnityVersions.Items[lstUnityVersions.SelectedIndex].ToString();
+ DialogResult = DialogResult.Yes;
+ }
+ else
+ {
+ // no version selected
+ }
+ }
+ }
+}
diff --git a/UnityLauncher/Form2.resx b/UnityLauncher/Form2.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/UnityLauncher/Form2.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/UnityLauncher/PreviousVersion.txt b/UnityLauncher/PreviousVersion.txt
new file mode 100644
index 0000000..03acb06
Binary files /dev/null and b/UnityLauncher/PreviousVersion.txt differ
diff --git a/UnityLauncher/Program.cs b/UnityLauncher/Program.cs
index 8ed1598..eeeb145 100644
--- a/UnityLauncher/Program.cs
+++ b/UnityLauncher/Program.cs
@@ -1,6 +1,5 @@
using System;
using System.Collections.Generic;
-using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
@@ -14,9 +13,23 @@ static class Program
[STAThread]
static void Main()
{
+ /*
+ // TODO allow only single instance https://stackoverflow.com/a/6486341/5452781
+ bool result = false;
+ var mutex = new System.Threading.Mutex(true, "UniqueAppId", out result);
+
+ if (result == false)
+ {
+ // another instance already running, decide what to do
+ MessageBox.Show("Another instance is already running.");
+ return;
+ }*/
+
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
+
+ //GC.KeepAlive(mutex);
}
}
}
diff --git a/UnityLauncher/Properties/AssemblyInfo.cs b/UnityLauncher/Properties/AssemblyInfo.cs
index 002ed6b..721ded3 100644
--- a/UnityLauncher/Properties/AssemblyInfo.cs
+++ b/UnityLauncher/Properties/AssemblyInfo.cs
@@ -10,7 +10,7 @@
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("UnityCoder.com")]
[assembly: AssemblyProduct("UnityLauncher")]
-[assembly: AssemblyCopyright("Copyright © 2017")]
+[assembly: AssemblyCopyright("Copyright © 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
diff --git a/UnityLauncher/Properties/Settings.Designer.cs b/UnityLauncher/Properties/Settings.Designer.cs
index 7b435b4..89b70cd 100644
--- a/UnityLauncher/Properties/Settings.Designer.cs
+++ b/UnityLauncher/Properties/Settings.Designer.cs
@@ -12,7 +12,7 @@ namespace UnityLauncher.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.1.0.0")]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.8.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -61,5 +61,100 @@ public bool minimizeToTaskbar {
this["packageFolders"] = value;
}
}
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("True")]
+ public bool closeAfterExplorer {
+ get {
+ return ((bool)(this["closeAfterExplorer"]));
+ }
+ set {
+ this["closeAfterExplorer"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("False")]
+ public bool closeAfterProject {
+ get {
+ return ((bool)(this["closeAfterProject"]));
+ }
+ set {
+ this["closeAfterProject"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("600")]
+ public int formWidth {
+ get {
+ return ((int)(this["formWidth"]));
+ }
+ set {
+ this["formWidth"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("650")]
+ public int formHeight {
+ get {
+ return ((int)(this["formHeight"]));
+ }
+ set {
+ this["formHeight"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ public int[] gridColumnWidths {
+ get {
+ return ((int[])(this["gridColumnWidths"]));
+ }
+ set {
+ this["gridColumnWidths"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("False")]
+ public bool showArgumentsColumn {
+ get {
+ return ((bool)(this["showArgumentsColumn"]));
+ }
+ set {
+ this["showArgumentsColumn"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("False")]
+ public bool showGitBranchColumn {
+ get {
+ return ((bool)(this["showGitBranchColumn"]));
+ }
+ set {
+ this["showGitBranchColumn"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("False")]
+ public bool useDarkSkin {
+ get {
+ return ((bool)(this["useDarkSkin"]));
+ }
+ set {
+ this["useDarkSkin"] = value;
+ }
+ }
}
}
diff --git a/UnityLauncher/Properties/Settings.settings b/UnityLauncher/Properties/Settings.settings
index 7a8ab9b..b18b7e0 100644
--- a/UnityLauncher/Properties/Settings.settings
+++ b/UnityLauncher/Properties/Settings.settings
@@ -15,5 +15,29 @@
<?xml version="1.0" encoding="utf-16"?>
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
+
+ True
+
+
+ False
+
+
+ 600
+
+
+ 650
+
+
+
+
+
+ False
+
+
+ False
+
+
+ False
+
\ No newline at end of file
diff --git a/UnityLauncher/Tools.cs b/UnityLauncher/Tools.cs
new file mode 100644
index 0000000..1dc5e63
--- /dev/null
+++ b/UnityLauncher/Tools.cs
@@ -0,0 +1,418 @@
+using Microsoft.Win32;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.IO;
+using System.Linq;
+using System.Net;
+using System.Text;
+using System.Text.RegularExpressions;
+using System.Windows.Forms;
+
+namespace UnityLauncherTools
+{
+ public static class Tools
+ {
+ ///
+ /// open url with default browser
+ ///
+ ///
+ public static void OpenURL(string url)
+ {
+ Process.Start(url);
+ }
+
+ ///
+ /// reads .git/HEAD file from the project to get current branch name
+ ///
+ ///
+ ///
+ public static string ReadGitBranchInfo(string projectPath)
+ {
+ string results = null;
+ DirectoryInfo gitDirectory = FindDir(".git", projectPath);
+ if (gitDirectory != null)
+ {
+ string branchFile = Path.Combine(gitDirectory.FullName, "HEAD");
+ if (File.Exists(branchFile))
+ {
+ results = File.ReadAllText(branchFile);
+ // get branch only
+ int pos = results.LastIndexOf("/") + 1;
+ results = results.Substring(pos, results.Length - pos);
+ }
+ }
+ return results;
+ }
+
+ ///
+ /// Searches for a directory beginning with "startPath".
+ /// If the directory is not found, then parent folders are searched until
+ /// either it is found or the root folder has been reached.
+ /// Null is returned if the directory was not found.
+ ///
+ ///
+ ///
+ ///
+ public static DirectoryInfo FindDir(string dirName, string startPath)
+ {
+ DirectoryInfo dirInfo = new DirectoryInfo(Path.Combine(startPath, dirName));
+ while (!dirInfo.Exists)
+ {
+ if (dirInfo.Parent.Parent == null)
+ {
+ return null;
+ }
+ dirInfo = new DirectoryInfo(Path.Combine(dirInfo.Parent.Parent.FullName, dirName));
+ }
+ return dirInfo;
+ }
+
+ ///
+ /// returns last-write-time for a file or folder
+ ///
+ /// full path to file or folder
+ ///
+ public static DateTime? GetLastModifiedTime(string path)
+ {
+ if (File.Exists(path) == true || Directory.Exists(path) == true)
+ {
+ DateTime modification = File.GetLastWriteTime(path);
+ return modification;
+ }
+ else
+ {
+ return null;
+ }
+ }
+
+ ///
+ /// reads LauncherArguments.txt file from ProjectSettings-folder
+ ///
+ /// full project root path
+ /// default filename is "LauncherArguments.txt"
+ ///
+ public static string ReadCustomLaunchArguments(string projectPath, string launcherArgumentsFile)
+ {
+ string results = null;
+ string argumentsFile = Path.Combine(projectPath, "ProjectSettings", launcherArgumentsFile);
+ if (File.Exists(argumentsFile) == true)
+ {
+ results = File.ReadAllText(argumentsFile);
+ }
+ return results;
+ }
+
+ ///
+ /// tries to find next higher version
+ ///
+ ///
+ ///
+ ///
+ public static string FindNearestVersion(string currentVersion, List allAvailable)
+ {
+ if (currentVersion.Contains("2019"))
+ {
+ return FindNearestVersionFromSimilarVersions(currentVersion, allAvailable.Where(x => x.Contains("2019")));
+ }
+ if (currentVersion.Contains("2018"))
+ {
+ return FindNearestVersionFromSimilarVersions(currentVersion, allAvailable.Where(x => x.Contains("2018")));
+ }
+ if (currentVersion.Contains("2017"))
+ {
+ return FindNearestVersionFromSimilarVersions(currentVersion, allAvailable.Where(x => x.Contains("2017")));
+ }
+ return FindNearestVersionFromSimilarVersions(currentVersion, allAvailable.Where(x => !x.Contains("2017")));
+ }
+
+ private static string FindNearestVersionFromSimilarVersions(string version, IEnumerable allAvailable)
+ {
+ Dictionary stripped = new Dictionary();
+ var enumerable = allAvailable as string[] ?? allAvailable.ToArray();
+
+ foreach (var t in enumerable)
+ {
+ stripped.Add(new Regex("[a-zA-z]").Replace(t, "."), t);
+ }
+
+ var comparableVersion = new Regex("[a-zA-z]").Replace(version, ".");
+ if (!stripped.ContainsKey(comparableVersion))
+ {
+ stripped.Add(comparableVersion, version);
+ }
+
+ var comparables = stripped.Keys.OrderBy(x => x).ToList();
+ var actualIndex = comparables.IndexOf(comparableVersion);
+
+ if (actualIndex < stripped.Count - 1) return stripped[comparables[actualIndex + 1]];
+ return null;
+ }
+
+ ///
+ /// opens release notes url in default browser
+ ///
+ ///
+ ///
+ public static bool OpenReleaseNotes(string version)
+ {
+ bool result = false;
+ var url = GetUnityReleaseURL(version);
+ if (string.IsNullOrEmpty(url) == false)
+ {
+ Process.Start(url);
+ result = true;
+ }
+ else
+ {
+ }
+ return result;
+ }
+
+ ///
+ /// returns release page URL to given version
+ /// NOTE: doesnt parse alpha versions, since they are not visible
+ ///
+ ///
+ ///
+ public static string GetUnityReleaseURL(string version)
+ {
+ string url = "";
+ if (VersionIsArchived(version))
+ {
+ // remove f#
+ version = Regex.Replace(version, @"f.", "", RegexOptions.IgnoreCase);
+
+ string padding = "unity-";
+ string whatsnew = "whats-new";
+
+ if (version.Contains("5.6")) padding = "";
+ if (version.Contains("2017.1")) whatsnew = "whatsnew";
+ if (version.Contains("2018.2")) whatsnew = "whatsnew";
+ if (version.Contains("2018.3")) padding = "";
+ if (version.Contains("2018.1")) whatsnew = "whatsnew"; // doesnt work
+ if (version.Contains("2017.4.")) padding = ""; // doesnt work for all versions
+ if (version.Contains("2018.4.")) padding = "";
+ if (version.Contains("2019")) padding = "";
+ url = "https://unity3d.com/unity/" + whatsnew + "/" + padding + version;
+ }
+ else
+ if (VersionIsPatch(version))
+ {
+ url = "https://unity3d.com/unity/qa/patch-releases/" + version;
+ }
+ else
+ if (VersionIsBeta(version))
+ {
+ url = "https://unity3d.com/unity/beta/" + version;
+ }
+ else
+ if (VersionIsAlpha(version))
+ {
+ url = "https://unity3d.com/unity/alpha/" + version;
+ }
+
+ Console.WriteLine(url);
+
+ return url;
+ }
+
+ // if version contains *f* its archived version
+ public static bool VersionIsArchived(string version)
+ {
+ return version.Contains("f");
+ }
+
+ public static bool VersionIsPatch(string version)
+ {
+ return version.Contains("p");
+ }
+
+ public static bool VersionIsBeta(string version)
+ {
+ return version.Contains("b");
+ }
+
+ public static bool VersionIsAlpha(string version)
+ {
+ return version.Contains("a");
+ }
+
+ ///
+ /// uninstall context menu item from registry
+ ///
+ ///
+ public static void RemoveContextMenuRegistry(string contextRegRoot)
+ {
+ RegistryKey key = Registry.CurrentUser.OpenSubKey(contextRegRoot, true);
+ if (key != null)
+ {
+ var appName = "UnityLauncher";
+ RegistryKey appKey = Registry.CurrentUser.OpenSubKey(contextRegRoot + "\\" + appName, false);
+ if (appKey != null)
+ {
+ key.DeleteSubKeyTree(appName);
+ //SetStatus("Removed context menu registry items");
+ }
+ else
+ {
+ //SetStatus("Nothing to uninstall..");
+ }
+ }
+ else
+ {
+ //SetStatus("Error> Cannot find registry key: " + contextRegRoot);
+ }
+ }
+
+ ///
+ /// install context menu item to registry
+ ///
+ ///
+ public static void AddContextMenuRegistry(string contextRegRoot)
+ {
+ RegistryKey key = Registry.CurrentUser.OpenSubKey(contextRegRoot, true);
+
+ // add folder if missing
+ if (key == null)
+ {
+ key = Registry.CurrentUser.CreateSubKey(@"Software\Classes\Directory\Background\Shell");
+ }
+
+ if (key != null)
+ {
+ var appName = "UnityLauncher";
+ key.CreateSubKey(appName);
+
+ key = key.OpenSubKey(appName, true);
+ key.SetValue("", "Open with UnityLauncher");
+ key.SetValue("Icon", "\"" + Application.ExecutablePath + "\"");
+
+ key.CreateSubKey("command");
+ key = key.OpenSubKey("command", true);
+ var executeString = "\"" + Application.ExecutablePath + "\"";
+ executeString += " -projectPath \"%V\"";
+ key.SetValue("", executeString);
+ }
+ else
+ {
+ Console.WriteLine("Error> Cannot find registry key: " + contextRegRoot);
+ }
+ }
+
+
+ ///
+ /// parse project version from ProjectSettings/ data
+ ///
+ /// project base path
+ ///
+ public static string GetProjectVersion(string path)
+ {
+ var version = "";
+
+ if (File.Exists(Path.Combine(path, "ProjectVersionOverride.txt")))
+ {
+ version = File.ReadAllText(Path.Combine(path, "ProjectVersionOverride.txt"));
+ }
+ else if (Directory.Exists(Path.Combine(path, "ProjectSettings")))
+ {
+ var versionPath = Path.Combine(path, "ProjectSettings", "ProjectVersion.txt");
+ if (File.Exists(versionPath) == true) // 5.x and later
+ {
+ var data = File.ReadAllLines(versionPath);
+
+ if (data != null && data.Length > 0)
+ {
+ var dd = data[0];
+ // check first line
+ if (dd.Contains("m_EditorVersion"))
+ {
+ var t = dd.Split(new string[] { "m_EditorVersion: " }, StringSplitOptions.None);
+ if (t != null && t.Length > 0)
+ {
+ version = t[1].Trim();
+ }
+ else
+ {
+ throw new InvalidDataException("invalid version data:" + data);
+ }
+ }
+ else
+ {
+ MessageBox.Show("Cannot find m_EditorVersion in '" + versionPath + "'.\n\nFile Content:\n" + string.Join("\n", data).ToString());
+ }
+ }
+ else
+ {
+ MessageBox.Show("Invalid projectversion data found in '" + versionPath + "'.\n\nFile Content:\n" + string.Join("\n", data).ToString());
+ }
+ }
+ else // maybe its 4.x
+ {
+ versionPath = Path.Combine(path, "ProjectSettings", "ProjectSettings.asset");
+ if (File.Exists(versionPath) == true)
+ {
+ // first try if its ascii format
+ var data = File.ReadAllLines(versionPath);
+ if (data != null && data.Length > 0 && data[0].IndexOf("YAML") > -1)
+ {
+ // in text format, then we need to try library file instead
+ var newVersionPath = Path.Combine(path, "Library", "AnnotationManager");
+ if (File.Exists(newVersionPath) == true)
+ {
+ versionPath = newVersionPath;
+ }
+ }
+
+ // try to get version data out from binary asset
+ var binData = File.ReadAllBytes(versionPath);
+ if (binData != null && binData.Length > 0)
+ {
+ int dataLen = 7;
+ int startIndex = 20;
+ var bytes = new byte[dataLen];
+ for (int i = 0; i < dataLen; i++)
+ {
+ bytes[i] = binData[startIndex + i];
+ }
+ version = Encoding.UTF8.GetString(bytes);
+ }
+ }
+ }
+ }
+ return version;
+ }
+
+ ///
+ /// checks file version info
+ ///
+ ///
+ ///
+ public static string GetFileVersionData(string path)
+ {
+ FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(path);
+ return fvi.ProductName.Replace("(64-bit)", "").Trim();
+ //return fvi.FileVersion.Replace("(64-bit)", "").Trim();
+ }
+
+ ///
+ /// launch windows explorer to selected project folder
+ ///
+ ///
+ public static bool LaunchExplorer(string folder)
+ {
+ bool result = false;
+ if (Directory.Exists(folder) == true)
+ {
+ Process.Start(folder);
+ result = true;
+ }
+ else
+ {
+ result = false;
+ }
+ return result;
+ }
+
+ }
+}
diff --git a/UnityLauncher/UnityLauncher.csproj b/UnityLauncher/UnityLauncher.csproj
index 9f523e1..8bd73a9 100644
--- a/UnityLauncher/UnityLauncher.csproj
+++ b/UnityLauncher/UnityLauncher.csproj
@@ -56,7 +56,10 @@
true
- true
+ false
+
+
+ unitylauncher.ico
@@ -72,17 +75,27 @@
+
Form
Form1.cs
+
+ Form
+
+
+ Form2.cs
+
Form1.cs
+
+ Form2.cs
+
ResXFileCodeGenerator
Resources.Designer.cs
@@ -113,5 +126,13 @@
false
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/UnityLauncher/unitylauncher.ico b/UnityLauncher/unitylauncher.ico
new file mode 100644
index 0000000..9aa7a18
Binary files /dev/null and b/UnityLauncher/unitylauncher.ico differ