Browse Source

C&C Remastered Map Editor

Initial commit of C&C Remastered Map Editor code
PG-SteveT 5 years ago
parent
commit
e37e174be1
100 changed files with 33099 additions and 0 deletions
  1. 36 0
      CnCTDRAMapEditor/App.config
  2. 536 0
      CnCTDRAMapEditor/CnCTDRAMapEditor.csproj
  3. 518 0
      CnCTDRAMapEditor/Controls/BasicSettings.Designer.cs
  4. 80 0
      CnCTDRAMapEditor/Controls/BasicSettings.cs
  5. 120 0
      CnCTDRAMapEditor/Controls/BasicSettings.resx
  6. 75 0
      CnCTDRAMapEditor/Controls/BriefingSettings.Designer.cs
  7. 29 0
      CnCTDRAMapEditor/Controls/BriefingSettings.cs
  8. 120 0
      CnCTDRAMapEditor/Controls/BriefingSettings.resx
  9. 50 0
      CnCTDRAMapEditor/Controls/ImageTooltip.Designer.cs
  10. 64 0
      CnCTDRAMapEditor/Controls/ImageTooltip.cs
  11. 52 0
      CnCTDRAMapEditor/Controls/MapPanel.Designer.cs
  12. 535 0
      CnCTDRAMapEditor/Controls/MapPanel.cs
  13. 123 0
      CnCTDRAMapEditor/Controls/MapPanel.resx
  14. 50 0
      CnCTDRAMapEditor/Controls/MenuButton.Designer.cs
  15. 74 0
      CnCTDRAMapEditor/Controls/MenuButton.cs
  16. 345 0
      CnCTDRAMapEditor/Controls/ObjectProperties.Designer.cs
  17. 272 0
      CnCTDRAMapEditor/Controls/ObjectProperties.cs
  18. 120 0
      CnCTDRAMapEditor/Controls/ObjectProperties.resx
  19. 375 0
      CnCTDRAMapEditor/Controls/PlayerSettings.Designer.cs
  20. 86 0
      CnCTDRAMapEditor/Controls/PlayerSettings.cs
  21. 120 0
      CnCTDRAMapEditor/Controls/PlayerSettings.resx
  22. 50 0
      CnCTDRAMapEditor/Controls/PropertiesComboBox.Designer.cs
  23. 65 0
      CnCTDRAMapEditor/Controls/PropertiesComboBox.cs
  24. 112 0
      CnCTDRAMapEditor/Controls/TerrainProperties.Designer.cs
  25. 158 0
      CnCTDRAMapEditor/Controls/TerrainProperties.cs
  26. 120 0
      CnCTDRAMapEditor/Controls/TerrainProperties.resx
  27. 50 0
      CnCTDRAMapEditor/Controls/TypeComboBox.Designer.cs
  28. 98 0
      CnCTDRAMapEditor/Controls/TypeComboBox.cs
  29. 158 0
      CnCTDRAMapEditor/Dialogs/ErrorMessageBox.Designer.cs
  30. 55 0
      CnCTDRAMapEditor/Dialogs/ErrorMessageBox.cs
  31. 120 0
      CnCTDRAMapEditor/Dialogs/ErrorMessageBox.resx
  32. 153 0
      CnCTDRAMapEditor/Dialogs/InviteMessageBox.Designer.cs
  33. 38 0
      CnCTDRAMapEditor/Dialogs/InviteMessageBox.cs
  34. 120 0
      CnCTDRAMapEditor/Dialogs/InviteMessageBox.resx
  35. 166 0
      CnCTDRAMapEditor/Dialogs/MapSettingsDialog.Designer.cs
  36. 157 0
      CnCTDRAMapEditor/Dialogs/MapSettingsDialog.cs
  37. 120 0
      CnCTDRAMapEditor/Dialogs/MapSettingsDialog.resx
  38. 301 0
      CnCTDRAMapEditor/Dialogs/NewMapDialog.Designer.cs
  39. 85 0
      CnCTDRAMapEditor/Dialogs/NewMapDialog.cs
  40. 120 0
      CnCTDRAMapEditor/Dialogs/NewMapDialog.resx
  41. 386 0
      CnCTDRAMapEditor/Dialogs/SteamDialog.Designer.cs
  42. 253 0
      CnCTDRAMapEditor/Dialogs/SteamDialog.cs
  43. 131 0
      CnCTDRAMapEditor/Dialogs/SteamDialog.resx
  44. 713 0
      CnCTDRAMapEditor/Dialogs/TeamTypesDialog.Designer.cs
  45. 504 0
      CnCTDRAMapEditor/Dialogs/TeamTypesDialog.cs
  46. 135 0
      CnCTDRAMapEditor/Dialogs/TeamTypesDialog.resx
  47. 687 0
      CnCTDRAMapEditor/Dialogs/TriggersDialog.Designer.cs
  48. 510 0
      CnCTDRAMapEditor/Dialogs/TriggersDialog.cs
  49. 123 0
      CnCTDRAMapEditor/Dialogs/TriggersDialog.resx
  50. 33 0
      CnCTDRAMapEditor/Event/RenderEventArgs.cs
  51. 32 0
      CnCTDRAMapEditor/Event/UndoRedoEventArgs.cs
  52. 72 0
      CnCTDRAMapEditor/Globals.cs
  53. 25 0
      CnCTDRAMapEditor/Interface/IBrowsableType.cs
  54. 21 0
      CnCTDRAMapEditor/Interface/ICellOccupier.cs
  55. 23 0
      CnCTDRAMapEditor/Interface/ICellOverlapper.cs
  56. 56 0
      CnCTDRAMapEditor/Interface/IGamePlugin.cs
  57. 21 0
      CnCTDRAMapEditor/Interface/INamedType.cs
  58. 23 0
      CnCTDRAMapEditor/Interface/ITechnoType.cs
  59. 29 0
      CnCTDRAMapEditor/Interface/ITool.cs
  60. 28 0
      CnCTDRAMapEditor/Interface/IWidget.cs
  61. 714 0
      CnCTDRAMapEditor/License.txt
  62. 660 0
      CnCTDRAMapEditor/MainForm.Designer.cs
  63. 1415 0
      CnCTDRAMapEditor/MainForm.cs
  64. 6856 0
      CnCTDRAMapEditor/MainForm.resx
  65. 185 0
      CnCTDRAMapEditor/Model/BasicSection.cs
  66. 24 0
      CnCTDRAMapEditor/Model/BriefingSection.cs
  67. 103 0
      CnCTDRAMapEditor/Model/Building.cs
  68. 166 0
      CnCTDRAMapEditor/Model/BuildingType.cs
  69. 193 0
      CnCTDRAMapEditor/Model/CellGrid.cs
  70. 137 0
      CnCTDRAMapEditor/Model/CellMetrics.cs
  71. 21 0
      CnCTDRAMapEditor/Model/CellTrigger.cs
  72. 71 0
      CnCTDRAMapEditor/Model/DirectionType.cs
  73. 172 0
      CnCTDRAMapEditor/Model/House.cs
  74. 82 0
      CnCTDRAMapEditor/Model/HouseType.cs
  75. 127 0
      CnCTDRAMapEditor/Model/Infantry.cs
  76. 100 0
      CnCTDRAMapEditor/Model/InfantryType.cs
  77. 681 0
      CnCTDRAMapEditor/Model/Map.cs
  78. 96 0
      CnCTDRAMapEditor/Model/MapSection.cs
  79. 250 0
      CnCTDRAMapEditor/Model/OccupierSet.cs
  80. 107 0
      CnCTDRAMapEditor/Model/OverlapperSet.cs
  81. 32 0
      CnCTDRAMapEditor/Model/Overlay.cs
  82. 128 0
      CnCTDRAMapEditor/Model/OverlayType.cs
  83. 30 0
      CnCTDRAMapEditor/Model/Smudge.cs
  84. 116 0
      CnCTDRAMapEditor/Model/SmudgeType.cs
  85. 37 0
      CnCTDRAMapEditor/Model/SteamSection.cs
  86. 158 0
      CnCTDRAMapEditor/Model/TeamType.cs
  87. 30 0
      CnCTDRAMapEditor/Model/Template.cs
  88. 133 0
      CnCTDRAMapEditor/Model/TemplateType.cs
  89. 71 0
      CnCTDRAMapEditor/Model/Terrain.cs
  90. 117 0
      CnCTDRAMapEditor/Model/TerrainType.cs
  91. 63 0
      CnCTDRAMapEditor/Model/TheaterType.cs
  92. 154 0
      CnCTDRAMapEditor/Model/Trigger.cs
  93. 29 0
      CnCTDRAMapEditor/Model/TypeItem.cs
  94. 83 0
      CnCTDRAMapEditor/Model/Unit.cs
  95. 137 0
      CnCTDRAMapEditor/Model/UnitType.cs
  96. 69 0
      CnCTDRAMapEditor/Model/Waypoint.cs
  97. 105 0
      CnCTDRAMapEditor/Program.cs
  98. 50 0
      CnCTDRAMapEditor/Properties/AssemblyInfo.cs
  99. 87 0
      CnCTDRAMapEditor/Properties/Resources.Designer.cs
  100. 9479 0
      CnCTDRAMapEditor/Properties/Resources.resx

+ 36 - 0
CnCTDRAMapEditor/App.config

@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+    <configSections>
+        <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+            <section name="MobiusEditor.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
+        </sectionGroup>
+        <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+            <section name="MobiusEditor.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false"/>
+        </sectionGroup>
+    </configSections>
+    <startup> 
+        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2"/>
+    </startup>
+    <applicationSettings>
+        <MobiusEditor.Properties.Settings>
+            <setting name="Quality" serializeAs="String">
+                <value>2</value>
+            </setting>
+        </MobiusEditor.Properties.Settings>
+    </applicationSettings>
+    <userSettings>
+        <MobiusEditor.Properties.Settings>
+            <setting name="ToolDialogPosition" serializeAs="String">
+                <value>0, 0</value>
+            </setting>
+            <setting name="ShowInviteWarning" serializeAs="String">
+                <value>True</value>
+            </setting>
+        </MobiusEditor.Properties.Settings>
+    </userSettings>
+    <runtime>
+      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+        <probing privatePath="bin" />
+      </assemblyBinding>
+    </runtime>
+</configuration>

+ 536 - 0
CnCTDRAMapEditor/CnCTDRAMapEditor.csproj

@@ -0,0 +1,536 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="15.0">
+  <Import Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{397CEF00-8930-4EC8-B15F-F7CF7193FB22}</ProjectGuid>
+    <OutputType>WinExe</OutputType>
+    <RootNamespace>MobiusEditor</RootNamespace>
+    <AssemblyName Condition="'$(Configuration)'=='Debug'">CnCTDRAMapEditorD</AssemblyName>
+    <AssemblyName Condition="'$(Configuration)'=='Release'">CnCTDRAMapEditor</AssemblyName>
+    <AssemblyName Condition="'$(Configuration)'=='Gold'">CnCTDRAMapEditor</AssemblyName>
+    <TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
+    <Deterministic>true</Deterministic>
+    <SccProjectName>SAK</SccProjectName>
+    <SccLocalPath>SAK</SccLocalPath>
+    <SccAuxPath>SAK</SccAuxPath>
+    <SccProvider>SAK</SccProvider>
+    <TargetFrameworkProfile />
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <PlatformTarget>x64</PlatformTarget>
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>TRACE;DEBUG;STEAMWORKS_WIN;STEAMWORKS_X64;DEVELOPER</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <LangVersion>7.3</LangVersion>
+    <Prefer32Bit>false</Prefer32Bit>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <PlatformTarget>x64</PlatformTarget>
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE;STEAMWORKS_WIN;STEAMWORKS_X64;DEVELOPER</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <LangVersion>7.3</LangVersion>
+    <Prefer32Bit>false</Prefer32Bit>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Gold|AnyCPU'">
+    <OutputPath>bin\Gold\</OutputPath>
+    <DefineConstants>TRACE;STEAMWORKS_WIN;STEAMWORKS_X64</DefineConstants>
+    <Optimize>true</Optimize>
+    <DebugType>pdbonly</DebugType>
+    <PlatformTarget>x64</PlatformTarget>
+    <LangVersion>7.3</LangVersion>
+    <ErrorReport>prompt</ErrorReport>
+    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
+    <Prefer32Bit>false</Prefer32Bit>
+  </PropertyGroup>
+  <PropertyGroup>
+    <ApplicationIcon>Resources\GameIcon00.ico</ApplicationIcon>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.IO.Compression" />
+    <Reference Include="System.IO.Compression.FileSystem" />
+    <Reference Include="System.Numerics" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Deployment" />
+    <Reference Include="System.Drawing" />
+    <Reference Include="System.Windows.Forms" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Controls\BasicSettings.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
+    <Compile Include="Controls\BasicSettings.Designer.cs">
+      <DependentUpon>BasicSettings.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Controls\BriefingSettings.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
+    <Compile Include="Controls\BriefingSettings.Designer.cs">
+      <DependentUpon>BriefingSettings.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Controls\ImageTooltip.cs">
+      <SubType>Component</SubType>
+    </Compile>
+    <Compile Include="Controls\ImageTooltip.Designer.cs">
+      <DependentUpon>ImageTooltip.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Controls\MapPanel.cs">
+      <SubType>Component</SubType>
+    </Compile>
+    <Compile Include="Controls\MapPanel.Designer.cs">
+      <DependentUpon>MapPanel.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Controls\MenuButton.cs">
+      <SubType>Component</SubType>
+    </Compile>
+    <Compile Include="Controls\MenuButton.Designer.cs">
+      <DependentUpon>MenuButton.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Controls\PropertiesComboBox.cs">
+      <SubType>Component</SubType>
+    </Compile>
+    <Compile Include="Controls\PropertiesComboBox.Designer.cs">
+      <DependentUpon>PropertiesComboBox.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Controls\TerrainProperties.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
+    <Compile Include="Controls\TerrainProperties.Designer.cs">
+      <DependentUpon>TerrainProperties.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Controls\ObjectProperties.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
+    <Compile Include="Controls\ObjectProperties.Designer.cs">
+      <DependentUpon>ObjectProperties.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Controls\PlayerSettings.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
+    <Compile Include="Controls\PlayerSettings.Designer.cs">
+      <DependentUpon>PlayerSettings.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Controls\TypeComboBox.cs">
+      <SubType>Component</SubType>
+    </Compile>
+    <Compile Include="Controls\TypeComboBox.Designer.cs">
+      <DependentUpon>TypeComboBox.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Dialogs\ErrorMessageBox.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Dialogs\ErrorMessageBox.Designer.cs">
+      <DependentUpon>ErrorMessageBox.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Dialogs\InviteMessageBox.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Dialogs\InviteMessageBox.Designer.cs">
+      <DependentUpon>InviteMessageBox.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Dialogs\MapSettingsDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Dialogs\MapSettingsDialog.Designer.cs">
+      <DependentUpon>MapSettingsDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Dialogs\NewMapDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Dialogs\NewMapDialog.Designer.cs">
+      <DependentUpon>NewMapDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Dialogs\SteamDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Dialogs\SteamDialog.Designer.cs">
+      <DependentUpon>SteamDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Dialogs\TriggersDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Dialogs\TriggersDialog.Designer.cs">
+      <DependentUpon>TriggersDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Dialogs\TeamTypesDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Dialogs\TeamTypesDialog.Designer.cs">
+      <DependentUpon>TeamTypesDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Event\RenderEventArgs.cs" />
+    <Compile Include="Event\UndoRedoEventArgs.cs" />
+    <Compile Include="Globals.cs" />
+    <Compile Include="Interface\IBrowsableType.cs" />
+    <Compile Include="Interface\ICellOccupier.cs" />
+    <Compile Include="Interface\ICellOverlapper.cs" />
+    <Compile Include="Interface\IGamePlugin.cs" />
+    <Compile Include="Interface\INamedType.cs" />
+    <Compile Include="Interface\ITechnoType.cs" />
+    <Compile Include="Interface\ITool.cs" />
+    <Compile Include="Interface\IWidget.cs" />
+    <Compile Include="MainForm.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="MainForm.Designer.cs">
+      <DependentUpon>MainForm.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Model\BasicSection.cs" />
+    <Compile Include="Model\BriefingSection.cs" />
+    <Compile Include="Model\Building.cs" />
+    <Compile Include="Model\CellGrid.cs" />
+    <Compile Include="Model\CellMetrics.cs" />
+    <Compile Include="Model\CellTrigger.cs" />
+    <Compile Include="Model\DirectionType.cs" />
+    <Compile Include="Model\House.cs" />
+    <Compile Include="Model\HouseType.cs" />
+    <Compile Include="Model\BuildingType.cs" />
+    <Compile Include="Model\Infantry.cs" />
+    <Compile Include="Model\Map.cs" />
+    <Compile Include="Model\MapSection.cs" />
+    <Compile Include="Model\OccupierSet.cs" />
+    <Compile Include="Model\OverlapperSet.cs" />
+    <Compile Include="Model\Overlay.cs" />
+    <Compile Include="Model\OverlayType.cs" />
+    <Compile Include="Model\Smudge.cs" />
+    <Compile Include="Model\SmudgeType.cs" />
+    <Compile Include="Model\SteamSection.cs" />
+    <Compile Include="Model\TeamType.cs" />
+    <Compile Include="Model\Template.cs" />
+    <Compile Include="Model\TemplateType.cs" />
+    <Compile Include="Model\Terrain.cs" />
+    <Compile Include="Model\TerrainType.cs" />
+    <Compile Include="Model\TheaterType.cs" />
+    <Compile Include="Model\Trigger.cs" />
+    <Compile Include="Model\InfantryType.cs" />
+    <Compile Include="Model\TypeItem.cs" />
+    <Compile Include="Model\Unit.cs" />
+    <Compile Include="Model\UnitType.cs" />
+    <Compile Include="Model\Waypoint.cs" />
+    <Compile Include="Program.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="RedAlert\ActionDataTypes.cs" />
+    <Compile Include="RedAlert\ActionTypes.cs" />
+    <Compile Include="RedAlert\BasicSection.cs" />
+    <Compile Include="RedAlert\BuildingTypes.cs" />
+    <Compile Include="RedAlert\Constants.cs" />
+    <Compile Include="RedAlert\DirectionTypes.cs" />
+    <Compile Include="RedAlert\EventTypes.cs" />
+    <Compile Include="RedAlert\GamePlugin.cs" />
+    <Compile Include="RedAlert\House.cs" />
+    <Compile Include="RedAlert\HouseTypes.cs" />
+    <Compile Include="RedAlert\InfantryTypes.cs" />
+    <Compile Include="RedAlert\MissionTypes.cs" />
+    <Compile Include="RedAlert\OverlayTypes.cs" />
+    <Compile Include="RedAlert\SmudgeTypes.cs" />
+    <Compile Include="RedAlert\TeamMissionTypes.cs" />
+    <Compile Include="RedAlert\TemplateTypes.cs" />
+    <Compile Include="RedAlert\TerrainTypes.cs" />
+    <Compile Include="RedAlert\TheaterTypes.cs" />
+    <Compile Include="RedAlert\UnitTypes.cs" />
+    <Compile Include="Render\MapRenderer.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamapplist.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamapps.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamclient.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamcontroller.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamfriends.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamgameserver.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamgameserverapps.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamgameserverclient.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamgameserverhttp.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamgameserverinventory.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamgameservernetworking.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamgameserverstats.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamgameserverugc.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamgameserverutils.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamhtmlsurface.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamhttp.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteaminput.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteaminventory.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteammatchmaking.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteammusic.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteammusicremote.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamnetworking.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamparentalsettings.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamremoteplay.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamremotestorage.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamscreenshots.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamugc.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamunifiedmessages.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamuser.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamuserstats.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamutils.cs" />
+    <Compile Include="Steamworks.NET\autogen\isteamvideo.cs" />
+    <Compile Include="Steamworks.NET\autogen\NativeMethods.cs" />
+    <Compile Include="Steamworks.NET\autogen\SteamCallbacks.cs" />
+    <Compile Include="Steamworks.NET\autogen\SteamConstants.cs" />
+    <Compile Include="Steamworks.NET\autogen\SteamEnums.cs" />
+    <Compile Include="Steamworks.NET\autogen\SteamStructs.cs" />
+    <Compile Include="Steamworks.NET\CallbackDispatcher.cs" />
+    <Compile Include="Steamworks.NET\CallbackIdentity.cs" />
+    <Compile Include="Steamworks.NET\InteropHelp.cs" />
+    <Compile Include="Steamworks.NET\ISteamMatchmakingResponses.cs" />
+    <Compile Include="Steamworks.NET\Packsize.cs" />
+    <Compile Include="Steamworks.NET\Steam.cs" />
+    <Compile Include="Steamworks.NET\types\MatchmakingTypes\gameserveritem_t.cs" />
+    <Compile Include="Steamworks.NET\types\MatchmakingTypes\servernetadr_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamClientPublic\CGameID.cs" />
+    <Compile Include="Steamworks.NET\types\SteamClientPublic\CSteamID.cs" />
+    <Compile Include="Steamworks.NET\types\SteamClientPublic\HAuthTicket.cs" />
+    <Compile Include="Steamworks.NET\types\SteamClient\SteamAPIWarningMessageHook_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamClient\SteamAPI_CheckCallbackRegistered_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamClient\SteamAPI_PostAPIResultInProcess_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamController\ControllerActionSetHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamController\ControllerAnalogActionHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamController\ControllerDigitalActionHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamController\ControllerHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamFriends\FriendsGroupID_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamHTMLSurface\HHTMLBrowser.cs" />
+    <Compile Include="Steamworks.NET\types\SteamHTTP\HTTPCookieContainerHandle.cs" />
+    <Compile Include="Steamworks.NET\types\SteamHTTP\HTTPRequestHandle.cs" />
+    <Compile Include="Steamworks.NET\types\SteamInput\InputActionSetHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamInput\InputAnalogActionHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamInput\InputDigitalActionHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamInput\InputHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamInventory\SteamInventoryResult_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamInventory\SteamInventoryUpdateHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamInventory\SteamItemDef_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamInventory\SteamItemInstanceID_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamMatchmaking\HServerListRequest.cs" />
+    <Compile Include="Steamworks.NET\types\SteamMatchmaking\HServerQuery.cs" />
+    <Compile Include="Steamworks.NET\types\SteamNetworking\SNetListenSocket_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamNetworking\SNetSocket_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamRemoteStorage\PublishedFileId_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamRemoteStorage\PublishedFileUpdateHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamRemoteStorage\UGCFileWriteStreamHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamRemoteStorage\UGCHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamScreenshots\ScreenshotHandle.cs" />
+    <Compile Include="Steamworks.NET\types\SteamTypes\AccountID_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamTypes\AppId_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamTypes\DepotId_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamTypes\ManifestId_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamTypes\PartyBeaconID_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamTypes\RTime32.cs" />
+    <Compile Include="Steamworks.NET\types\SteamTypes\SiteId_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamTypes\SteamAPICall_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamUGC\UGCQueryHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamUGC\UGCUpdateHandle_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamUnifiedMessages\ClientUnifiedMessageHandle.cs" />
+    <Compile Include="Steamworks.NET\types\SteamUserStats\SteamLeaderboardEntries_t.cs" />
+    <Compile Include="Steamworks.NET\types\SteamUserStats\SteamLeaderboard_t.cs" />
+    <Compile Include="Steamworks.NET\types\Steam_api_common\HSteamPipe.cs" />
+    <Compile Include="Steamworks.NET\types\Steam_api_common\HSteamUser.cs" />
+    <Compile Include="TiberianDawn\ActionTypes.cs" />
+    <Compile Include="TiberianDawn\BasicSection.cs" />
+    <Compile Include="TiberianDawn\Constants.cs" />
+    <Compile Include="TiberianDawn\DirectionTypes.cs" />
+    <Compile Include="TiberianDawn\EventTypes.cs" />
+    <Compile Include="TiberianDawn\GamePlugin.cs" />
+    <Compile Include="TiberianDawn\House.cs" />
+    <Compile Include="TiberianDawn\HouseTypes.cs" />
+    <Compile Include="TiberianDawn\BuildingTypes.cs" />
+    <Compile Include="TiberianDawn\MissionTypes.cs" />
+    <Compile Include="TiberianDawn\OverlayTypes.cs" />
+    <Compile Include="TiberianDawn\SmudgeTypes.cs" />
+    <Compile Include="TiberianDawn\TeamMissionTypes.cs" />
+    <Compile Include="TiberianDawn\TemplateTypes.cs" />
+    <Compile Include="TiberianDawn\TerrainTypes.cs" />
+    <Compile Include="TiberianDawn\TheaterTypes.cs" />
+    <Compile Include="TiberianDawn\InfantryTypes.cs" />
+    <Compile Include="TiberianDawn\UnitTypes.cs" />
+    <Compile Include="Tools\BuildingTool.cs" />
+    <Compile Include="Tools\Dialogs\ResourcesToolDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Tools\Dialogs\ResourcesToolDialog.Designer.cs">
+      <DependentUpon>ResourcesToolDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Tools\Dialogs\ObjectToolDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Tools\Dialogs\ObjectToolDialog.Designer.cs">
+      <DependentUpon>ObjectToolDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Tools\Dialogs\GenericToolDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Tools\Dialogs\GenericToolDialog.Designer.cs">
+      <DependentUpon>GenericToolDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Tools\Dialogs\TerrainToolDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Tools\Dialogs\TerrainToolDialog.Designer.cs">
+      <DependentUpon>TerrainToolDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Tools\Dialogs\TemplateToolDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Tools\Dialogs\TemplateToolDialog.Designer.cs">
+      <DependentUpon>TemplateToolDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Tools\Dialogs\CellTriggersToolDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Tools\Dialogs\CellTriggersToolDialog.Designer.cs">
+      <DependentUpon>CellTriggersToolDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Tools\Dialogs\WaypointsToolDialog.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Tools\Dialogs\WaypointsToolDialog.Designer.cs">
+      <DependentUpon>WaypointsToolDialog.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Tools\InfantryTool.cs" />
+    <Compile Include="Tools\OverlaysTool.cs" />
+    <Compile Include="Tools\ResourcesTool.cs" />
+    <Compile Include="Tools\SmudgeTool.cs" />
+    <Compile Include="Tools\TemplateTool.cs" />
+    <Compile Include="Tools\TerrainTool.cs" />
+    <Compile Include="Tools\UnitTool.cs" />
+    <Compile Include="Tools\ViewTool.cs" />
+    <Compile Include="Tools\WallsTool.cs" />
+    <Compile Include="Tools\CellTriggersTool.cs" />
+    <Compile Include="Tools\WaypointsTool.cs" />
+    <Compile Include="Utility\CRC.cs" />
+    <Compile Include="Utility\ExtensionMethods.cs" />
+    <Compile Include="Utility\GameTextManager.cs" />
+    <Compile Include="Utility\INI.cs" />
+    <Compile Include="Utility\Megafile.cs" />
+    <Compile Include="Utility\MegafileBuilder.cs" />
+    <Compile Include="Utility\MegafileManager.cs" />
+    <Compile Include="Utility\MRU.cs" />
+    <Compile Include="Utility\PropertyTracker.cs" />
+    <Compile Include="Utility\SteamworksUGC.cs" />
+    <Compile Include="Utility\TeamColor.cs" />
+    <Compile Include="Utility\TeamColorManager.cs" />
+    <Compile Include="Utility\TextureManager.cs" />
+    <Compile Include="Utility\TGASharpLib.cs" />
+    <Compile Include="Utility\Tileset.cs" />
+    <Compile Include="Utility\TilesetManager.cs" />
+    <Compile Include="Utility\UndoRedoList.cs" />
+    <Compile Include="Utility\WWCompression.cs" />
+    <Compile Include="Widgets\NavigationWidget.cs" />
+    <EmbeddedResource Include="Controls\BasicSettings.resx">
+      <DependentUpon>BasicSettings.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Controls\BriefingSettings.resx">
+      <DependentUpon>BriefingSettings.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Controls\MapPanel.resx">
+      <DependentUpon>MapPanel.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Controls\TerrainProperties.resx">
+      <DependentUpon>TerrainProperties.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Controls\ObjectProperties.resx">
+      <DependentUpon>ObjectProperties.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Controls\PlayerSettings.resx">
+      <DependentUpon>PlayerSettings.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Dialogs\ErrorMessageBox.resx">
+      <DependentUpon>ErrorMessageBox.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Dialogs\InviteMessageBox.resx">
+      <DependentUpon>InviteMessageBox.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Dialogs\MapSettingsDialog.resx">
+      <DependentUpon>MapSettingsDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Dialogs\NewMapDialog.resx">
+      <DependentUpon>NewMapDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Dialogs\SteamDialog.resx">
+      <DependentUpon>SteamDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Dialogs\TriggersDialog.resx">
+      <DependentUpon>TriggersDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Dialogs\TeamTypesDialog.resx">
+      <DependentUpon>TeamTypesDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="MainForm.resx">
+      <DependentUpon>MainForm.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Properties\Resources.resx">
+      <Generator>ResXFileCodeGenerator</Generator>
+      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+      <SubType>Designer</SubType>
+    </EmbeddedResource>
+    <Compile Include="Properties\Resources.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DependentUpon>Resources.resx</DependentUpon>
+      <DesignTime>True</DesignTime>
+    </Compile>
+    <EmbeddedResource Include="Tools\Dialogs\ResourcesToolDialog.resx">
+      <DependentUpon>ResourcesToolDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Tools\Dialogs\ObjectToolDialog.resx">
+      <DependentUpon>ObjectToolDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Tools\Dialogs\GenericToolDialog.resx">
+      <DependentUpon>GenericToolDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Tools\Dialogs\TerrainToolDialog.resx">
+      <DependentUpon>TerrainToolDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Tools\Dialogs\TemplateToolDialog.resx">
+      <DependentUpon>TemplateToolDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Tools\Dialogs\CellTriggersToolDialog.resx">
+      <DependentUpon>CellTriggersToolDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Tools\Dialogs\WaypointsToolDialog.resx">
+      <DependentUpon>WaypointsToolDialog.cs</DependentUpon>
+    </EmbeddedResource>
+    <None Include="Properties\Settings.settings">
+      <Generator>SettingsSingleFileGenerator</Generator>
+      <LastGenOutput>Settings.Designer.cs</LastGenOutput>
+    </None>
+    <Compile Include="Properties\Settings.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DependentUpon>Settings.settings</DependentUpon>
+      <DesignTimeSharedInput>True</DesignTimeSharedInput>
+    </Compile>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="App.config" />
+  </ItemGroup>
+  <ItemGroup>
+    <EmbeddedResource Include="Resources\GameIcon00.ico" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\UI_CustomMissionPreviewDefault.png" />
+    <Content Include="Steamworks.NET\redist\steam_api.dll" />
+  </ItemGroup>
+  <ItemGroup>
+    <PackageReference Include="Newtonsoft.Json">
+      <Version>12.0.3</Version>
+    </PackageReference>
+    <PackageReference Include="Pfim">
+      <Version>0.9.1</Version>
+    </PackageReference>
+    <PackageReference Include="System.ValueTuple">
+      <Version>4.5.0</Version>
+    </PackageReference>
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  </Project>

+ 518 - 0
CnCTDRAMapEditor/Controls/BasicSettings.Designer.cs

@@ -0,0 +1,518 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class BasicSettings
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.label10 = new System.Windows.Forms.Label();
+            this.loseComboBox = new System.Windows.Forms.ComboBox();
+            this.isSinglePlayerCheckBox = new System.Windows.Forms.CheckBox();
+            this.win4ComboBox = new System.Windows.Forms.ComboBox();
+            this.win3ComboBox = new System.Windows.Forms.ComboBox();
+            this.win2ComboBox = new System.Windows.Forms.ComboBox();
+            this.winComboBox = new System.Windows.Forms.ComboBox();
+            this.actionComboBox = new System.Windows.Forms.ComboBox();
+            this.briefComboBox = new System.Windows.Forms.ComboBox();
+            this.introComboBox = new System.Windows.Forms.ComboBox();
+            this.win4Label = new System.Windows.Forms.Label();
+            this.win3Label = new System.Windows.Forms.Label();
+            this.win2Label = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.buildLevelLabel = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.nameTxt = new System.Windows.Forms.TextBox();
+            this.playerComboBox = new System.Windows.Forms.ComboBox();
+            this.buidLevelNud = new System.Windows.Forms.NumericUpDown();
+            this.percentNud = new System.Windows.Forms.NumericUpDown();
+            this.carryOverMoneyNud = new System.Windows.Forms.NumericUpDown();
+            this.label6 = new System.Windows.Forms.Label();
+            this.authorTxt = new System.Windows.Forms.TextBox();
+            this.baseLabel = new System.Windows.Forms.Label();
+            this.baseComboBox = new System.Windows.Forms.ComboBox();
+            this.tableLayoutPanel1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.buidLevelNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.percentNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.carryOverMoneyNud)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.AutoSize = true;
+            this.tableLayoutPanel1.ColumnCount = 2;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.Controls.Add(this.label10, 0, 15);
+            this.tableLayoutPanel1.Controls.Add(this.loseComboBox, 1, 15);
+            this.tableLayoutPanel1.Controls.Add(this.isSinglePlayerCheckBox, 1, 16);
+            this.tableLayoutPanel1.Controls.Add(this.win4ComboBox, 1, 14);
+            this.tableLayoutPanel1.Controls.Add(this.win3ComboBox, 1, 13);
+            this.tableLayoutPanel1.Controls.Add(this.win2ComboBox, 1, 12);
+            this.tableLayoutPanel1.Controls.Add(this.winComboBox, 1, 11);
+            this.tableLayoutPanel1.Controls.Add(this.actionComboBox, 1, 10);
+            this.tableLayoutPanel1.Controls.Add(this.briefComboBox, 1, 9);
+            this.tableLayoutPanel1.Controls.Add(this.introComboBox, 1, 8);
+            this.tableLayoutPanel1.Controls.Add(this.win4Label, 0, 14);
+            this.tableLayoutPanel1.Controls.Add(this.win3Label, 0, 13);
+            this.tableLayoutPanel1.Controls.Add(this.win2Label, 0, 12);
+            this.tableLayoutPanel1.Controls.Add(this.label9, 0, 11);
+            this.tableLayoutPanel1.Controls.Add(this.label8, 0, 10);
+            this.tableLayoutPanel1.Controls.Add(this.label7, 0, 9);
+            this.tableLayoutPanel1.Controls.Add(this.label1, 0, 8);
+            this.tableLayoutPanel1.Controls.Add(this.buildLevelLabel, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label2, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.label3, 0, 2);
+            this.tableLayoutPanel1.Controls.Add(this.label4, 0, 3);
+            this.tableLayoutPanel1.Controls.Add(this.label5, 0, 4);
+            this.tableLayoutPanel1.Controls.Add(this.nameTxt, 1, 2);
+            this.tableLayoutPanel1.Controls.Add(this.playerComboBox, 1, 4);
+            this.tableLayoutPanel1.Controls.Add(this.buidLevelNud, 1, 0);
+            this.tableLayoutPanel1.Controls.Add(this.percentNud, 1, 3);
+            this.tableLayoutPanel1.Controls.Add(this.carryOverMoneyNud, 1, 1);
+            this.tableLayoutPanel1.Controls.Add(this.label6, 0, 5);
+            this.tableLayoutPanel1.Controls.Add(this.authorTxt, 1, 5);
+            this.tableLayoutPanel1.Controls.Add(this.baseLabel, 0, 6);
+            this.tableLayoutPanel1.Controls.Add(this.baseComboBox, 1, 6);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 17;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(300, 403);
+            this.tableLayoutPanel1.TabIndex = 1;
+            // 
+            // label10
+            // 
+            this.label10.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label10.Location = new System.Drawing.Point(2, 355);
+            this.label10.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(87, 25);
+            this.label10.TabIndex = 35;
+            this.label10.Text = "Lose";
+            this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // loseComboBox
+            // 
+            this.loseComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.loseComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.loseComboBox.FormattingEnabled = true;
+            this.loseComboBox.Location = new System.Drawing.Point(93, 357);
+            this.loseComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.loseComboBox.Name = "loseComboBox";
+            this.loseComboBox.Size = new System.Drawing.Size(205, 21);
+            this.loseComboBox.TabIndex = 34;
+            // 
+            // isSinglePlayerCheckBox
+            // 
+            this.isSinglePlayerCheckBox.AutoSize = true;
+            this.isSinglePlayerCheckBox.Location = new System.Drawing.Point(93, 382);
+            this.isSinglePlayerCheckBox.Margin = new System.Windows.Forms.Padding(2);
+            this.isSinglePlayerCheckBox.Name = "isSinglePlayerCheckBox";
+            this.isSinglePlayerCheckBox.Size = new System.Drawing.Size(87, 17);
+            this.isSinglePlayerCheckBox.TabIndex = 32;
+            this.isSinglePlayerCheckBox.Text = "Single-Player";
+            this.isSinglePlayerCheckBox.UseVisualStyleBackColor = true;
+            this.isSinglePlayerCheckBox.CheckedChanged += new System.EventHandler(this.isSinglePlayerCheckBox_CheckedChanged);
+            // 
+            // win4ComboBox
+            // 
+            this.win4ComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.win4ComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.win4ComboBox.FormattingEnabled = true;
+            this.win4ComboBox.Location = new System.Drawing.Point(93, 332);
+            this.win4ComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.win4ComboBox.Name = "win4ComboBox";
+            this.win4ComboBox.Size = new System.Drawing.Size(205, 21);
+            this.win4ComboBox.TabIndex = 31;
+            // 
+            // win3ComboBox
+            // 
+            this.win3ComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.win3ComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.win3ComboBox.FormattingEnabled = true;
+            this.win3ComboBox.Location = new System.Drawing.Point(93, 307);
+            this.win3ComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.win3ComboBox.Name = "win3ComboBox";
+            this.win3ComboBox.Size = new System.Drawing.Size(205, 21);
+            this.win3ComboBox.TabIndex = 30;
+            // 
+            // win2ComboBox
+            // 
+            this.win2ComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.win2ComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.win2ComboBox.FormattingEnabled = true;
+            this.win2ComboBox.Location = new System.Drawing.Point(93, 282);
+            this.win2ComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.win2ComboBox.Name = "win2ComboBox";
+            this.win2ComboBox.Size = new System.Drawing.Size(205, 21);
+            this.win2ComboBox.TabIndex = 29;
+            // 
+            // winComboBox
+            // 
+            this.winComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.winComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.winComboBox.FormattingEnabled = true;
+            this.winComboBox.Location = new System.Drawing.Point(93, 257);
+            this.winComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.winComboBox.Name = "winComboBox";
+            this.winComboBox.Size = new System.Drawing.Size(205, 21);
+            this.winComboBox.TabIndex = 28;
+            // 
+            // actionComboBox
+            // 
+            this.actionComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.actionComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.actionComboBox.FormattingEnabled = true;
+            this.actionComboBox.Location = new System.Drawing.Point(93, 232);
+            this.actionComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.actionComboBox.Name = "actionComboBox";
+            this.actionComboBox.Size = new System.Drawing.Size(205, 21);
+            this.actionComboBox.TabIndex = 27;
+            // 
+            // briefComboBox
+            // 
+            this.briefComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.briefComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.briefComboBox.FormattingEnabled = true;
+            this.briefComboBox.Location = new System.Drawing.Point(93, 207);
+            this.briefComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.briefComboBox.Name = "briefComboBox";
+            this.briefComboBox.Size = new System.Drawing.Size(205, 21);
+            this.briefComboBox.TabIndex = 26;
+            // 
+            // introComboBox
+            // 
+            this.introComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.introComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.introComboBox.FormattingEnabled = true;
+            this.introComboBox.Location = new System.Drawing.Point(93, 182);
+            this.introComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.introComboBox.Name = "introComboBox";
+            this.introComboBox.Size = new System.Drawing.Size(205, 21);
+            this.introComboBox.TabIndex = 25;
+            // 
+            // win4Label
+            // 
+            this.win4Label.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.win4Label.Location = new System.Drawing.Point(2, 330);
+            this.win4Label.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.win4Label.Name = "win4Label";
+            this.win4Label.Size = new System.Drawing.Size(87, 25);
+            this.win4Label.TabIndex = 24;
+            this.win4Label.Text = "Win4";
+            this.win4Label.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // win3Label
+            // 
+            this.win3Label.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.win3Label.Location = new System.Drawing.Point(2, 305);
+            this.win3Label.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.win3Label.Name = "win3Label";
+            this.win3Label.Size = new System.Drawing.Size(87, 25);
+            this.win3Label.TabIndex = 23;
+            this.win3Label.Text = "Win3";
+            this.win3Label.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // win2Label
+            // 
+            this.win2Label.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.win2Label.Location = new System.Drawing.Point(2, 280);
+            this.win2Label.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.win2Label.Name = "win2Label";
+            this.win2Label.Size = new System.Drawing.Size(87, 25);
+            this.win2Label.TabIndex = 22;
+            this.win2Label.Text = "Win2";
+            this.win2Label.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label9
+            // 
+            this.label9.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label9.Location = new System.Drawing.Point(2, 255);
+            this.label9.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(87, 25);
+            this.label9.TabIndex = 21;
+            this.label9.Text = "Win";
+            this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label8
+            // 
+            this.label8.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label8.Location = new System.Drawing.Point(2, 230);
+            this.label8.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(87, 25);
+            this.label8.TabIndex = 20;
+            this.label8.Text = "Action";
+            this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label7
+            // 
+            this.label7.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label7.Location = new System.Drawing.Point(2, 205);
+            this.label7.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(87, 25);
+            this.label7.TabIndex = 19;
+            this.label7.Text = "Brief";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label1
+            // 
+            this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label1.Location = new System.Drawing.Point(2, 180);
+            this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(87, 25);
+            this.label1.TabIndex = 18;
+            this.label1.Text = "Intro";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // buildLevelLabel
+            // 
+            this.buildLevelLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.buildLevelLabel.Location = new System.Drawing.Point(3, 0);
+            this.buildLevelLabel.Name = "buildLevelLabel";
+            this.buildLevelLabel.Size = new System.Drawing.Size(85, 26);
+            this.buildLevelLabel.TabIndex = 0;
+            this.buildLevelLabel.Text = "Build Level";
+            this.buildLevelLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label2
+            // 
+            this.label2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label2.Location = new System.Drawing.Point(3, 26);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(85, 26);
+            this.label2.TabIndex = 2;
+            this.label2.Text = "Carryover Money";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label3
+            // 
+            this.label3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label3.Location = new System.Drawing.Point(3, 52);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(85, 26);
+            this.label3.TabIndex = 3;
+            this.label3.Text = "Name";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label4
+            // 
+            this.label4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label4.Location = new System.Drawing.Point(3, 78);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(85, 26);
+            this.label4.TabIndex = 4;
+            this.label4.Text = "Percent";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label5
+            // 
+            this.label5.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label5.Location = new System.Drawing.Point(3, 104);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(85, 27);
+            this.label5.TabIndex = 5;
+            this.label5.Text = "Player";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // nameTxt
+            // 
+            this.nameTxt.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.nameTxt.Location = new System.Drawing.Point(94, 55);
+            this.nameTxt.Name = "nameTxt";
+            this.nameTxt.Size = new System.Drawing.Size(203, 20);
+            this.nameTxt.TabIndex = 7;
+            // 
+            // playerComboBox
+            // 
+            this.playerComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.playerComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.playerComboBox.FormattingEnabled = true;
+            this.playerComboBox.Location = new System.Drawing.Point(94, 107);
+            this.playerComboBox.Name = "playerComboBox";
+            this.playerComboBox.Size = new System.Drawing.Size(203, 21);
+            this.playerComboBox.TabIndex = 9;
+            // 
+            // buidLevelNud
+            // 
+            this.buidLevelNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.buidLevelNud.Location = new System.Drawing.Point(94, 3);
+            this.buidLevelNud.Name = "buidLevelNud";
+            this.buidLevelNud.Size = new System.Drawing.Size(203, 20);
+            this.buidLevelNud.TabIndex = 10;
+            // 
+            // percentNud
+            // 
+            this.percentNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.percentNud.Location = new System.Drawing.Point(94, 81);
+            this.percentNud.Name = "percentNud";
+            this.percentNud.Size = new System.Drawing.Size(203, 20);
+            this.percentNud.TabIndex = 11;
+            // 
+            // carryOverMoneyNud
+            // 
+            this.carryOverMoneyNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.carryOverMoneyNud.Location = new System.Drawing.Point(94, 29);
+            this.carryOverMoneyNud.Name = "carryOverMoneyNud";
+            this.carryOverMoneyNud.Size = new System.Drawing.Size(203, 20);
+            this.carryOverMoneyNud.TabIndex = 12;
+            // 
+            // label6
+            // 
+            this.label6.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label6.Location = new System.Drawing.Point(2, 131);
+            this.label6.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(87, 24);
+            this.label6.TabIndex = 13;
+            this.label6.Text = "Author";
+            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // authorTxt
+            // 
+            this.authorTxt.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.authorTxt.Location = new System.Drawing.Point(93, 133);
+            this.authorTxt.Margin = new System.Windows.Forms.Padding(2);
+            this.authorTxt.Name = "authorTxt";
+            this.authorTxt.Size = new System.Drawing.Size(205, 20);
+            this.authorTxt.TabIndex = 14;
+            // 
+            // baseLabel
+            // 
+            this.baseLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.baseLabel.Location = new System.Drawing.Point(2, 155);
+            this.baseLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.baseLabel.Name = "baseLabel";
+            this.baseLabel.Size = new System.Drawing.Size(87, 25);
+            this.baseLabel.TabIndex = 15;
+            this.baseLabel.Text = "Base";
+            this.baseLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // baseComboBox
+            // 
+            this.baseComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.baseComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.baseComboBox.FormattingEnabled = true;
+            this.baseComboBox.Location = new System.Drawing.Point(93, 157);
+            this.baseComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.baseComboBox.Name = "baseComboBox";
+            this.baseComboBox.Size = new System.Drawing.Size(205, 21);
+            this.baseComboBox.TabIndex = 16;
+            // 
+            // BasicSettings
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.Name = "BasicSettings";
+            this.Size = new System.Drawing.Size(300, 403);
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.buidLevelNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.percentNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.carryOverMoneyNud)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.Label buildLevelLabel;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.TextBox nameTxt;
+        private System.Windows.Forms.ComboBox playerComboBox;
+        private System.Windows.Forms.NumericUpDown buidLevelNud;
+        private System.Windows.Forms.NumericUpDown percentNud;
+        private System.Windows.Forms.NumericUpDown carryOverMoneyNud;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.TextBox authorTxt;
+        private System.Windows.Forms.Label baseLabel;
+        private System.Windows.Forms.ComboBox baseComboBox;
+        private System.Windows.Forms.Label win4Label;
+        private System.Windows.Forms.Label win3Label;
+        private System.Windows.Forms.Label win2Label;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.CheckBox isSinglePlayerCheckBox;
+        private System.Windows.Forms.ComboBox win4ComboBox;
+        private System.Windows.Forms.ComboBox win3ComboBox;
+        private System.Windows.Forms.ComboBox win2ComboBox;
+        private System.Windows.Forms.ComboBox winComboBox;
+        private System.Windows.Forms.ComboBox actionComboBox;
+        private System.Windows.Forms.ComboBox briefComboBox;
+        private System.Windows.Forms.ComboBox introComboBox;
+        private System.Windows.Forms.ComboBox loseComboBox;
+        private System.Windows.Forms.Label label10;
+    }
+}

+ 80 - 0
CnCTDRAMapEditor/Controls/BasicSettings.cs

@@ -0,0 +1,80 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System;
+using System.Data;
+using System.Linq;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class BasicSettings : UserControl
+    {
+        public BasicSettings(IGamePlugin plugin, dynamic basicSection)
+        {
+            InitializeComponent();
+
+            playerComboBox.DataSource = plugin.Map.Houses.Select(h => h.Type.Name).ToArray();
+            baseComboBox.DataSource = plugin.Map.Houses.Select(h => h.Type.Name).ToArray();
+            introComboBox.DataSource = plugin.Map.MovieTypes.ToArray();
+            briefComboBox.DataSource = plugin.Map.MovieTypes.ToArray();
+            actionComboBox.DataSource = plugin.Map.MovieTypes.ToArray();
+            winComboBox.DataSource = plugin.Map.MovieTypes.ToArray();
+            win2ComboBox.DataSource = plugin.Map.MovieTypes.ToArray();
+            win3ComboBox.DataSource = plugin.Map.MovieTypes.ToArray();
+            win4ComboBox.DataSource = plugin.Map.MovieTypes.ToArray();
+            loseComboBox.DataSource = plugin.Map.MovieTypes.ToArray();
+
+            carryOverMoneyNud.DataBindings.Add("Value", basicSection, "CarryOverMoney");
+            nameTxt.DataBindings.Add("Text", basicSection, "Name");
+            percentNud.DataBindings.Add("Value", basicSection, "Percent");
+            playerComboBox.DataBindings.Add("SelectedItem", basicSection, "Player");
+            authorTxt.DataBindings.Add("Text", basicSection, "Author");
+            isSinglePlayerCheckBox.DataBindings.Add("Checked", basicSection, "SoloMission");
+            introComboBox.DataBindings.Add("SelectedItem", basicSection, "Intro");
+            briefComboBox.DataBindings.Add("SelectedItem", basicSection, "Brief");
+            actionComboBox.DataBindings.Add("SelectedItem", basicSection, "Action");
+            winComboBox.DataBindings.Add("SelectedItem", basicSection, "Win");
+            loseComboBox.DataBindings.Add("SelectedItem", basicSection, "Lose");
+
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    buidLevelNud.DataBindings.Add("Value", basicSection, "BuildLevel");
+                    baseLabel.Visible = baseComboBox.Visible = false;
+                    win2Label.Visible = win2ComboBox.Visible = false;
+                    win3Label.Visible = win3ComboBox.Visible = false;
+                    win4Label.Visible = win4ComboBox.Visible = false;
+                    break;
+                case GameType.RedAlert:
+                    buidLevelNud.Visible = buildLevelLabel.Visible = false;
+                    baseComboBox.DataBindings.Add("SelectedItem", basicSection, "BasePlayer");
+                    win2ComboBox.DataBindings.Add("SelectedItem", basicSection, "Win2");
+                    win3ComboBox.DataBindings.Add("SelectedItem", basicSection, "Win3");
+                    win4ComboBox.DataBindings.Add("SelectedItem", basicSection, "Win4");
+                    break;
+            }
+
+            introComboBox.Enabled = briefComboBox.Enabled = actionComboBox.Enabled = loseComboBox.Enabled = isSinglePlayerCheckBox.Checked;
+            winComboBox.Enabled = win2ComboBox.Enabled = win3ComboBox.Enabled = win4ComboBox.Enabled = isSinglePlayerCheckBox.Checked;
+        }
+
+        private void isSinglePlayerCheckBox_CheckedChanged(object sender, EventArgs e)
+        {
+            introComboBox.Enabled = briefComboBox.Enabled = actionComboBox.Enabled = loseComboBox.Enabled = isSinglePlayerCheckBox.Checked;
+            winComboBox.Enabled = win2ComboBox.Enabled = win3ComboBox.Enabled = win4ComboBox.Enabled = isSinglePlayerCheckBox.Checked;
+        }
+    }
+}

+ 120 - 0
CnCTDRAMapEditor/Controls/BasicSettings.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 75 - 0
CnCTDRAMapEditor/Controls/BriefingSettings.Designer.cs

@@ -0,0 +1,75 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class BriefingSettings
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.briefingTxt = new System.Windows.Forms.TextBox();
+            this.SuspendLayout();
+            // 
+            // briefingTxt
+            // 
+            this.briefingTxt.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.briefingTxt.Location = new System.Drawing.Point(0, 0);
+            this.briefingTxt.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.briefingTxt.Multiline = true;
+            this.briefingTxt.Name = "briefingTxt";
+            this.briefingTxt.Size = new System.Drawing.Size(600, 400);
+            this.briefingTxt.TabIndex = 0;
+            // 
+            // BriefingSettings
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.Controls.Add(this.briefingTxt);
+            this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.Name = "BriefingSettings";
+            this.Size = new System.Drawing.Size(600, 400);
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TextBox briefingTxt;
+    }
+}

+ 29 - 0
CnCTDRAMapEditor/Controls/BriefingSettings.cs

@@ -0,0 +1,29 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class BriefingSettings : UserControl
+    {
+        public BriefingSettings(IGamePlugin plugin, dynamic briefingSection)
+        {
+            InitializeComponent();
+
+            briefingTxt.DataBindings.Add("Text", briefingSection, "Briefing");
+        }
+    }
+}

+ 120 - 0
CnCTDRAMapEditor/Controls/BriefingSettings.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 50 - 0
CnCTDRAMapEditor/Controls/ImageTooltip.Designer.cs

@@ -0,0 +1,50 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class ImageTooltip
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            components = new System.ComponentModel.Container();
+        }
+
+        #endregion
+    }
+}

+ 64 - 0
CnCTDRAMapEditor/Controls/ImageTooltip.cs

@@ -0,0 +1,64 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Drawing;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class ImageTooltip : ToolTip
+    {
+        public Size MaxSize { get; set; } = Size.Empty;
+
+        public ImageTooltip()
+        {
+            InitializeComponent();
+
+            OwnerDraw = true;
+            Popup += ImageTooltip_Popup;
+            Draw += ImageTooltip_Draw;
+        }
+
+        private void ImageTooltip_Popup(object sender, PopupEventArgs e)
+        {
+            if (e.AssociatedControl.Tag is Image image)
+            {
+                var size = image.Size;
+                if (MaxSize.Width > 0)
+                {
+                    size.Width = Math.Min(MaxSize.Width, size.Width);
+                }
+                if (MaxSize.Height > 0)
+                {
+                    size.Height = Math.Min(MaxSize.Height, size.Height);
+                }
+
+                e.ToolTipSize = size;
+            }
+            else
+            {
+                e.Cancel = true;
+            }
+        }
+
+        private void ImageTooltip_Draw(object sender, DrawToolTipEventArgs e)
+        {
+            if (e.AssociatedControl.Tag is Image image)
+            {
+                e.Graphics.DrawImage(image, e.Bounds);
+            }
+        }
+    }
+}

+ 52 - 0
CnCTDRAMapEditor/Controls/MapPanel.Designer.cs

@@ -0,0 +1,52 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class MapPanel
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.SuspendLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+    }
+}

+ 535 - 0
CnCTDRAMapEditor/Controls/MapPanel.cs

@@ -0,0 +1,535 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Event;
+using MobiusEditor.Interface;
+using MobiusEditor.Model;
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Drawing.Drawing2D;
+using System.Linq;
+using System.Runtime.InteropServices;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class MapPanel : Panel
+    {
+        private bool updatingCamera;
+        private Rectangle cameraBounds;
+        private Point lastScrollPosition;
+
+        private (Point map, SizeF client)? referencePositions;
+
+        private Matrix mapToViewTransform = new Matrix();
+        private Matrix viewToPageTransform = new Matrix();
+
+        private Matrix compositeTransform = new Matrix();
+        private Matrix invCompositeTransform = new Matrix();
+
+        private readonly HashSet<Point> invalidateCells = new HashSet<Point>();
+        private bool fullInvalidation;
+
+        private Image mapImage;
+        public Image MapImage
+        {
+            get => mapImage;
+            set
+            {
+                if (mapImage != value)
+                {
+                    mapImage = value;
+                    UpdateCamera();
+                }
+            }
+        }
+
+        private int minZoom = 1;
+        public int MinZoom
+        {
+            get => minZoom;
+            set
+            {
+                if (minZoom != value)
+                {
+                    minZoom = value;
+                    Zoom = zoom;
+                }
+            }
+        }
+
+        private int maxZoom = 8;
+        public int MaxZoom
+        {
+            get => maxZoom;
+            set
+            {
+                if (maxZoom != value)
+                {
+                    maxZoom = value;
+                    Zoom = zoom;
+                }
+            }
+        }
+
+        private int zoomStep = 1;
+        public int ZoomStep
+        {
+            get => zoomStep;
+            set
+            {
+                if (zoomStep != value)
+                {
+                    zoomStep = value;
+                    Zoom = (Zoom / zoomStep) * zoomStep;
+                }
+            }
+        }
+
+        private int zoom = 1;
+        public int Zoom
+        {
+            get => zoom;
+            set
+            {
+                var newZoom = Math.Max(MinZoom, Math.Min(MaxZoom, value));
+                if (zoom != newZoom)
+                {
+                    zoom = newZoom;
+
+                    var clientPosition = PointToClient(MousePosition);
+                    referencePositions = (ClientToMap(clientPosition), new SizeF(clientPosition.X / (float)ClientSize.Width, clientPosition.Y / (float)ClientSize.Height));
+
+                    UpdateCamera();
+                }
+            }
+        }
+
+        private int quality = Properties.Settings.Default.Quality;
+        public int Quality
+        {
+            get => quality;
+            set
+            {
+                if (quality != value)
+                {
+                    quality = value;
+                    Invalidate();
+                }
+            }
+        }
+
+        [Category("Behavior")]
+        [DefaultValue(false)]
+        public bool FocusOnMouseEnter { get; set; }
+
+        public event EventHandler<RenderEventArgs> PreRender;
+        public event EventHandler<RenderEventArgs> PostRender;
+
+        public MapPanel()
+        {
+            InitializeComponent();
+            DoubleBuffered = true;
+        }
+
+        public Point MapToClient(Point point)
+        {
+            var points = new Point[] { point };
+            compositeTransform.TransformPoints(points);
+            return points[0];
+        }
+
+        public Size MapToClient(Size size)
+        {
+            var points = new Point[] { (Point)size };
+            compositeTransform.VectorTransformPoints(points);
+            return (Size)points[0];
+        }
+
+        public Rectangle MapToClient(Rectangle rectangle)
+        {
+            var points = new Point[] { rectangle.Location, new Point(rectangle.Right, rectangle.Bottom) };
+            compositeTransform.TransformPoints(points);
+            return new Rectangle(points[0], new Size(points[1].X - points[0].X, points[1].Y - points[0].Y));
+        }
+
+        public Point ClientToMap(Point point)
+        {
+            var points = new Point[] { point };
+            invCompositeTransform.TransformPoints(points);
+            return points[0];
+        }
+
+        public Size ClientToMap(Size size)
+        {
+            var points = new Point[] { (Point)size };
+            invCompositeTransform.VectorTransformPoints(points);
+            return (Size)points[0];
+        }
+
+        public Rectangle ClientToMap(Rectangle rectangle)
+        {
+            var points = new Point[] { rectangle.Location, new Point(rectangle.Right, rectangle.Bottom) };
+            invCompositeTransform.TransformPoints(points);
+            return new Rectangle(points[0], new Size(points[1].X - points[0].X, points[1].Y - points[0].Y));
+        }
+
+        public void Invalidate(Map invalidateMap)
+        {
+            if (!fullInvalidation)
+            {
+                invalidateCells.Clear();
+                fullInvalidation = true;
+                Invalidate();
+            }
+        }
+
+        public void Invalidate(Map invalidateMap, Rectangle cellBounds)
+        {
+            if (fullInvalidation)
+            {
+                return;
+            }
+
+            var count = invalidateCells.Count;
+            invalidateCells.UnionWith(cellBounds.Points());
+            if (invalidateCells.Count > count)
+            {
+                var overlapCells = invalidateMap.Overlappers.Overlaps(invalidateCells).ToHashSet();
+                invalidateCells.UnionWith(overlapCells);
+                Invalidate();
+            }
+        }
+
+        public void Invalidate(Map invalidateMap, IEnumerable<Rectangle> cellBounds)
+        {
+            if (fullInvalidation)
+            {
+                return;
+            }
+
+            var count = invalidateCells.Count;
+            invalidateCells.UnionWith(cellBounds.SelectMany(c => c.Points()));
+            if (invalidateCells.Count > count)
+            {
+                var overlapCells = invalidateMap.Overlappers.Overlaps(invalidateCells).ToHashSet();
+                invalidateCells.UnionWith(overlapCells);
+                Invalidate();
+            }
+        }
+
+        public void Invalidate(Map invalidateMap, Point location)
+        {
+            if (fullInvalidation)
+            {
+                return;
+            }
+
+            Invalidate(invalidateMap, new Rectangle(location, new Size(1, 1)));
+        }
+
+        public void Invalidate(Map invalidateMap, IEnumerable<Point> locations)
+        {
+            if (fullInvalidation)
+            {
+                return;
+            }
+
+            Invalidate(invalidateMap, locations.Select(l => new Rectangle(l, new Size(1, 1))));
+        }
+
+        public void Invalidate(Map invalidateMap, int cell)
+        {
+            if (fullInvalidation)
+            {
+                return;
+            }
+
+            if (invalidateMap.Metrics.GetLocation(cell, out Point location))
+            {
+                Invalidate(invalidateMap, location);
+            }
+        }
+
+        public void Invalidate(Map invalidateMap, IEnumerable<int> cells)
+        {
+            if (fullInvalidation)
+            {
+                return;
+            }
+
+            Invalidate(invalidateMap, cells
+                .Where(c => invalidateMap.Metrics.GetLocation(c, out Point location))
+                .Select(c =>
+                {
+                    invalidateMap.Metrics.GetLocation(c, out Point location);
+                    return location;
+                })
+            );
+        }
+
+        public void Invalidate(Map invalidateMap, ICellOverlapper overlapper)
+        {
+            if (fullInvalidation)
+            {
+                return;
+            }
+
+            var rectangle = invalidateMap.Overlappers[overlapper];
+            if (rectangle.HasValue)
+            {
+                Invalidate(invalidateMap, rectangle.Value);
+            }
+        }
+
+        protected override void OnMouseEnter(EventArgs e)
+        {
+            base.OnMouseEnter(e);
+
+            if (FocusOnMouseEnter)
+            {
+                Focus();
+            }
+        }
+
+        protected override void OnMouseWheel(MouseEventArgs e)
+        {
+            Zoom += ZoomStep * Math.Sign(e.Delta);
+        }
+
+        protected override void OnClientSizeChanged(EventArgs e)
+        {
+            base.OnClientSizeChanged(e);
+
+            UpdateCamera();
+        }
+
+        protected override void OnScroll(ScrollEventArgs se)
+        {
+            base.OnScroll(se);
+
+            InvalidateScroll();
+        }
+
+        protected override void OnPaintBackground(PaintEventArgs e)
+        {
+            base.OnPaintBackground(e);
+
+            e.Graphics.Clear(BackColor);
+        }
+
+        protected override void OnPaint(PaintEventArgs pe)
+        {
+            base.OnPaint(pe);
+
+            InvalidateScroll();
+
+            PreRender?.Invoke(this, new RenderEventArgs(pe.Graphics, fullInvalidation ? null : invalidateCells));
+
+            if (mapImage != null)
+            {
+                pe.Graphics.Transform = compositeTransform;
+
+                var oldCompositingMode = pe.Graphics.CompositingMode;
+                var oldCompositingQuality = pe.Graphics.CompositingQuality;
+                var oldInterpolationMode = pe.Graphics.InterpolationMode;
+                if (Quality > 1)
+                {
+                    pe.Graphics.CompositingMode = CompositingMode.SourceCopy;
+                    pe.Graphics.CompositingQuality = CompositingQuality.HighSpeed;
+                }
+
+                pe.Graphics.InterpolationMode = InterpolationMode.NearestNeighbor;
+                pe.Graphics.DrawImage(mapImage, 0, 0);
+
+                pe.Graphics.CompositingMode = oldCompositingMode;
+                pe.Graphics.CompositingQuality = oldCompositingQuality;
+                pe.Graphics.InterpolationMode = oldInterpolationMode;
+            }
+
+            PostRender?.Invoke(this, new RenderEventArgs(pe.Graphics, fullInvalidation ? null : invalidateCells));
+
+#if DEVELOPER
+            if (Globals.Developer.ShowOverlapCells)
+            {
+                var invalidPen = new Pen(Color.DarkRed);
+                foreach (var cell in invalidateCells)
+                {
+                    pe.Graphics.DrawRectangle(invalidPen, new Rectangle(cell.X * Globals.TileWidth, cell.Y * Globals.TileHeight, Globals.TileWidth, Globals.TileHeight));
+                }
+            }
+#endif
+
+            invalidateCells.Clear();
+            fullInvalidation = false;
+        }
+
+        private void UpdateCamera()
+        {
+            if (mapImage == null)
+            {
+                return;
+            }
+
+            if (ClientSize.IsEmpty)
+            {
+                return;
+            }
+
+            updatingCamera = true;
+
+            var mapAspect = (double)mapImage.Width / mapImage.Height;
+            var panelAspect = (double)ClientSize.Width / ClientSize.Height;
+            var cameraLocation = cameraBounds.Location;
+
+            var size = Size.Empty;
+            if (panelAspect > mapAspect)
+            {
+                size.Height = mapImage.Height / zoom;
+                size.Width = (int)(size.Height * panelAspect);
+            }
+            else
+            {
+                size.Width = mapImage.Width / zoom;
+                size.Height = (int)(size.Width / panelAspect);
+            }
+
+            var location = Point.Empty;
+            var scrollSize = Size.Empty;
+            if (size.Width < mapImage.Width)
+            {
+                location.X = Math.Max(0, Math.Min(mapImage.Width - size.Width, cameraBounds.Left));
+                scrollSize.Width = mapImage.Width * ClientSize.Width / size.Width;
+            }
+            else
+            {
+                location.X = (mapImage.Width - size.Width) / 2;
+            }
+
+            if (size.Height < mapImage.Height)
+            {
+                location.Y = Math.Max(0, Math.Min(mapImage.Height - size.Height, cameraBounds.Top));
+                scrollSize.Height = mapImage.Height * ClientSize.Height / size.Height;
+            }
+            else
+            {
+                location.Y = (mapImage.Height - size.Height) / 2;
+            }
+
+            cameraBounds = new Rectangle(location, size);
+            RecalculateTransforms();
+
+            if (referencePositions.HasValue)
+            {
+                var mapPoint = referencePositions.Value.map;
+                var clientSize = referencePositions.Value.client;
+
+                cameraLocation = cameraBounds.Location;
+                if (scrollSize.Width != 0)
+                {
+                    cameraLocation.X = Math.Max(0, Math.Min(mapImage.Width - cameraBounds.Width, (int)(mapPoint.X - (cameraBounds.Width * clientSize.Width))));
+                }
+                if (scrollSize.Height != 0)
+                {
+                    cameraLocation.Y = Math.Max(0, Math.Min(mapImage.Height - cameraBounds.Height, (int)(mapPoint.Y - (cameraBounds.Height * clientSize.Height))));
+                }
+                if (!scrollSize.IsEmpty)
+                {
+                    cameraBounds.Location = cameraLocation;
+                    RecalculateTransforms();
+                }
+
+                referencePositions = null;
+            }
+
+            SuspendDrawing();
+            AutoScrollMinSize = scrollSize;
+            AutoScrollPosition = (Point)MapToClient((Size)cameraBounds.Location);
+            lastScrollPosition = AutoScrollPosition;
+            ResumeDrawing();
+
+            updatingCamera = false;
+
+            Invalidate();
+        }
+
+        private void RecalculateTransforms()
+        {
+            mapToViewTransform.Reset();
+            mapToViewTransform.Translate(cameraBounds.Left, cameraBounds.Top);
+            mapToViewTransform.Scale(cameraBounds.Width, cameraBounds.Height);
+            mapToViewTransform.Invert();
+
+            viewToPageTransform.Reset();
+            viewToPageTransform.Scale(ClientSize.Width, ClientSize.Height);
+
+            compositeTransform.Reset();
+            compositeTransform.Multiply(viewToPageTransform);
+            compositeTransform.Multiply(mapToViewTransform);
+
+            invCompositeTransform.Reset();
+            invCompositeTransform.Multiply(compositeTransform);
+            invCompositeTransform.Invert();
+        }
+
+        private void InvalidateScroll()
+        {
+            if (updatingCamera)
+            {
+                return;
+            }
+
+            if ((lastScrollPosition.X != AutoScrollPosition.X) || (lastScrollPosition.Y != AutoScrollPosition.Y))
+            {
+                var delta = ClientToMap((Size)(lastScrollPosition - (Size)AutoScrollPosition));
+                lastScrollPosition = AutoScrollPosition;
+
+                var cameraLocation = cameraBounds.Location;
+                if (AutoScrollMinSize.Width != 0)
+                {
+                    cameraLocation.X = Math.Max(0, Math.Min(mapImage.Width - cameraBounds.Width, cameraBounds.Left + delta.Width));
+                }
+                if (AutoScrollMinSize.Height != 0)
+                {
+                    cameraLocation.Y = Math.Max(0, Math.Min(mapImage.Height - cameraBounds.Height, cameraBounds.Top + delta.Height));
+                }
+                if (!AutoScrollMinSize.IsEmpty)
+                {
+                    cameraBounds.Location = cameraLocation;
+                    RecalculateTransforms();
+                }
+
+                Invalidate();
+            }
+        }
+
+        [DllImport("user32.dll")]
+        private static extern int SendMessage(IntPtr hWnd, Int32 wMsg, bool wParam, Int32 lParam);
+
+        private const int WM_SETREDRAW = 11;
+
+        private void SuspendDrawing()
+        {
+            SendMessage(Handle, WM_SETREDRAW, false, 0);
+        }
+
+        private void ResumeDrawing()
+        {
+            SendMessage(Handle, WM_SETREDRAW, true, 0);
+        }
+    }
+}

+ 123 - 0
CnCTDRAMapEditor/Controls/MapPanel.resx

@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>False</value>
+  </metadata>
+</root>

+ 50 - 0
CnCTDRAMapEditor/Controls/MenuButton.Designer.cs

@@ -0,0 +1,50 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class MenuButton
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            components = new System.ComponentModel.Container();
+        }
+
+        #endregion
+    }
+}

+ 74 - 0
CnCTDRAMapEditor/Controls/MenuButton.cs

@@ -0,0 +1,74 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System.ComponentModel;
+using System.Drawing;
+using System.Drawing.Drawing2D;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class MenuButton : Button
+    {
+        public const int DefaultSplitWidth = 20;
+
+        [DefaultValue(null), Browsable(true), DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
+        public ContextMenuStrip Menu { get; set; }
+
+        [DefaultValue(DefaultSplitWidth), Browsable(true), DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
+        public int SplitWidth { get; set; } = DefaultSplitWidth;
+
+        public MenuButton()
+        {
+            InitializeComponent();
+        }
+
+        protected override void OnMouseDown(MouseEventArgs mevent)
+        {
+            var splitRect = new Rectangle(Width - SplitWidth, 0, SplitWidth, Height);
+
+            if ((Menu != null) && (mevent.Button == MouseButtons.Left) && splitRect.Contains(mevent.Location))
+            {
+                Menu.Show(this, 0, Height);
+            }
+            else
+            {
+                base.OnMouseDown(mevent);
+            }
+        }
+
+        protected override void OnPaint(PaintEventArgs pevent)
+        {
+            base.OnPaint(pevent);
+
+            if ((Menu != null) && (SplitWidth > 0))
+            {
+                int arrowX = ClientRectangle.Width - 14;
+                int arrowY = ClientRectangle.Height / 2 - 1;
+
+                var arrowBrush = Enabled ? SystemBrushes.ControlText : SystemBrushes.ButtonShadow;
+                var arrows = new[] { new Point(arrowX, arrowY), new Point(arrowX + 7, arrowY), new Point(arrowX + 3, arrowY + 4) };
+                pevent.Graphics.FillPolygon(arrowBrush, arrows);
+
+                int lineX = ClientRectangle.Width - SplitWidth;
+                int lineYFrom = arrowY - 4;
+                int lineYTo = arrowY + 8;
+                using (var separatorPen = new Pen(Brushes.DarkGray) { DashStyle = DashStyle.Dot })
+                {
+                    pevent.Graphics.DrawLine(separatorPen, lineX, lineYFrom, lineX, lineYTo);
+                }
+            }
+        }
+    }
+}

+ 345 - 0
CnCTDRAMapEditor/Controls/ObjectProperties.Designer.cs

@@ -0,0 +1,345 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class ObjectProperties
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.directionLabel = new System.Windows.Forms.Label();
+            this.missionLabel = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.houseComboBox = new MobiusEditor.Controls.PropertiesComboBox();
+            this.strengthNud = new System.Windows.Forms.NumericUpDown();
+            this.directionComboBox = new MobiusEditor.Controls.PropertiesComboBox();
+            this.missionComboBox = new MobiusEditor.Controls.PropertiesComboBox();
+            this.triggerComboBox = new MobiusEditor.Controls.PropertiesComboBox();
+            this.basePriorityNud = new System.Windows.Forms.NumericUpDown();
+            this.prebuiltCheckBox = new System.Windows.Forms.CheckBox();
+            this.basePriorityLabel = new System.Windows.Forms.Label();
+            this.sellableCheckBox = new System.Windows.Forms.CheckBox();
+            this.rebuildCheckBox = new System.Windows.Forms.CheckBox();
+            this.tableLayoutPanel1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.strengthNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.basePriorityNud)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 2;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 31.25F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 68.75F));
+            this.tableLayoutPanel1.Controls.Add(this.label1, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label2, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.directionLabel, 0, 2);
+            this.tableLayoutPanel1.Controls.Add(this.missionLabel, 0, 3);
+            this.tableLayoutPanel1.Controls.Add(this.label5, 0, 4);
+            this.tableLayoutPanel1.Controls.Add(this.houseComboBox, 1, 0);
+            this.tableLayoutPanel1.Controls.Add(this.strengthNud, 1, 1);
+            this.tableLayoutPanel1.Controls.Add(this.directionComboBox, 1, 2);
+            this.tableLayoutPanel1.Controls.Add(this.missionComboBox, 1, 3);
+            this.tableLayoutPanel1.Controls.Add(this.triggerComboBox, 1, 4);
+            this.tableLayoutPanel1.Controls.Add(this.basePriorityNud, 1, 5);
+            this.tableLayoutPanel1.Controls.Add(this.prebuiltCheckBox, 1, 7);
+            this.tableLayoutPanel1.Controls.Add(this.basePriorityLabel, 0, 5);
+            this.tableLayoutPanel1.Controls.Add(this.sellableCheckBox, 1, 8);
+            this.tableLayoutPanel1.Controls.Add(this.rebuildCheckBox, 1, 9);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(4);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 11;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(299, 262);
+            this.tableLayoutPanel1.TabIndex = 0;
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label1.Location = new System.Drawing.Point(4, 0);
+            this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(85, 32);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "House";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label2.Location = new System.Drawing.Point(4, 32);
+            this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(85, 30);
+            this.label2.TabIndex = 1;
+            this.label2.Text = "Strength";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // directionLabel
+            // 
+            this.directionLabel.AutoSize = true;
+            this.directionLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.directionLabel.Location = new System.Drawing.Point(4, 62);
+            this.directionLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.directionLabel.Name = "directionLabel";
+            this.directionLabel.Size = new System.Drawing.Size(85, 32);
+            this.directionLabel.TabIndex = 2;
+            this.directionLabel.Text = "Direction";
+            this.directionLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // missionLabel
+            // 
+            this.missionLabel.AutoSize = true;
+            this.missionLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.missionLabel.Location = new System.Drawing.Point(4, 94);
+            this.missionLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.missionLabel.Name = "missionLabel";
+            this.missionLabel.Size = new System.Drawing.Size(85, 32);
+            this.missionLabel.TabIndex = 3;
+            this.missionLabel.Text = "Mission";
+            this.missionLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label5.Location = new System.Drawing.Point(4, 126);
+            this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(85, 32);
+            this.label5.TabIndex = 4;
+            this.label5.Text = "Trigger";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // houseComboBox
+            // 
+            this.houseComboBox.DisplayMember = "Name";
+            this.houseComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.houseComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.houseComboBox.FormattingEnabled = true;
+            this.houseComboBox.Location = new System.Drawing.Point(97, 4);
+            this.houseComboBox.Margin = new System.Windows.Forms.Padding(4);
+            this.houseComboBox.Name = "houseComboBox";
+            this.houseComboBox.Size = new System.Drawing.Size(198, 24);
+            this.houseComboBox.TabIndex = 5;
+            this.houseComboBox.ValueMember = "Type";
+            this.houseComboBox.SelectedIndexChanged += new System.EventHandler(this.comboBox_SelectedValueChanged);
+            // 
+            // strengthNud
+            // 
+            this.strengthNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.strengthNud.Location = new System.Drawing.Point(97, 36);
+            this.strengthNud.Margin = new System.Windows.Forms.Padding(4);
+            this.strengthNud.Maximum = new decimal(new int[] {
+            256,
+            0,
+            0,
+            0});
+            this.strengthNud.Minimum = new decimal(new int[] {
+            1,
+            0,
+            0,
+            0});
+            this.strengthNud.Name = "strengthNud";
+            this.strengthNud.Size = new System.Drawing.Size(198, 22);
+            this.strengthNud.TabIndex = 6;
+            this.strengthNud.Value = new decimal(new int[] {
+            256,
+            0,
+            0,
+            0});
+            this.strengthNud.ValueChanged += new System.EventHandler(this.nud_ValueChanged);
+            // 
+            // directionComboBox
+            // 
+            this.directionComboBox.DisplayMember = "Name";
+            this.directionComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.directionComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.directionComboBox.FormattingEnabled = true;
+            this.directionComboBox.Location = new System.Drawing.Point(97, 66);
+            this.directionComboBox.Margin = new System.Windows.Forms.Padding(4);
+            this.directionComboBox.Name = "directionComboBox";
+            this.directionComboBox.Size = new System.Drawing.Size(198, 24);
+            this.directionComboBox.TabIndex = 7;
+            this.directionComboBox.ValueMember = "Type";
+            this.directionComboBox.SelectedIndexChanged += new System.EventHandler(this.comboBox_SelectedValueChanged);
+            // 
+            // missionComboBox
+            // 
+            this.missionComboBox.DisplayMember = "Name";
+            this.missionComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.missionComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.missionComboBox.FormattingEnabled = true;
+            this.missionComboBox.Location = new System.Drawing.Point(97, 98);
+            this.missionComboBox.Margin = new System.Windows.Forms.Padding(4);
+            this.missionComboBox.Name = "missionComboBox";
+            this.missionComboBox.Size = new System.Drawing.Size(198, 24);
+            this.missionComboBox.TabIndex = 8;
+            this.missionComboBox.ValueMember = "Type";
+            this.missionComboBox.SelectedIndexChanged += new System.EventHandler(this.comboBox_SelectedValueChanged);
+            // 
+            // triggerComboBox
+            // 
+            this.triggerComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.triggerComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.triggerComboBox.FormattingEnabled = true;
+            this.triggerComboBox.Location = new System.Drawing.Point(97, 130);
+            this.triggerComboBox.Margin = new System.Windows.Forms.Padding(4);
+            this.triggerComboBox.Name = "triggerComboBox";
+            this.triggerComboBox.Size = new System.Drawing.Size(198, 24);
+            this.triggerComboBox.TabIndex = 9;
+            this.triggerComboBox.SelectedIndexChanged += new System.EventHandler(this.comboBox_SelectedValueChanged);
+            // 
+            // basePriorityNud
+            // 
+            this.basePriorityNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.basePriorityNud.Location = new System.Drawing.Point(96, 160);
+            this.basePriorityNud.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+            this.basePriorityNud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.basePriorityNud.Minimum = new decimal(new int[] {
+            1,
+            0,
+            0,
+            -2147483648});
+            this.basePriorityNud.Name = "basePriorityNud";
+            this.basePriorityNud.Size = new System.Drawing.Size(200, 22);
+            this.basePriorityNud.TabIndex = 11;
+            this.basePriorityNud.ValueChanged += new System.EventHandler(this.nud_ValueChanged);
+            // 
+            // prebuiltCheckBox
+            // 
+            this.prebuiltCheckBox.AutoSize = true;
+            this.prebuiltCheckBox.Location = new System.Drawing.Point(96, 186);
+            this.prebuiltCheckBox.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+            this.prebuiltCheckBox.Name = "prebuiltCheckBox";
+            this.prebuiltCheckBox.Size = new System.Drawing.Size(78, 21);
+            this.prebuiltCheckBox.TabIndex = 12;
+            this.prebuiltCheckBox.Text = "Prebuilt";
+            this.prebuiltCheckBox.UseVisualStyleBackColor = true;
+            this.prebuiltCheckBox.CheckedChanged += new System.EventHandler(this.checkBox_CheckedChanged);
+            // 
+            // basePriorityLabel
+            // 
+            this.basePriorityLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.basePriorityLabel.Location = new System.Drawing.Point(3, 158);
+            this.basePriorityLabel.Name = "basePriorityLabel";
+            this.basePriorityLabel.Size = new System.Drawing.Size(87, 26);
+            this.basePriorityLabel.TabIndex = 13;
+            this.basePriorityLabel.Text = "Base Priority";
+            this.basePriorityLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // sellableCheckBox
+            // 
+            this.sellableCheckBox.AutoSize = true;
+            this.sellableCheckBox.Location = new System.Drawing.Point(96, 211);
+            this.sellableCheckBox.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+            this.sellableCheckBox.Name = "sellableCheckBox";
+            this.sellableCheckBox.Size = new System.Drawing.Size(80, 21);
+            this.sellableCheckBox.TabIndex = 14;
+            this.sellableCheckBox.Text = "Sellable";
+            this.sellableCheckBox.UseVisualStyleBackColor = true;
+            this.sellableCheckBox.CheckedChanged += new System.EventHandler(this.checkBox_CheckedChanged);
+            // 
+            // rebuildCheckBox
+            // 
+            this.rebuildCheckBox.AutoSize = true;
+            this.rebuildCheckBox.Location = new System.Drawing.Point(96, 236);
+            this.rebuildCheckBox.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+            this.rebuildCheckBox.Name = "rebuildCheckBox";
+            this.rebuildCheckBox.Size = new System.Drawing.Size(78, 21);
+            this.rebuildCheckBox.TabIndex = 15;
+            this.rebuildCheckBox.Text = "Rebuild";
+            this.rebuildCheckBox.UseVisualStyleBackColor = true;
+            this.rebuildCheckBox.CheckedChanged += new System.EventHandler(this.checkBox_CheckedChanged);
+            // 
+            // ObjectProperties
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.Name = "ObjectProperties";
+            this.Size = new System.Drawing.Size(299, 262);
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.strengthNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.basePriorityNud)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label directionLabel;
+        private System.Windows.Forms.Label missionLabel;
+        private System.Windows.Forms.Label label5;
+        private MobiusEditor.Controls.PropertiesComboBox houseComboBox;
+        private System.Windows.Forms.NumericUpDown strengthNud;
+        private MobiusEditor.Controls.PropertiesComboBox directionComboBox;
+        private MobiusEditor.Controls.PropertiesComboBox missionComboBox;
+        private MobiusEditor.Controls.PropertiesComboBox triggerComboBox;
+        private System.Windows.Forms.NumericUpDown basePriorityNud;
+        private System.Windows.Forms.CheckBox prebuiltCheckBox;
+        private System.Windows.Forms.Label basePriorityLabel;
+        private System.Windows.Forms.CheckBox sellableCheckBox;
+        private System.Windows.Forms.CheckBox rebuildCheckBox;
+    }
+}

+ 272 - 0
CnCTDRAMapEditor/Controls/ObjectProperties.cs

@@ -0,0 +1,272 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Model;
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Specialized;
+using System.ComponentModel;
+using System.Data;
+using System.Linq;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class ObjectProperties : UserControl
+    {
+        private bool isMockObject;
+
+        public IGamePlugin Plugin { get; private set; }
+
+        private INotifyPropertyChanged obj;
+        public INotifyPropertyChanged Object
+        {
+            get => obj;
+            set
+            {
+                if (obj != value)
+                {
+                    if (obj != null)
+                    {
+                        obj.PropertyChanged -= Obj_PropertyChanged;
+                    }
+
+                    obj = value;
+
+                    if (obj != null)
+                    {
+                        obj.PropertyChanged += Obj_PropertyChanged;
+                    }
+
+                    Rebind();
+                }
+            }
+        }
+
+        public ObjectProperties()
+        {
+            InitializeComponent();
+        }
+
+        public void Initialize(IGamePlugin plugin, bool isMockObject)
+        {
+            this.isMockObject = isMockObject;
+
+            Plugin = plugin;
+            plugin.Map.Triggers.CollectionChanged += Triggers_CollectionChanged;
+
+            houseComboBox.DataSource = plugin.Map.Houses.Select(t => new TypeItem<HouseType>(t.Type.Name, t.Type)).ToArray();
+            missionComboBox.DataSource = plugin.Map.MissionTypes;
+
+            UpdateDataSource();
+
+            Disposed += (sender, e) =>
+            {
+                Object = null;
+                plugin.Map.Triggers.CollectionChanged -= Triggers_CollectionChanged;
+            };
+        }
+
+        private void Triggers_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
+        {
+            UpdateDataSource();
+        }
+
+        private void UpdateDataSource()
+        {
+            triggerComboBox.DataSource = Trigger.None.Yield().Concat(Plugin.Map.Triggers.Select(t => t.Name).Distinct()).ToArray();
+        }
+
+        private void Rebind()
+        {
+            houseComboBox.DataBindings.Clear();
+            strengthNud.DataBindings.Clear();
+            directionComboBox.DataBindings.Clear();
+            missionComboBox.DataBindings.Clear();
+            triggerComboBox.DataBindings.Clear();
+            basePriorityNud.DataBindings.Clear();
+            prebuiltCheckBox.DataBindings.Clear();
+            sellableCheckBox.DataBindings.Clear();
+            rebuildCheckBox.DataBindings.Clear();
+
+            if (obj == null)
+            {
+                return;
+            }
+
+            switch (obj)
+            {
+                case Infantry infantry:
+                    {
+                        houseComboBox.Enabled = true;
+                        directionComboBox.DataSource = Plugin.Map.DirectionTypes
+                            .Where(t => t.Facing != FacingType.None)
+                            .Select(t => new TypeItem<DirectionType>(t.Name, t)).ToArray();
+
+                        missionComboBox.DataBindings.Add("SelectedItem", obj, "Mission");
+                        missionLabel.Visible = missionComboBox.Visible = true;
+                        basePriorityLabel.Visible = basePriorityNud.Visible = false;
+                        prebuiltCheckBox.Visible = false;
+                        sellableCheckBox.Visible = false;
+                        rebuildCheckBox.Visible = false;
+                    }
+                    break;
+                case Unit unit:
+                    {
+                        houseComboBox.Enabled = true;
+                        directionComboBox.DataSource = Plugin.Map.DirectionTypes.Select(t => new TypeItem<DirectionType>(t.Name, t)).ToArray();
+                        missionComboBox.DataBindings.Add("SelectedItem", obj, "Mission");
+                        missionLabel.Visible = missionComboBox.Visible = true;
+                        basePriorityLabel.Visible = basePriorityNud.Visible = false;
+                        prebuiltCheckBox.Visible = false;
+                        sellableCheckBox.Visible = false;
+                        rebuildCheckBox.Visible = false;
+                    }
+                    break;
+                case Building building:
+                    {
+                        houseComboBox.Enabled = building.IsPrebuilt;
+                        directionComboBox.DataSource = Plugin.Map.DirectionTypes.Select(t => new TypeItem<DirectionType>(t.Name, t)).ToArray();
+                        directionComboBox.Visible = (building.Type != null) && building.Type.HasTurret;
+                        missionLabel.Visible = missionComboBox.Visible = false;
+                        basePriorityLabel.Visible = basePriorityNud.Visible = true;
+                        prebuiltCheckBox.Visible = true;
+                        prebuiltCheckBox.Enabled = building.BasePriority >= 0;
+
+                        basePriorityNud.DataBindings.Add("Value", obj, "BasePriority");
+                        prebuiltCheckBox.DataBindings.Add("Checked", obj, "IsPrebuilt");
+
+                        switch (Plugin.GameType)
+                        {
+                            case GameType.TiberianDawn:
+                                {
+                                    sellableCheckBox.Visible = false;
+                                    rebuildCheckBox.Visible = false;
+                                } break;
+                            case GameType.RedAlert:
+                                {
+                                    sellableCheckBox.DataBindings.Add("Checked", obj, "Sellable");
+                                    rebuildCheckBox.DataBindings.Add("Checked", obj, "Rebuild");
+                                    sellableCheckBox.Visible = true;
+                                    rebuildCheckBox.Visible = true;
+                                } break;
+                        }
+                    }
+                    break;
+            }
+
+            houseComboBox.DataBindings.Add("SelectedValue", obj, "House");
+            strengthNud.DataBindings.Add("Value", obj, "Strength");
+            directionComboBox.DataBindings.Add("SelectedValue", obj, "Direction");
+            triggerComboBox.DataBindings.Add("SelectedItem", obj, "Trigger");
+        }
+
+        private void Obj_PropertyChanged(object sender, PropertyChangedEventArgs e)
+        {
+            switch (e.PropertyName)
+            {
+                case "Type":
+                    {
+                        Rebind();
+                    }
+                    break;
+                case "BasePriority":
+                    {
+                        if (obj is Building building)
+                        {
+                            prebuiltCheckBox.Enabled = building.BasePriority >= 0;
+                        }
+                    }
+                    break;
+                case "IsPrebuilt":
+                    {
+                        if (obj is Building building)
+                        {
+                            if (!building.IsPrebuilt)
+                            {
+                                var basePlayer = Plugin.Map.HouseTypes.Where(h => h.Equals(Plugin.Map.BasicSection.BasePlayer)).FirstOrDefault() ?? Plugin.Map.HouseTypes.First();
+                                building.House = basePlayer;
+                            }
+                            houseComboBox.Enabled = building.IsPrebuilt;
+                        }
+                    } break;
+            }
+
+            if (!isMockObject)
+            {
+                Plugin.Dirty = true;
+            }
+        }
+
+        private void comboBox_SelectedValueChanged(object sender, EventArgs e)
+        {
+            foreach (Binding binding in (sender as ComboBox).DataBindings)
+            {
+                binding.WriteValue();
+            }
+        }
+
+        private void nud_ValueChanged(object sender, EventArgs e)
+        {
+            foreach (Binding binding in (sender as NumericUpDown).DataBindings)
+            {
+                binding.WriteValue();
+            }
+        }
+
+        private void checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+            foreach (Binding binding in (sender as CheckBox).DataBindings)
+            {
+                binding.WriteValue();
+            }
+        }
+    }
+
+    public class ObjectPropertiesPopup : ToolStripDropDown
+    {
+        private readonly ToolStripControlHost host;
+
+        public ObjectProperties ObjectProperties { get; private set; }
+
+        public ObjectPropertiesPopup(IGamePlugin plugin, INotifyPropertyChanged obj)
+        {
+            ObjectProperties = new ObjectProperties();
+            ObjectProperties.Initialize(plugin, false);
+            ObjectProperties.Object = obj;
+
+            host = new ToolStripControlHost(ObjectProperties);
+            Padding = Margin = host.Padding = host.Margin = Padding.Empty;
+            MinimumSize = ObjectProperties.MinimumSize;
+            ObjectProperties.MinimumSize = ObjectProperties.Size;
+            MaximumSize = ObjectProperties.MaximumSize;
+            ObjectProperties.MaximumSize = ObjectProperties.Size;
+            Size = ObjectProperties.Size;
+            Items.Add(host);
+            ObjectProperties.Disposed += (sender, e) =>
+            {
+                ObjectProperties = null;
+                Dispose(true);
+            };
+        }
+
+        protected override void OnClosed(ToolStripDropDownClosedEventArgs e)
+        {
+            base.OnClosed(e);
+
+            ObjectProperties.Object = null;
+        }
+    }
+}

+ 120 - 0
CnCTDRAMapEditor/Controls/ObjectProperties.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 375 - 0
CnCTDRAMapEditor/Controls/PlayerSettings.Designer.cs

@@ -0,0 +1,375 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class PlayerSettings
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.iqNud = new System.Windows.Forms.NumericUpDown();
+            this.techLevelNud = new System.Windows.Forms.NumericUpDown();
+            this.maxVesselsNud = new System.Windows.Forms.NumericUpDown();
+            this.maxInfantryNud = new System.Windows.Forms.NumericUpDown();
+            this.iqLbl = new System.Windows.Forms.Label();
+            this.techLevelLbl = new System.Windows.Forms.Label();
+            this.maxVesselsLbl = new System.Windows.Forms.Label();
+            this.maxInfantryLbl = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.edgeComboBox = new System.Windows.Forms.ComboBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.creditsNud = new System.Windows.Forms.NumericUpDown();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.maxBuildingsNud = new System.Windows.Forms.NumericUpDown();
+            this.maxUnitsNud = new System.Windows.Forms.NumericUpDown();
+            this.label5 = new System.Windows.Forms.Label();
+            this.playersListBox = new System.Windows.Forms.ListBox();
+            this.playerControlLbl = new System.Windows.Forms.Label();
+            this.playerControlCheckBox = new System.Windows.Forms.CheckBox();
+            this.tableLayoutPanel1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.iqNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.techLevelNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxVesselsNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxInfantryNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.creditsNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxBuildingsNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxUnitsNud)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.AutoSize = true;
+            this.tableLayoutPanel1.ColumnCount = 2;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel1.Controls.Add(this.playerControlLbl, 0, 8);
+            this.tableLayoutPanel1.Controls.Add(this.iqNud, 1, 7);
+            this.tableLayoutPanel1.Controls.Add(this.techLevelNud, 1, 6);
+            this.tableLayoutPanel1.Controls.Add(this.maxVesselsNud, 1, 5);
+            this.tableLayoutPanel1.Controls.Add(this.maxInfantryNud, 1, 4);
+            this.tableLayoutPanel1.Controls.Add(this.iqLbl, 0, 7);
+            this.tableLayoutPanel1.Controls.Add(this.techLevelLbl, 0, 6);
+            this.tableLayoutPanel1.Controls.Add(this.maxVesselsLbl, 0, 5);
+            this.tableLayoutPanel1.Controls.Add(this.maxInfantryLbl, 0, 4);
+            this.tableLayoutPanel1.Controls.Add(this.label1, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.edgeComboBox, 1, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label2, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.creditsNud, 1, 1);
+            this.tableLayoutPanel1.Controls.Add(this.label3, 0, 2);
+            this.tableLayoutPanel1.Controls.Add(this.label4, 0, 3);
+            this.tableLayoutPanel1.Controls.Add(this.maxBuildingsNud, 1, 2);
+            this.tableLayoutPanel1.Controls.Add(this.maxUnitsNud, 1, 3);
+            this.tableLayoutPanel1.Controls.Add(this.label5, 0, 9);
+            this.tableLayoutPanel1.Controls.Add(this.playersListBox, 1, 9);
+            this.tableLayoutPanel1.Controls.Add(this.playerControlCheckBox, 1, 8);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 10;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(329, 372);
+            this.tableLayoutPanel1.TabIndex = 2;
+            // 
+            // iqNud
+            // 
+            this.iqNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.iqNud.Location = new System.Drawing.Point(81, 186);
+            this.iqNud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.iqNud.Name = "iqNud";
+            this.iqNud.Size = new System.Drawing.Size(245, 20);
+            this.iqNud.TabIndex = 26;
+            // 
+            // techLevelNud
+            // 
+            this.techLevelNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.techLevelNud.Location = new System.Drawing.Point(81, 160);
+            this.techLevelNud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.techLevelNud.Name = "techLevelNud";
+            this.techLevelNud.Size = new System.Drawing.Size(245, 20);
+            this.techLevelNud.TabIndex = 25;
+            // 
+            // maxVesselsNud
+            // 
+            this.maxVesselsNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.maxVesselsNud.Location = new System.Drawing.Point(81, 134);
+            this.maxVesselsNud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.maxVesselsNud.Name = "maxVesselsNud";
+            this.maxVesselsNud.Size = new System.Drawing.Size(245, 20);
+            this.maxVesselsNud.TabIndex = 24;
+            // 
+            // maxInfantryNud
+            // 
+            this.maxInfantryNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.maxInfantryNud.Location = new System.Drawing.Point(81, 108);
+            this.maxInfantryNud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.maxInfantryNud.Name = "maxInfantryNud";
+            this.maxInfantryNud.Size = new System.Drawing.Size(245, 20);
+            this.maxInfantryNud.TabIndex = 23;
+            // 
+            // iqLbl
+            // 
+            this.iqLbl.AutoSize = true;
+            this.iqLbl.Location = new System.Drawing.Point(3, 183);
+            this.iqLbl.Name = "iqLbl";
+            this.iqLbl.Size = new System.Drawing.Size(18, 13);
+            this.iqLbl.TabIndex = 22;
+            this.iqLbl.Text = "IQ";
+            // 
+            // techLevelLbl
+            // 
+            this.techLevelLbl.AutoSize = true;
+            this.techLevelLbl.Location = new System.Drawing.Point(3, 157);
+            this.techLevelLbl.Name = "techLevelLbl";
+            this.techLevelLbl.Size = new System.Drawing.Size(61, 13);
+            this.techLevelLbl.TabIndex = 21;
+            this.techLevelLbl.Text = "Tech Level";
+            // 
+            // maxVesselsLbl
+            // 
+            this.maxVesselsLbl.AutoSize = true;
+            this.maxVesselsLbl.Location = new System.Drawing.Point(3, 131);
+            this.maxVesselsLbl.Name = "maxVesselsLbl";
+            this.maxVesselsLbl.Size = new System.Drawing.Size(66, 13);
+            this.maxVesselsLbl.TabIndex = 20;
+            this.maxVesselsLbl.Text = "Max Vessels";
+            // 
+            // maxInfantryLbl
+            // 
+            this.maxInfantryLbl.AutoSize = true;
+            this.maxInfantryLbl.Location = new System.Drawing.Point(3, 105);
+            this.maxInfantryLbl.Name = "maxInfantryLbl";
+            this.maxInfantryLbl.Size = new System.Drawing.Size(65, 13);
+            this.maxInfantryLbl.TabIndex = 19;
+            this.maxInfantryLbl.Text = "Max Infantry";
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(3, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(32, 13);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "Edge";
+            // 
+            // edgeComboBox
+            // 
+            this.edgeComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.edgeComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.edgeComboBox.FormattingEnabled = true;
+            this.edgeComboBox.Location = new System.Drawing.Point(81, 3);
+            this.edgeComboBox.Name = "edgeComboBox";
+            this.edgeComboBox.Size = new System.Drawing.Size(245, 21);
+            this.edgeComboBox.TabIndex = 10;
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(3, 27);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(39, 13);
+            this.label2.TabIndex = 11;
+            this.label2.Text = "Credits";
+            // 
+            // creditsNud
+            // 
+            this.creditsNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.creditsNud.Location = new System.Drawing.Point(81, 30);
+            this.creditsNud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.creditsNud.Name = "creditsNud";
+            this.creditsNud.Size = new System.Drawing.Size(245, 20);
+            this.creditsNud.TabIndex = 12;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(3, 53);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(72, 13);
+            this.label3.TabIndex = 13;
+            this.label3.Text = "Max Buildings";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(3, 79);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(54, 13);
+            this.label4.TabIndex = 14;
+            this.label4.Text = "Max Units";
+            // 
+            // maxBuildingsNud
+            // 
+            this.maxBuildingsNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.maxBuildingsNud.Location = new System.Drawing.Point(81, 56);
+            this.maxBuildingsNud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.maxBuildingsNud.Name = "maxBuildingsNud";
+            this.maxBuildingsNud.Size = new System.Drawing.Size(245, 20);
+            this.maxBuildingsNud.TabIndex = 15;
+            // 
+            // maxUnitsNud
+            // 
+            this.maxUnitsNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.maxUnitsNud.Location = new System.Drawing.Point(81, 82);
+            this.maxUnitsNud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.maxUnitsNud.Name = "maxUnitsNud";
+            this.maxUnitsNud.Size = new System.Drawing.Size(245, 20);
+            this.maxUnitsNud.TabIndex = 16;
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(3, 229);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(31, 13);
+            this.label5.TabIndex = 17;
+            this.label5.Text = "Allies";
+            // 
+            // playersListBox
+            // 
+            this.playersListBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.playersListBox.FormattingEnabled = true;
+            this.playersListBox.Location = new System.Drawing.Point(81, 232);
+            this.playersListBox.Name = "playersListBox";
+            this.playersListBox.SelectionMode = System.Windows.Forms.SelectionMode.MultiSimple;
+            this.playersListBox.Size = new System.Drawing.Size(100, 134);
+            this.playersListBox.TabIndex = 18;
+            // 
+            // playerControlLbl
+            // 
+            this.playerControlLbl.AutoSize = true;
+            this.playerControlLbl.Location = new System.Drawing.Point(3, 209);
+            this.playerControlLbl.Name = "playerControlLbl";
+            this.playerControlLbl.Size = new System.Drawing.Size(72, 13);
+            this.playerControlLbl.TabIndex = 27;
+            this.playerControlLbl.Text = "Player Control";
+            // 
+            // playerControlCheckBox
+            // 
+            this.playerControlCheckBox.AutoSize = true;
+            this.playerControlCheckBox.Location = new System.Drawing.Point(81, 212);
+            this.playerControlCheckBox.Name = "playerControlCheckBox";
+            this.playerControlCheckBox.Size = new System.Drawing.Size(15, 14);
+            this.playerControlCheckBox.TabIndex = 28;
+            this.playerControlCheckBox.UseVisualStyleBackColor = true;
+            // 
+            // PlayerSettings
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.Name = "PlayerSettings";
+            this.Size = new System.Drawing.Size(329, 372);
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.iqNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.techLevelNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxVesselsNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxInfantryNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.creditsNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxBuildingsNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxUnitsNud)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.ComboBox edgeComboBox;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.NumericUpDown creditsNud;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.NumericUpDown maxBuildingsNud;
+        private System.Windows.Forms.NumericUpDown maxUnitsNud;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.ListBox playersListBox;
+        private System.Windows.Forms.Label techLevelLbl;
+        private System.Windows.Forms.Label maxVesselsLbl;
+        private System.Windows.Forms.Label maxInfantryLbl;
+        private System.Windows.Forms.Label iqLbl;
+        private System.Windows.Forms.NumericUpDown maxVesselsNud;
+        private System.Windows.Forms.NumericUpDown maxInfantryNud;
+        private System.Windows.Forms.NumericUpDown iqNud;
+        private System.Windows.Forms.NumericUpDown techLevelNud;
+        private System.Windows.Forms.Label playerControlLbl;
+        private System.Windows.Forms.CheckBox playerControlCheckBox;
+    }
+}

+ 86 - 0
CnCTDRAMapEditor/Controls/PlayerSettings.cs

@@ -0,0 +1,86 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Model;
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class PlayerSettings : UserControl
+    {
+        private readonly PropertyTracker<House> houseSettingsTracker;
+        private readonly dynamic house;
+
+        public PlayerSettings(IGamePlugin plugin, PropertyTracker<House> houseSettingsTracker)
+        {
+            this.houseSettingsTracker = houseSettingsTracker;
+            house = houseSettingsTracker;
+
+            InitializeComponent();
+
+            edgeComboBox.Items.Clear();
+            edgeComboBox.Items.AddRange(new string[] { "North", "South", "West", "East" });
+
+            creditsNud.DataBindings.Add("Value", houseSettingsTracker, "Credits");
+            maxBuildingsNud.DataBindings.Add("Value", houseSettingsTracker, "MaxBuilding");
+            maxUnitsNud.DataBindings.Add("Value", houseSettingsTracker, "MaxUnit");
+            edgeComboBox.DataBindings.Add("SelectedItem", houseSettingsTracker, "Edge");
+
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    maxInfantryNud.Visible = maxInfantryLbl.Visible = false;
+                    maxVesselsNud.Visible = maxVesselsLbl.Visible = false;
+                    techLevelNud.Visible = techLevelLbl.Visible = false;
+                    iqNud.Visible = iqLbl.Visible = false;
+                    playerControlCheckBox.Visible = playerControlLbl.Visible = false;
+                    break;
+                case GameType.RedAlert:
+                    maxInfantryNud.DataBindings.Add("Value", houseSettingsTracker, "MaxInfantry");
+                    maxVesselsNud.DataBindings.Add("Value", houseSettingsTracker, "MaxVessel");
+                    techLevelNud.DataBindings.Add("Value", houseSettingsTracker, "TechLevel");
+                    iqNud.DataBindings.Add("Value", houseSettingsTracker, "IQ");
+                    playerControlCheckBox.DataBindings.Add("Checked", houseSettingsTracker, "PlayerControl");
+                    break;
+            }
+
+            playersListBox.Items.Clear();
+            playersListBox.Items.AddRange(plugin.Map.Houses.Select(h => h.Type.Name).ToArray());
+
+            var selectedIndices = new List<int>();
+            foreach (var id in house.Allies)
+            {
+                playersListBox.SetSelected(id, true);
+            }
+
+            playersListBox.SelectedIndexChanged += playersListBox_SelectedIndexChanged;
+        }
+
+        private void playersListBox_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            var allies = 0;
+            foreach (int selectedIndex in playersListBox.SelectedIndices)
+            {
+                allies |= 1 << selectedIndex;
+            }
+            house.Allies = new AlliesMask(allies);
+        }
+    }
+}

+ 120 - 0
CnCTDRAMapEditor/Controls/PlayerSettings.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 50 - 0
CnCTDRAMapEditor/Controls/PropertiesComboBox.Designer.cs

@@ -0,0 +1,50 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class PropertiesComboBox
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            components = new System.ComponentModel.Container();
+        }
+
+        #endregion
+    }
+}

+ 65 - 0
CnCTDRAMapEditor/Controls/PropertiesComboBox.cs

@@ -0,0 +1,65 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class PropertiesComboBox : ComboBox
+    {
+        private bool savedAutoClose;
+
+        private ToolStripDropDown DropDownHost
+        {
+            get
+            {
+                var parent = Parent;
+                while ((parent != null) && !(parent is ToolStripDropDown))
+                {
+                    parent = parent.Parent;
+                }
+                return parent as ToolStripDropDown;
+            }
+        }
+
+        public PropertiesComboBox()
+        {
+            InitializeComponent();
+        }
+
+        protected override void OnDropDownClosed(EventArgs e)
+        {
+            var dropDownHost = DropDownHost;
+            if (dropDownHost != null)
+            {
+                dropDownHost.AutoClose = savedAutoClose;
+            }
+
+            base.OnDropDownClosed(e);
+        }
+
+        protected override void OnDropDown(EventArgs e)
+        {
+            var dropDownHost = DropDownHost;
+            if (dropDownHost != null)
+            {
+                savedAutoClose = dropDownHost.AutoClose;
+                dropDownHost.AutoClose = false;
+            }
+
+            base.OnDropDown(e);
+        }
+    }
+}

+ 112 - 0
CnCTDRAMapEditor/Controls/TerrainProperties.Designer.cs

@@ -0,0 +1,112 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class TerrainProperties
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.label5 = new System.Windows.Forms.Label();
+            this.triggerComboBox = new MobiusEditor.Controls.PropertiesComboBox();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 2;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 31.25F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 68.75F));
+            this.tableLayoutPanel1.Controls.Add(this.label5, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.triggerComboBox, 1, 0);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 1;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(336, 38);
+            this.tableLayoutPanel1.TabIndex = 0;
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label5.Location = new System.Drawing.Point(4, 0);
+            this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(97, 38);
+            this.label5.TabIndex = 4;
+            this.label5.Text = "Trigger";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // triggerComboBox
+            // 
+            this.triggerComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.triggerComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.triggerComboBox.FormattingEnabled = true;
+            this.triggerComboBox.Location = new System.Drawing.Point(109, 5);
+            this.triggerComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.triggerComboBox.Name = "triggerComboBox";
+            this.triggerComboBox.Size = new System.Drawing.Size(223, 28);
+            this.triggerComboBox.TabIndex = 9;
+            this.triggerComboBox.SelectedIndexChanged += new System.EventHandler(this.comboBox_SelectedValueChanged);
+            // 
+            // TriggerProperties
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.Name = "TriggerProperties";
+            this.Size = new System.Drawing.Size(336, 38);
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.Label label5;
+        private MobiusEditor.Controls.PropertiesComboBox triggerComboBox;
+    }
+}

+ 158 - 0
CnCTDRAMapEditor/Controls/TerrainProperties.cs

@@ -0,0 +1,158 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Model;
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Linq;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class TerrainProperties : UserControl
+    {
+        private bool isMockObject;
+
+        public IGamePlugin Plugin { get; private set; }
+
+        private Terrain terrain;
+        public Terrain Terrain
+        {
+            get => terrain;
+            set
+            {
+                if (terrain != value)
+                {
+                    terrain = value;
+                    Rebind();
+                }
+            }
+        }
+
+        public TerrainProperties()
+        {
+            InitializeComponent();
+        }
+
+        public void Initialize(IGamePlugin plugin, bool isMockObject)
+        {
+            this.isMockObject = isMockObject;
+
+            Plugin = plugin;
+            plugin.Map.Triggers.CollectionChanged += Triggers_CollectionChanged;
+
+            UpdateDataSource();
+
+            Disposed += (sender, e) =>
+            {
+                Terrain = null;
+                plugin.Map.Triggers.CollectionChanged -= Triggers_CollectionChanged;
+            };
+        }
+
+        private void Triggers_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
+        {
+            UpdateDataSource();
+        }
+
+        private void UpdateDataSource()
+        {
+            triggerComboBox.DataSource = Trigger.None.Yield().Concat(Plugin.Map.Triggers.Select(t => t.Name).Distinct()).ToArray();
+        }
+
+        private void Rebind()
+        {
+            triggerComboBox.DataBindings.Clear();
+
+            if (terrain == null)
+            {
+                return;
+            }
+
+            triggerComboBox.DataBindings.Add("SelectedItem", terrain, "Trigger");
+        }
+
+        private void Obj_PropertyChanged(object sender, PropertyChangedEventArgs e)
+        {
+            switch (e.PropertyName)
+            {
+                case "Type":
+                    {
+                        Rebind();
+                    }
+                    break;
+            }
+
+            if (!isMockObject)
+            {
+                Plugin.Dirty = true;
+            }
+        }
+
+        private void comboBox_SelectedValueChanged(object sender, EventArgs e)
+        {
+            foreach (Binding binding in (sender as ComboBox).DataBindings)
+            {
+                binding.WriteValue();
+            }
+        }
+
+        private void nud_ValueChanged(object sender, EventArgs e)
+        {
+            foreach (Binding binding in (sender as NumericUpDown).DataBindings)
+            {
+                binding.WriteValue();
+            }
+        }
+    }
+
+    public class TerrainPropertiesPopup : ToolStripDropDown
+    {
+        private readonly ToolStripControlHost host;
+
+        public TerrainProperties TerrainProperties { get; private set; }
+
+        public TerrainPropertiesPopup(IGamePlugin plugin, Terrain terrain)
+        {
+            TerrainProperties = new TerrainProperties();
+            TerrainProperties.Initialize(plugin, false);
+            TerrainProperties.Terrain = terrain;
+
+            host = new ToolStripControlHost(TerrainProperties);
+            Padding = Margin = host.Padding = host.Margin = Padding.Empty;
+            MinimumSize = TerrainProperties.MinimumSize;
+            TerrainProperties.MinimumSize = TerrainProperties.Size;
+            MaximumSize = TerrainProperties.MaximumSize;
+            TerrainProperties.MaximumSize = TerrainProperties.Size;
+            Size = TerrainProperties.Size;
+            Items.Add(host);
+            TerrainProperties.Disposed += (sender, e) =>
+            {
+                TerrainProperties = null;
+                Dispose(true);
+            };
+        }
+
+        protected override void OnClosed(ToolStripDropDownClosedEventArgs e)
+        {
+            base.OnClosed(e);
+
+            TerrainProperties.Terrain = null;
+        }
+    }
+}

+ 120 - 0
CnCTDRAMapEditor/Controls/TerrainProperties.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 50 - 0
CnCTDRAMapEditor/Controls/TypeComboBox.Designer.cs

@@ -0,0 +1,50 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Controls
+{
+    partial class TypeComboBox
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            components = new System.ComponentModel.Container();
+        }
+
+        #endregion
+    }
+}

+ 98 - 0
CnCTDRAMapEditor/Controls/TypeComboBox.cs

@@ -0,0 +1,98 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Model;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Controls
+{
+    public partial class TypeComboBox : ComboBox
+    {
+        [Category("Behavior")]
+        public Image MissingThumbnail { get; set; } = SystemIcons.Error.ToBitmap();
+
+        public IEnumerable<IBrowsableType> Types
+        {
+            get => Items.Cast<TypeItem<IBrowsableType>>().Select(t => t.Type);
+            set
+            {
+                DataSource = value.Select(t => new TypeItem<IBrowsableType>(t.DisplayName, t)).ToArray();
+                DropDownHeight = Math.Max(DropDownHeight, value.Max(t => (t.Thumbnail?.Height ?? MissingThumbnail.Height) * 3));
+                Invalidate();
+            }
+        }
+
+        public IBrowsableType SelectedType => SelectedValue as IBrowsableType;
+
+        public TypeComboBox()
+        {
+            InitializeComponent();
+
+            DisplayMember = "Name";
+            ValueMember = "Type";
+        }
+
+        protected override void OnMeasureItem(MeasureItemEventArgs e)
+        {
+            base.OnMeasureItem(e);
+
+            var typeItem = Items[e.Index] as TypeItem<IBrowsableType>;
+            if (typeItem?.Type != null)
+            {
+                e.ItemHeight = typeItem.Type.Thumbnail?.Height ?? MissingThumbnail.Height;
+            }
+        }
+
+        protected override void OnDrawItem(DrawItemEventArgs e)
+        {
+            base.OnDrawItem(e);
+
+            e.DrawBackground();
+
+            if ((e.Index >= 0) && (e.Index < Items.Count))
+            {
+                var typeItem = Items[e.Index] as TypeItem<IBrowsableType>;
+                if (typeItem?.Type != null)
+                {
+                    StringFormat stringFormat = new StringFormat
+                    {
+                        LineAlignment = StringAlignment.Center
+                    };
+
+                    var textColor = ((e.State & DrawItemState.Selected) == DrawItemState.Selected) ? SystemBrushes.HighlightText : SystemBrushes.WindowText;
+                    var textSize = e.Graphics.MeasureString(typeItem.Name, Font, e.Bounds.Width, stringFormat);
+                    e.Graphics.DrawString(typeItem.Name, Font, textColor, e.Bounds, stringFormat);
+
+                    if ((e.State & DrawItemState.ComboBoxEdit) == DrawItemState.None)
+                    {
+                        var thumbnail = typeItem.Type.Thumbnail ?? MissingThumbnail;
+                        var thumbnailWidth = (int)Math.Min(e.Bounds.Width - textSize.Width, thumbnail.Width);
+                        var thumbnailSize = new Size(thumbnailWidth, thumbnailWidth * thumbnail.Height / thumbnail.Width);
+                        var thumbnailBounds = new Rectangle(new Point(e.Bounds.Right - thumbnailSize.Width, e.Bounds.Top), thumbnailSize);
+                        e.Graphics.DrawImage(thumbnail, thumbnailBounds);
+                    }
+                }
+            }
+
+            e.DrawFocusRectangle();
+        }
+    }
+}

+ 158 - 0
CnCTDRAMapEditor/Dialogs/ErrorMessageBox.Designer.cs

@@ -0,0 +1,158 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Dialogs
+{
+    partial class ErrorMessageBox
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.lblMessage = new System.Windows.Forms.Label();
+            this.txtErrors = new System.Windows.Forms.TextBox();
+            this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
+            this.btnOK = new System.Windows.Forms.Button();
+            this.btnCopy = new System.Windows.Forms.Button();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.flowLayoutPanel1.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 1;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.Controls.Add(this.lblMessage, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.txtErrors, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel1, 0, 2);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 3;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(447, 285);
+            this.tableLayoutPanel1.TabIndex = 0;
+            // 
+            // lblMessage
+            // 
+            this.lblMessage.AutoSize = true;
+            this.lblMessage.Location = new System.Drawing.Point(3, 0);
+            this.lblMessage.Name = "lblMessage";
+            this.lblMessage.Size = new System.Drawing.Size(191, 13);
+            this.lblMessage.TabIndex = 1;
+            this.lblMessage.Text = "The following errors were encountered:";
+            // 
+            // txtErrors
+            // 
+            this.txtErrors.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.txtErrors.Location = new System.Drawing.Point(3, 16);
+            this.txtErrors.Multiline = true;
+            this.txtErrors.Name = "txtErrors";
+            this.txtErrors.ReadOnly = true;
+            this.txtErrors.ScrollBars = System.Windows.Forms.ScrollBars.Both;
+            this.txtErrors.Size = new System.Drawing.Size(441, 231);
+            this.txtErrors.TabIndex = 0;
+            this.txtErrors.WordWrap = false;
+            // 
+            // flowLayoutPanel1
+            // 
+            this.flowLayoutPanel1.AutoSize = true;
+            this.flowLayoutPanel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.flowLayoutPanel1.Controls.Add(this.btnOK);
+            this.flowLayoutPanel1.Controls.Add(this.btnCopy);
+            this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.RightToLeft;
+            this.flowLayoutPanel1.Location = new System.Drawing.Point(3, 253);
+            this.flowLayoutPanel1.Name = "flowLayoutPanel1";
+            this.flowLayoutPanel1.Size = new System.Drawing.Size(441, 29);
+            this.flowLayoutPanel1.TabIndex = 1;
+            // 
+            // btnOK
+            // 
+            this.btnOK.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.btnOK.Location = new System.Drawing.Point(363, 3);
+            this.btnOK.Name = "btnOK";
+            this.btnOK.Size = new System.Drawing.Size(75, 23);
+            this.btnOK.TabIndex = 0;
+            this.btnOK.Text = "&OK";
+            this.btnOK.UseVisualStyleBackColor = true;
+            // 
+            // btnCopy
+            // 
+            this.btnCopy.Location = new System.Drawing.Point(246, 3);
+            this.btnCopy.Name = "btnCopy";
+            this.btnCopy.Size = new System.Drawing.Size(111, 23);
+            this.btnCopy.TabIndex = 1;
+            this.btnCopy.Text = "&Copy to Clipboard";
+            this.btnCopy.UseVisualStyleBackColor = true;
+            this.btnCopy.Click += new System.EventHandler(this.btnCopy_Click);
+            // 
+            // ErrorMessageBox
+            // 
+            this.AcceptButton = this.btnOK;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.btnOK;
+            this.ClientSize = new System.Drawing.Size(447, 285);
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "ErrorMessageBox";
+            this.ShowInTaskbar = false;
+            this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "Error Report";
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            this.flowLayoutPanel1.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.TextBox txtErrors;
+        private System.Windows.Forms.Label lblMessage;
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
+        private System.Windows.Forms.Button btnOK;
+        private System.Windows.Forms.Button btnCopy;
+    }
+}

+ 55 - 0
CnCTDRAMapEditor/Dialogs/ErrorMessageBox.cs

@@ -0,0 +1,55 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+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;
+
+namespace MobiusEditor.Dialogs
+{
+    public partial class ErrorMessageBox : Form
+    {
+        public string Message
+        {
+            set
+            {
+                lblMessage.Text = value;
+            }
+        }
+
+        public IEnumerable<string> Errors
+        {
+            set
+            {
+                txtErrors.Text = string.Join(Environment.NewLine, value);
+            }
+        }
+
+        public ErrorMessageBox()
+        {
+            InitializeComponent();
+        }
+
+        private void btnCopy_Click(object sender, EventArgs e)
+        {
+            Clipboard.SetText(txtErrors.Text);
+        }
+    }
+}

+ 120 - 0
CnCTDRAMapEditor/Dialogs/ErrorMessageBox.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 153 - 0
CnCTDRAMapEditor/Dialogs/InviteMessageBox.Designer.cs

@@ -0,0 +1,153 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Dialogs
+{
+    partial class InviteMessageBox
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
+            this.flowLayoutPanel2 = new System.Windows.Forms.FlowLayoutPanel();
+            this.btnOK = new System.Windows.Forms.Button();
+            this.checkBoxDontShowThisAgain = new System.Windows.Forms.CheckBox();
+            this.pictureBoxIcon = new System.Windows.Forms.PictureBox();
+            this.label1 = new System.Windows.Forms.Label();
+            this.flowLayoutPanel1.SuspendLayout();
+            this.flowLayoutPanel2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBoxIcon)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // flowLayoutPanel1
+            // 
+            this.flowLayoutPanel1.Controls.Add(this.flowLayoutPanel2);
+            this.flowLayoutPanel1.Controls.Add(this.btnOK);
+            this.flowLayoutPanel1.Controls.Add(this.checkBoxDontShowThisAgain);
+            this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.TopDown;
+            this.flowLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.flowLayoutPanel1.Name = "flowLayoutPanel1";
+            this.flowLayoutPanel1.Size = new System.Drawing.Size(425, 97);
+            this.flowLayoutPanel1.TabIndex = 0;
+            // 
+            // flowLayoutPanel2
+            // 
+            this.flowLayoutPanel2.AutoSize = true;
+            this.flowLayoutPanel2.Controls.Add(this.pictureBoxIcon);
+            this.flowLayoutPanel2.Controls.Add(this.label1);
+            this.flowLayoutPanel2.Location = new System.Drawing.Point(3, 3);
+            this.flowLayoutPanel2.Name = "flowLayoutPanel2";
+            this.flowLayoutPanel2.Size = new System.Drawing.Size(419, 38);
+            this.flowLayoutPanel2.TabIndex = 0;
+            // 
+            // btnOK
+            // 
+            this.btnOK.Anchor = System.Windows.Forms.AnchorStyles.None;
+            this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
+            this.btnOK.Location = new System.Drawing.Point(175, 47);
+            this.btnOK.Name = "btnOK";
+            this.btnOK.Size = new System.Drawing.Size(75, 23);
+            this.btnOK.TabIndex = 1;
+            this.btnOK.Text = "&OK";
+            this.btnOK.UseVisualStyleBackColor = true;
+            // 
+            // checkBoxDontShowThisAgain
+            // 
+            this.checkBoxDontShowThisAgain.AutoSize = true;
+            this.flowLayoutPanel1.SetFlowBreak(this.checkBoxDontShowThisAgain, true);
+            this.checkBoxDontShowThisAgain.Location = new System.Drawing.Point(3, 76);
+            this.checkBoxDontShowThisAgain.Name = "checkBoxDontShowThisAgain";
+            this.checkBoxDontShowThisAgain.Size = new System.Drawing.Size(127, 17);
+            this.checkBoxDontShowThisAgain.TabIndex = 2;
+            this.checkBoxDontShowThisAgain.Text = "Don\'t show this again";
+            this.checkBoxDontShowThisAgain.UseVisualStyleBackColor = true;
+            // 
+            // pictureBoxIcon
+            // 
+            this.pictureBoxIcon.Location = new System.Drawing.Point(3, 3);
+            this.pictureBoxIcon.Name = "pictureBoxIcon";
+            this.pictureBoxIcon.Size = new System.Drawing.Size(32, 32);
+            this.pictureBoxIcon.TabIndex = 0;
+            this.pictureBoxIcon.TabStop = false;
+            // 
+            // label1
+            // 
+            this.label1.Anchor = System.Windows.Forms.AnchorStyles.None;
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(41, 12);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(375, 13);
+            this.label1.TabIndex = 1;
+            this.label1.Text = "To join a game session or accept game invites, please first exit the Map Editor.";
+            // 
+            // CheckMessageBox
+            // 
+            this.AcceptButton = this.btnOK;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.btnOK;
+            this.ClientSize = new System.Drawing.Size(425, 97);
+            this.Controls.Add(this.flowLayoutPanel1);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "CheckMessageBox";
+            this.ShowInTaskbar = false;
+            this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "Map Editor";
+            this.Load += new System.EventHandler(this.InviteMessageBox_Load);
+            this.flowLayoutPanel1.ResumeLayout(false);
+            this.flowLayoutPanel1.PerformLayout();
+            this.flowLayoutPanel2.ResumeLayout(false);
+            this.flowLayoutPanel2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.pictureBoxIcon)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel2;
+        private System.Windows.Forms.Button btnOK;
+        private System.Windows.Forms.CheckBox checkBoxDontShowThisAgain;
+        private System.Windows.Forms.PictureBox pictureBoxIcon;
+        private System.Windows.Forms.Label label1;
+    }
+}

+ 38 - 0
CnCTDRAMapEditor/Dialogs/InviteMessageBox.cs

@@ -0,0 +1,38 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Drawing;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Dialogs
+{
+    public partial class InviteMessageBox : Form
+    {
+        public bool DontShowAgain => checkBoxDontShowThisAgain.Checked;
+
+        public InviteMessageBox()
+        {
+            InitializeComponent();
+        }
+
+        private void InviteMessageBox_Load(object sender, EventArgs e)
+        {
+            using (var infoIcon = new Icon(SystemIcons.Information, pictureBoxIcon.Width, pictureBoxIcon.Height))
+            {
+                pictureBoxIcon.Image = infoIcon.ToBitmap();
+            }
+        }
+    }
+}

+ 120 - 0
CnCTDRAMapEditor/Dialogs/InviteMessageBox.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 166 - 0
CnCTDRAMapEditor/Dialogs/MapSettingsDialog.Designer.cs

@@ -0,0 +1,166 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Dialogs
+{
+    partial class MapSettingsDialog
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnOK = new System.Windows.Forms.Button();
+            this.settingsTreeView = new System.Windows.Forms.TreeView();
+            this.settingsPanel = new System.Windows.Forms.Panel();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.flowLayoutPanel1.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 2;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 80F));
+            this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel1, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.settingsTreeView, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.settingsPanel, 1, 0);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 2;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(784, 561);
+            this.tableLayoutPanel1.TabIndex = 0;
+            // 
+            // flowLayoutPanel1
+            // 
+            this.flowLayoutPanel1.AutoSize = true;
+            this.flowLayoutPanel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.tableLayoutPanel1.SetColumnSpan(this.flowLayoutPanel1, 2);
+            this.flowLayoutPanel1.Controls.Add(this.btnCancel);
+            this.flowLayoutPanel1.Controls.Add(this.btnOK);
+            this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.RightToLeft;
+            this.flowLayoutPanel1.Location = new System.Drawing.Point(3, 524);
+            this.flowLayoutPanel1.Name = "flowLayoutPanel1";
+            this.flowLayoutPanel1.Size = new System.Drawing.Size(778, 34);
+            this.flowLayoutPanel1.TabIndex = 1;
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.AutoSize = true;
+            this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.btnCancel.Location = new System.Drawing.Point(708, 2);
+            this.btnCancel.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(68, 30);
+            this.btnCancel.TabIndex = 2;
+            this.btnCancel.Text = "&Cancel";
+            this.btnCancel.UseVisualStyleBackColor = true;
+            // 
+            // btnOK
+            // 
+            this.btnOK.AutoSize = true;
+            this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
+            this.btnOK.Location = new System.Drawing.Point(654, 2);
+            this.btnOK.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.btnOK.Name = "btnOK";
+            this.btnOK.Size = new System.Drawing.Size(50, 30);
+            this.btnOK.TabIndex = 3;
+            this.btnOK.Text = "&OK";
+            this.btnOK.UseVisualStyleBackColor = true;
+            // 
+            // settingsTreeView
+            // 
+            this.settingsTreeView.CheckBoxes = true;
+            this.settingsTreeView.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.settingsTreeView.DrawMode = System.Windows.Forms.TreeViewDrawMode.OwnerDrawText;
+            this.settingsTreeView.HideSelection = false;
+            this.settingsTreeView.Location = new System.Drawing.Point(3, 3);
+            this.settingsTreeView.Name = "settingsTreeView";
+            this.settingsTreeView.Size = new System.Drawing.Size(150, 515);
+            this.settingsTreeView.TabIndex = 2;
+            this.settingsTreeView.AfterCheck += new System.Windows.Forms.TreeViewEventHandler(this.settingsTreeView_AfterCheck);
+            this.settingsTreeView.DrawNode += new System.Windows.Forms.DrawTreeNodeEventHandler(this.settingsTreeView_DrawNode);
+            this.settingsTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.settingsTreeView_AfterSelect);
+            // 
+            // settingsPanel
+            // 
+            this.settingsPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.settingsPanel.Location = new System.Drawing.Point(166, 10);
+            this.settingsPanel.Margin = new System.Windows.Forms.Padding(10, 10, 10, 10);
+            this.settingsPanel.Name = "settingsPanel";
+            this.settingsPanel.Size = new System.Drawing.Size(608, 501);
+            this.settingsPanel.TabIndex = 3;
+            // 
+            // MapSettingsDialog
+            // 
+            this.AcceptButton = this.btnOK;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.btnCancel;
+            this.ClientSize = new System.Drawing.Size(784, 561);
+            this.ControlBox = false;
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "MapSettingsDialog";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "Map Settings";
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            this.flowLayoutPanel1.ResumeLayout(false);
+            this.flowLayoutPanel1.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnOK;
+        private System.Windows.Forms.TreeView settingsTreeView;
+        private System.Windows.Forms.Panel settingsPanel;
+    }
+}

+ 157 - 0
CnCTDRAMapEditor/Dialogs/MapSettingsDialog.cs

@@ -0,0 +1,157 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Controls;
+using MobiusEditor.Interface;
+using MobiusEditor.Model;
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Runtime.InteropServices;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Dialogs
+{
+    public partial class MapSettingsDialog : Form
+    {
+        private const int TVIF_STATE = 0x8;
+        private const int TVIS_STATEIMAGEMASK = 0xF000;
+        private const int TV_FIRST = 0x1100;
+        private const int TVM_SETITEM = TV_FIRST + 63;
+
+        [DllImport("user32.dll")]
+        static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
+
+        private struct TVITEM
+        {
+            public int mask;
+            public IntPtr hItem;
+            public int state;
+            public int stateMask;
+            [MarshalAs(UnmanagedType.LPTStr)]
+            public String lpszText;
+            public int cchTextMax;
+            public int iImage;
+            public int iSelectedImage;
+            public int cChildren;
+            public IntPtr lParam;
+        }
+
+        private readonly IGamePlugin plugin;
+        private readonly PropertyTracker<BasicSection> basicSettingsTracker;
+        private readonly PropertyTracker<BriefingSection> briefingSettingsTracker;
+        private readonly IDictionary<House, PropertyTracker<House>> houseSettingsTrackers;
+        private readonly TreeNode playersNode;
+
+        public MapSettingsDialog(IGamePlugin plugin, PropertyTracker<BasicSection> basicSettingsTracker, PropertyTracker<BriefingSection> briefingSettingsTracker,
+            IDictionary<House, PropertyTracker<House>> houseSettingsTrackers)
+        {
+            InitializeComponent();
+
+            this.plugin = plugin;
+            this.basicSettingsTracker = basicSettingsTracker;
+            this.briefingSettingsTracker = briefingSettingsTracker;
+            this.houseSettingsTrackers = houseSettingsTrackers;
+
+            settingsTreeView.BeginUpdate();
+            settingsTreeView.Nodes.Clear();
+            settingsTreeView.Nodes.Add("BASIC", "Basic");
+            settingsTreeView.Nodes.Add("BRIEFING", "Briefing");
+
+            playersNode = settingsTreeView.Nodes.Add("Players");
+            foreach (var player in plugin.Map.Houses)
+            {
+                var playerNode = playersNode.Nodes.Add(player.Type.Name, player.Type.Name);
+                playerNode.Checked = player.Enabled;
+            }
+            playersNode.Expand();
+
+            settingsTreeView.EndUpdate();
+            settingsTreeView.SelectedNode = settingsTreeView.Nodes[0];
+        }
+
+        private void settingsTreeView_AfterSelect(object sender, TreeViewEventArgs e)
+        {
+            settingsPanel.Controls.Clear();
+
+            switch (settingsTreeView.SelectedNode.Name)
+            {
+                case "BASIC":
+                    {
+                        settingsPanel.Controls.Add(new BasicSettings(plugin, basicSettingsTracker));
+                    }
+                    break;
+                case "BRIEFING":
+                    {
+                        settingsPanel.Controls.Add(new BriefingSettings(plugin, briefingSettingsTracker));
+                    }
+                    break;
+                default:
+                    {
+                        var player = plugin.Map.Houses.Where(h => h.Type.Name == settingsTreeView.SelectedNode.Name).FirstOrDefault();
+                        if (player != null)
+                        {
+                            settingsPanel.Controls.Add(new PlayerSettings(plugin, houseSettingsTrackers[player]));
+                        }
+                    }
+                    break;
+            }
+        }
+
+        private void settingsTreeView_DrawNode(object sender, DrawTreeNodeEventArgs e)
+        {
+            if (!playersNode.Nodes.Contains(e.Node))
+            {
+                HideCheckBox(e.Node);
+                e.DrawDefault = true;
+            }
+            else
+            {
+                e.Graphics.DrawString(e.Node.Text, e.Node.TreeView.Font, new SolidBrush(settingsTreeView.ForeColor), e.Node.Bounds.X, e.Node.Bounds.Y);
+            }
+        }
+
+        private void HideCheckBox(TreeNode node)
+        {
+            TVITEM tvi = new TVITEM
+            {
+                hItem = node.Handle,
+                mask = TVIF_STATE,
+                stateMask = TVIS_STATEIMAGEMASK,
+                state = 0,
+                lpszText = null,
+                cchTextMax = 0,
+                iImage = 0,
+                iSelectedImage = 0,
+                cChildren = 0,
+                lParam = IntPtr.Zero
+            };
+            IntPtr lparam = Marshal.AllocHGlobal(Marshal.SizeOf(tvi));
+            Marshal.StructureToPtr(tvi, lparam, false);
+            SendMessage(node.TreeView.Handle, TVM_SETITEM, IntPtr.Zero, lparam);
+        }
+
+        private void settingsTreeView_AfterCheck(object sender, TreeViewEventArgs e)
+        {
+            var player = plugin.Map.Houses.Where(h => h.Type.Name == e.Node.Name).FirstOrDefault();
+            if (player != null)
+            {
+                ((dynamic)houseSettingsTrackers[player]).Enabled = e.Node.Checked;
+            }
+        }
+    }
+}

+ 120 - 0
CnCTDRAMapEditor/Dialogs/MapSettingsDialog.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 301 - 0
CnCTDRAMapEditor/Dialogs/NewMapDialog.Designer.cs

@@ -0,0 +1,301 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Dialogs
+{
+    partial class NewMapDialog
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnOK = new System.Windows.Forms.Button();
+            this.flowLayoutPanel2 = new System.Windows.Forms.FlowLayoutPanel();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.flowLayoutPanel3 = new System.Windows.Forms.FlowLayoutPanel();
+            this.radioTD = new System.Windows.Forms.RadioButton();
+            this.radioRA = new System.Windows.Forms.RadioButton();
+            this.groupBox2 = new System.Windows.Forms.GroupBox();
+            this.flowLayoutPanel4 = new System.Windows.Forms.FlowLayoutPanel();
+            this.radioTheater1 = new System.Windows.Forms.RadioButton();
+            this.radioTheater2 = new System.Windows.Forms.RadioButton();
+            this.radioTheater3 = new System.Windows.Forms.RadioButton();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.flowLayoutPanel1.SuspendLayout();
+            this.flowLayoutPanel2.SuspendLayout();
+            this.groupBox1.SuspendLayout();
+            this.flowLayoutPanel3.SuspendLayout();
+            this.groupBox2.SuspendLayout();
+            this.flowLayoutPanel4.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 1;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel1, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel2, 0, 0);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 2;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 13F));
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(356, 324);
+            this.tableLayoutPanel1.TabIndex = 0;
+            // 
+            // flowLayoutPanel1
+            // 
+            this.flowLayoutPanel1.AutoSize = true;
+            this.flowLayoutPanel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.flowLayoutPanel1.Controls.Add(this.btnCancel);
+            this.flowLayoutPanel1.Controls.Add(this.btnOK);
+            this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.RightToLeft;
+            this.flowLayoutPanel1.Location = new System.Drawing.Point(2, 295);
+            this.flowLayoutPanel1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.flowLayoutPanel1.Name = "flowLayoutPanel1";
+            this.flowLayoutPanel1.Size = new System.Drawing.Size(352, 27);
+            this.flowLayoutPanel1.TabIndex = 0;
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.AutoSize = true;
+            this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.btnCancel.Location = new System.Drawing.Point(300, 2);
+            this.btnCancel.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(50, 23);
+            this.btnCancel.TabIndex = 1;
+            this.btnCancel.Text = "&Cancel";
+            this.btnCancel.UseVisualStyleBackColor = true;
+            // 
+            // btnOK
+            // 
+            this.btnOK.AutoSize = true;
+            this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
+            this.btnOK.Location = new System.Drawing.Point(246, 2);
+            this.btnOK.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.btnOK.Name = "btnOK";
+            this.btnOK.Size = new System.Drawing.Size(50, 23);
+            this.btnOK.TabIndex = 0;
+            this.btnOK.Text = "&OK";
+            this.btnOK.UseVisualStyleBackColor = true;
+            // 
+            // flowLayoutPanel2
+            // 
+            this.flowLayoutPanel2.Controls.Add(this.groupBox1);
+            this.flowLayoutPanel2.Controls.Add(this.groupBox2);
+            this.flowLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.flowLayoutPanel2.FlowDirection = System.Windows.Forms.FlowDirection.TopDown;
+            this.flowLayoutPanel2.Location = new System.Drawing.Point(2, 2);
+            this.flowLayoutPanel2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.flowLayoutPanel2.Name = "flowLayoutPanel2";
+            this.flowLayoutPanel2.Size = new System.Drawing.Size(352, 289);
+            this.flowLayoutPanel2.TabIndex = 1;
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.Controls.Add(this.flowLayoutPanel3);
+            this.groupBox1.Location = new System.Drawing.Point(2, 2);
+            this.groupBox1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.groupBox1.Size = new System.Drawing.Size(339, 70);
+            this.groupBox1.TabIndex = 2;
+            this.groupBox1.TabStop = false;
+            this.groupBox1.Text = "Game Type";
+            // 
+            // flowLayoutPanel3
+            // 
+            this.flowLayoutPanel3.AutoSize = true;
+            this.flowLayoutPanel3.Controls.Add(this.radioTD);
+            this.flowLayoutPanel3.Controls.Add(this.radioRA);
+            this.flowLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.flowLayoutPanel3.FlowDirection = System.Windows.Forms.FlowDirection.TopDown;
+            this.flowLayoutPanel3.Location = new System.Drawing.Point(2, 15);
+            this.flowLayoutPanel3.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.flowLayoutPanel3.Name = "flowLayoutPanel3";
+            this.flowLayoutPanel3.Size = new System.Drawing.Size(335, 53);
+            this.flowLayoutPanel3.TabIndex = 0;
+            // 
+            // radioTD
+            // 
+            this.radioTD.AutoSize = true;
+            this.radioTD.Checked = true;
+            this.radioTD.Location = new System.Drawing.Point(2, 2);
+            this.radioTD.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.radioTD.Name = "radioTD";
+            this.radioTD.Size = new System.Drawing.Size(94, 17);
+            this.radioTD.TabIndex = 0;
+            this.radioTD.TabStop = true;
+            this.radioTD.Text = "Tiberian Dawn";
+            this.radioTD.UseVisualStyleBackColor = true;
+            this.radioTD.CheckedChanged += new System.EventHandler(this.radioGameType_CheckedChanged);
+            // 
+            // radioRA
+            // 
+            this.radioRA.AutoSize = true;
+            this.radioRA.Location = new System.Drawing.Point(2, 23);
+            this.radioRA.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.radioRA.Name = "radioRA";
+            this.radioRA.Size = new System.Drawing.Size(69, 17);
+            this.radioRA.TabIndex = 1;
+            this.radioRA.Text = "Red Alert";
+            this.radioRA.UseVisualStyleBackColor = true;
+            this.radioRA.CheckedChanged += new System.EventHandler(this.radioGameType_CheckedChanged);
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.groupBox2.Controls.Add(this.flowLayoutPanel4);
+            this.groupBox2.Location = new System.Drawing.Point(2, 76);
+            this.groupBox2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.groupBox2.Size = new System.Drawing.Size(339, 89);
+            this.groupBox2.TabIndex = 3;
+            this.groupBox2.TabStop = false;
+            this.groupBox2.Text = "Theater";
+            // 
+            // flowLayoutPanel4
+            // 
+            this.flowLayoutPanel4.AutoSize = true;
+            this.flowLayoutPanel4.Controls.Add(this.radioTheater1);
+            this.flowLayoutPanel4.Controls.Add(this.radioTheater2);
+            this.flowLayoutPanel4.Controls.Add(this.radioTheater3);
+            this.flowLayoutPanel4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.flowLayoutPanel4.FlowDirection = System.Windows.Forms.FlowDirection.TopDown;
+            this.flowLayoutPanel4.Location = new System.Drawing.Point(2, 15);
+            this.flowLayoutPanel4.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.flowLayoutPanel4.Name = "flowLayoutPanel4";
+            this.flowLayoutPanel4.Size = new System.Drawing.Size(335, 72);
+            this.flowLayoutPanel4.TabIndex = 0;
+            // 
+            // radioTheater1
+            // 
+            this.radioTheater1.AutoSize = true;
+            this.radioTheater1.Checked = true;
+            this.radioTheater1.Location = new System.Drawing.Point(2, 2);
+            this.radioTheater1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.radioTheater1.Name = "radioTheater1";
+            this.radioTheater1.Size = new System.Drawing.Size(56, 17);
+            this.radioTheater1.TabIndex = 0;
+            this.radioTheater1.TabStop = true;
+            this.radioTheater1.Text = "Desert";
+            this.radioTheater1.UseVisualStyleBackColor = true;
+            // 
+            // radioTheater2
+            // 
+            this.radioTheater2.AutoSize = true;
+            this.radioTheater2.Location = new System.Drawing.Point(2, 23);
+            this.radioTheater2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.radioTheater2.Name = "radioTheater2";
+            this.radioTheater2.Size = new System.Drawing.Size(76, 17);
+            this.radioTheater2.TabIndex = 1;
+            this.radioTheater2.Text = "Temperate";
+            this.radioTheater2.UseVisualStyleBackColor = true;
+            // 
+            // radioTheater3
+            // 
+            this.radioTheater3.AutoSize = true;
+            this.radioTheater3.Location = new System.Drawing.Point(2, 44);
+            this.radioTheater3.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.radioTheater3.Name = "radioTheater3";
+            this.radioTheater3.Size = new System.Drawing.Size(56, 17);
+            this.radioTheater3.TabIndex = 2;
+            this.radioTheater3.TabStop = true;
+            this.radioTheater3.Text = "Winter";
+            this.radioTheater3.UseVisualStyleBackColor = true;
+            // 
+            // NewMapDialog
+            // 
+            this.AcceptButton = this.btnOK;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.btnCancel;
+            this.ClientSize = new System.Drawing.Size(356, 324);
+            this.ControlBox = false;
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "NewMapDialog";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "New Map";
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            this.flowLayoutPanel1.ResumeLayout(false);
+            this.flowLayoutPanel1.PerformLayout();
+            this.flowLayoutPanel2.ResumeLayout(false);
+            this.groupBox1.ResumeLayout(false);
+            this.groupBox1.PerformLayout();
+            this.flowLayoutPanel3.ResumeLayout(false);
+            this.flowLayoutPanel3.PerformLayout();
+            this.groupBox2.ResumeLayout(false);
+            this.groupBox2.PerformLayout();
+            this.flowLayoutPanel4.ResumeLayout(false);
+            this.flowLayoutPanel4.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnOK;
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel2;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private System.Windows.Forms.GroupBox groupBox2;
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel3;
+        private System.Windows.Forms.RadioButton radioTD;
+        private System.Windows.Forms.RadioButton radioRA;
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel4;
+        private System.Windows.Forms.RadioButton radioTheater1;
+        private System.Windows.Forms.RadioButton radioTheater2;
+        private System.Windows.Forms.RadioButton radioTheater3;
+    }
+}

+ 85 - 0
CnCTDRAMapEditor/Dialogs/NewMapDialog.cs

@@ -0,0 +1,85 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Dialogs
+{
+    public partial class NewMapDialog : Form
+    {
+        private GameType gameType = GameType.TiberianDawn;
+        public GameType GameType
+        {
+            get => gameType;
+            set
+            {
+                if (gameType != value)
+                {
+                    gameType = value;
+                    UpdateGameType();
+                }
+            }
+        }
+
+        public string TheaterName
+        {
+            get
+            {
+                if (radioTheater1.Checked) return radioTheater1.Text;
+                if (radioTheater2.Checked) return radioTheater2.Text;
+                if (radioTheater3.Checked) return radioTheater3.Text;
+                return null;
+            }
+        }
+
+        public NewMapDialog()
+        {
+            InitializeComponent();
+        }
+
+        private void UpdateGameType()
+        {
+            switch(GameType)
+            {
+                case GameType.TiberianDawn:
+                    {
+                        radioTheater1.Text = "Desert";
+                        radioTheater2.Text = "Temperate";
+                        radioTheater3.Text = "Winter";
+                    } break;
+                case GameType.RedAlert:
+                    {
+                        radioTheater1.Text = "Temperate";
+                        radioTheater2.Text = "Snow";
+                        radioTheater3.Text = "Interior";
+                    }
+                    break;
+            }
+        }
+
+        private void radioGameType_CheckedChanged(object sender, EventArgs e)
+        {
+            if (radioTD.Checked)
+            {
+                GameType = GameType.TiberianDawn;
+            }
+            else if (radioRA.Checked)
+            {
+                GameType = GameType.RedAlert;
+            }
+        }
+    }
+}

+ 120 - 0
CnCTDRAMapEditor/Dialogs/NewMapDialog.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 386 - 0
CnCTDRAMapEditor/Dialogs/SteamDialog.Designer.cs

@@ -0,0 +1,386 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Dialogs
+{
+    partial class SteamDialog
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SteamDialog));
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.descriptionTxt = new System.Windows.Forms.TextBox();
+            this.titleTxt = new System.Windows.Forms.TextBox();
+            this.visibilityComboBox = new System.Windows.Forms.ComboBox();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.previewTxt = new System.Windows.Forms.TextBox();
+            this.previewBtn = new System.Windows.Forms.Button();
+            this.panel2 = new System.Windows.Forms.Panel();
+            this.btnClose = new System.Windows.Forms.Button();
+            this.btnGoToSteam = new System.Windows.Forms.Button();
+            this.publicMapContextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
+            this.publishAsNewToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.statusLbl = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.btnPublishMap = new MobiusEditor.Controls.MenuButton();
+            this.imageTooltip = new MobiusEditor.Controls.ImageTooltip();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.tableLayoutPanel2.SuspendLayout();
+            this.panel1.SuspendLayout();
+            this.panel2.SuspendLayout();
+            this.publicMapContextMenuStrip.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 1;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel1.Controls.Add(this.tableLayoutPanel2, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.panel2, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.label5, 0, 2);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 3;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(500, 385);
+            this.tableLayoutPanel1.TabIndex = 1;
+            // 
+            // tableLayoutPanel2
+            // 
+            this.tableLayoutPanel2.ColumnCount = 2;
+            this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel2.Controls.Add(this.label1, 0, 0);
+            this.tableLayoutPanel2.Controls.Add(this.label2, 0, 1);
+            this.tableLayoutPanel2.Controls.Add(this.label3, 0, 2);
+            this.tableLayoutPanel2.Controls.Add(this.label4, 0, 3);
+            this.tableLayoutPanel2.Controls.Add(this.descriptionTxt, 0, 4);
+            this.tableLayoutPanel2.Controls.Add(this.titleTxt, 1, 0);
+            this.tableLayoutPanel2.Controls.Add(this.visibilityComboBox, 1, 1);
+            this.tableLayoutPanel2.Controls.Add(this.panel1, 1, 2);
+            this.tableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel2.Location = new System.Drawing.Point(2, 2);
+            this.tableLayoutPanel2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.tableLayoutPanel2.Name = "tableLayoutPanel2";
+            this.tableLayoutPanel2.RowCount = 5;
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 13F));
+            this.tableLayoutPanel2.Size = new System.Drawing.Size(496, 233);
+            this.tableLayoutPanel2.TabIndex = 2;
+            // 
+            // label1
+            // 
+            this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label1.Location = new System.Drawing.Point(2, 0);
+            this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(69, 24);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "Title";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label2
+            // 
+            this.label2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label2.Location = new System.Drawing.Point(2, 24);
+            this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(69, 25);
+            this.label2.TabIndex = 1;
+            this.label2.Text = "Visibility";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label3
+            // 
+            this.label3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label3.Location = new System.Drawing.Point(2, 49);
+            this.label3.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(69, 27);
+            this.label3.TabIndex = 2;
+            this.label3.Text = "Preview";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label4
+            // 
+            this.label4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label4.Location = new System.Drawing.Point(2, 76);
+            this.label4.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(69, 13);
+            this.label4.TabIndex = 3;
+            this.label4.Text = "Description";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // descriptionTxt
+            // 
+            this.tableLayoutPanel2.SetColumnSpan(this.descriptionTxt, 2);
+            this.descriptionTxt.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.descriptionTxt.Location = new System.Drawing.Point(2, 91);
+            this.descriptionTxt.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.descriptionTxt.Multiline = true;
+            this.descriptionTxt.Name = "descriptionTxt";
+            this.descriptionTxt.Size = new System.Drawing.Size(492, 202);
+            this.descriptionTxt.TabIndex = 4;
+            this.descriptionTxt.TextChanged += new System.EventHandler(this.descriptionTxt_TextChanged);
+            // 
+            // titleTxt
+            // 
+            this.titleTxt.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.titleTxt.Location = new System.Drawing.Point(75, 2);
+            this.titleTxt.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.titleTxt.Name = "titleTxt";
+            this.titleTxt.Size = new System.Drawing.Size(419, 20);
+            this.titleTxt.TabIndex = 5;
+            // 
+            // visibilityComboBox
+            // 
+            this.visibilityComboBox.DisplayMember = "Name";
+            this.visibilityComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.visibilityComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.visibilityComboBox.FormattingEnabled = true;
+            this.visibilityComboBox.Location = new System.Drawing.Point(75, 26);
+            this.visibilityComboBox.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.visibilityComboBox.Name = "visibilityComboBox";
+            this.visibilityComboBox.Size = new System.Drawing.Size(419, 21);
+            this.visibilityComboBox.TabIndex = 6;
+            this.visibilityComboBox.ValueMember = "Value";
+            // 
+            // panel1
+            // 
+            this.panel1.Controls.Add(this.previewTxt);
+            this.panel1.Controls.Add(this.previewBtn);
+            this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.panel1.Location = new System.Drawing.Point(75, 51);
+            this.panel1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(419, 23);
+            this.panel1.TabIndex = 7;
+            // 
+            // previewTxt
+            // 
+            this.previewTxt.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.previewTxt.Location = new System.Drawing.Point(2, 2);
+            this.previewTxt.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.previewTxt.Name = "previewTxt";
+            this.previewTxt.Size = new System.Drawing.Size(392, 20);
+            this.previewTxt.TabIndex = 2;
+            this.previewTxt.TextChanged += new System.EventHandler(this.previewTxt_TextChanged);
+            // 
+            // previewBtn
+            // 
+            this.previewBtn.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.previewBtn.AutoSize = true;
+            this.previewBtn.Location = new System.Drawing.Point(392, 2);
+            this.previewBtn.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.previewBtn.Name = "previewBtn";
+            this.previewBtn.Size = new System.Drawing.Size(26, 23);
+            this.previewBtn.TabIndex = 3;
+            this.previewBtn.Text = "...";
+            this.previewBtn.UseVisualStyleBackColor = true;
+            this.previewBtn.Click += new System.EventHandler(this.previewBtn_Click);
+            // 
+            // panel2
+            // 
+            this.panel2.Controls.Add(this.btnClose);
+            this.panel2.Controls.Add(this.btnGoToSteam);
+            this.panel2.Controls.Add(this.btnPublishMap);
+            this.panel2.Controls.Add(this.statusLbl);
+            this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.panel2.Location = new System.Drawing.Point(2, 239);
+            this.panel2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.panel2.Name = "panel2";
+            this.panel2.Size = new System.Drawing.Size(496, 34);
+            this.panel2.TabIndex = 3;
+            // 
+            // btnClose
+            // 
+            this.btnClose.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnClose.AutoSize = true;
+            this.btnClose.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.btnClose.Location = new System.Drawing.Point(426, 2);
+            this.btnClose.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.btnClose.Name = "btnClose";
+            this.btnClose.Size = new System.Drawing.Size(68, 30);
+            this.btnClose.TabIndex = 6;
+            this.btnClose.Text = "&Close";
+            this.btnClose.UseVisualStyleBackColor = true;
+            // 
+            // btnGoToSteam
+            // 
+            this.btnGoToSteam.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnGoToSteam.AutoSize = true;
+            this.btnGoToSteam.Location = new System.Drawing.Point(346, 2);
+            this.btnGoToSteam.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.btnGoToSteam.Name = "btnGoToSteam";
+            this.btnGoToSteam.Size = new System.Drawing.Size(76, 30);
+            this.btnGoToSteam.TabIndex = 7;
+            this.btnGoToSteam.Text = "Go to &Steam";
+            this.btnGoToSteam.UseVisualStyleBackColor = true;
+            this.btnGoToSteam.Click += new System.EventHandler(this.btnGoToSteam_Click);
+            // 
+            // publicMapContextMenuStrip
+            // 
+            this.publicMapContextMenuStrip.ImageScalingSize = new System.Drawing.Size(24, 24);
+            this.publicMapContextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.publishAsNewToolStripMenuItem});
+            this.publicMapContextMenuStrip.Name = "publicMapContextMenuStrip";
+            this.publicMapContextMenuStrip.Size = new System.Drawing.Size(157, 26);
+            // 
+            // publishAsNewToolStripMenuItem
+            // 
+            this.publishAsNewToolStripMenuItem.Name = "publishAsNewToolStripMenuItem";
+            this.publishAsNewToolStripMenuItem.Size = new System.Drawing.Size(156, 22);
+            this.publishAsNewToolStripMenuItem.Text = "Publish As New";
+            this.publishAsNewToolStripMenuItem.Click += new System.EventHandler(this.publishAsNewToolStripMenuItem_Click);
+            // 
+            // statusLbl
+            // 
+            this.statusLbl.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.statusLbl.Location = new System.Drawing.Point(7, 1);
+            this.statusLbl.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.statusLbl.Name = "statusLbl";
+            this.statusLbl.Size = new System.Drawing.Size(264, 31);
+            this.statusLbl.TabIndex = 9;
+            this.statusLbl.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label5
+            // 
+            this.label5.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label5.Location = new System.Drawing.Point(3, 275);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(494, 110);
+            this.label5.TabIndex = 4;
+            this.label5.Text = resources.GetString("label5.Text");
+            // 
+            // btnPublishMap
+            // 
+            this.btnPublishMap.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnPublishMap.AutoSize = true;
+            this.btnPublishMap.Location = new System.Drawing.Point(234, 2);
+            this.btnPublishMap.Margin = new System.Windows.Forms.Padding(2);
+            this.btnPublishMap.Menu = this.publicMapContextMenuStrip;
+            this.btnPublishMap.Name = "btnPublishMap";
+            this.btnPublishMap.Size = new System.Drawing.Size(111, 30);
+            this.btnPublishMap.TabIndex = 8;
+            this.btnPublishMap.Text = "&Publish Map";
+            this.btnPublishMap.UseVisualStyleBackColor = true;
+            this.btnPublishMap.Click += new System.EventHandler(this.btnPublishMap_Click);
+            // 
+            // imageTooltip
+            // 
+            this.imageTooltip.MaxSize = new System.Drawing.Size(0, 0);
+            this.imageTooltip.OwnerDraw = true;
+            this.imageTooltip.ShowAlways = true;
+            // 
+            // SteamDialog
+            // 
+            this.AcceptButton = this.btnPublishMap;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.AutoSize = true;
+            this.CancelButton = this.btnClose;
+            this.ClientSize = new System.Drawing.Size(500, 385);
+            this.ControlBox = false;
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.MinimumSize = new System.Drawing.Size(516, 357);
+            this.Name = "SteamDialog";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "Steam Workshop: Publish Custom Map";
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel2.ResumeLayout(false);
+            this.tableLayoutPanel2.PerformLayout();
+            this.panel1.ResumeLayout(false);
+            this.panel1.PerformLayout();
+            this.panel2.ResumeLayout(false);
+            this.panel2.PerformLayout();
+            this.publicMapContextMenuStrip.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.TextBox descriptionTxt;
+        private System.Windows.Forms.TextBox titleTxt;
+        private System.Windows.Forms.ComboBox visibilityComboBox;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.TextBox previewTxt;
+        private System.Windows.Forms.Button previewBtn;
+        private System.Windows.Forms.Panel panel2;
+        private System.Windows.Forms.Button btnClose;
+        private System.Windows.Forms.Button btnGoToSteam;
+        private MobiusEditor.Controls.MenuButton btnPublishMap;
+        private System.Windows.Forms.Label statusLbl;
+        private System.Windows.Forms.ContextMenuStrip publicMapContextMenuStrip;
+        private System.Windows.Forms.ToolStripMenuItem publishAsNewToolStripMenuItem;
+        private Controls.ImageTooltip imageTooltip;
+        private System.Windows.Forms.Label label5;
+    }
+}

+ 253 - 0
CnCTDRAMapEditor/Dialogs/SteamDialog.cs

@@ -0,0 +1,253 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Controls;
+using MobiusEditor.Interface;
+using MobiusEditor.Utility;
+using Steamworks;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Drawing;
+using System.Drawing.Imaging;
+using System.IO;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Dialogs
+{
+    public partial class SteamDialog : Form
+    {
+        private static readonly string PreviewDirectory = Path.Combine(Path.GetTempPath(), "CnCRCMapEditor");
+
+        private readonly IGamePlugin plugin;
+        private readonly Timer statusUpdateTimer = new Timer();
+
+        public SteamDialog(IGamePlugin plugin)
+        {
+            this.plugin = plugin;
+
+            InitializeComponent();
+
+            visibilityComboBox.DataSource = new []
+            {
+                new { Name = "Public", Value = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityPublic },
+                new { Name = "Friends Only", Value = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityFriendsOnly },
+                new { Name = "Private", Value = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityPrivate }
+            };
+
+            statusUpdateTimer.Interval = 500;
+            statusUpdateTimer.Tick += StatusUpdateTimer_Tick;
+
+            Disposed += (o, e) => { (previewTxt.Tag as Image)?.Dispose(); };
+        }
+
+        protected override void OnLoad(EventArgs e)
+        {
+            base.OnLoad(e);
+
+            titleTxt.Text = plugin.Map.SteamSection.Title;
+            descriptionTxt.Text = plugin.Map.SteamSection.Description;
+            previewTxt.Text = plugin.Map.SteamSection.PreviewFile;
+            visibilityComboBox.SelectedValue = plugin.Map.SteamSection.Visibility;
+
+            btnPublishMap.SplitWidth = (plugin.Map.SteamSection.PublishedFileId != PublishedFileId_t.Invalid.m_PublishedFileId) ? MenuButton.DefaultSplitWidth : 0;
+
+            Directory.CreateDirectory(PreviewDirectory);
+            var previewPath = Path.Combine(PreviewDirectory, "Minimap.png");
+            plugin.Map.GenerateWorkshopPreview().ToBitmap().Save(previewPath, ImageFormat.Png);
+
+            if (plugin.Map.BasicSection.SoloMission)
+            {
+                var soloBannerPath = Path.Combine(PreviewDirectory, "SoloBanner.png");
+                Properties.Resources.UI_CustomMissionPreviewDefault.Save(soloBannerPath, ImageFormat.Png);
+                previewTxt.Text = soloBannerPath;
+            }
+            else
+            {
+                previewTxt.Text = previewPath;
+            }
+
+            imageTooltip.SetToolTip(previewTxt, "Preview.png");
+
+            statusUpdateTimer.Start();
+
+            UpdateControls();
+        }
+
+        private void StatusUpdateTimer_Tick(object sender, EventArgs e)
+        {
+            var status = SteamworksUGC.CurrentOperation?.Status;
+            if (!string.IsNullOrEmpty(status))
+            {
+                statusLbl.Text = status;
+            }
+        }
+
+        protected override void OnClosed(EventArgs e)
+        {
+            base.OnClosed(e);
+
+            statusUpdateTimer.Stop();
+            statusUpdateTimer.Dispose();
+        }
+
+        protected virtual void OnPublishSuccess()
+        {
+            statusLbl.Text = "Done.";
+            EnableControls(true);
+        }
+
+        protected virtual void OnOperationFailed(string status)
+        {
+            statusLbl.Text = status;
+            EnableControls(true);
+        }
+
+        private void EnableControls(bool enable)
+        {
+            titleTxt.Enabled = enable;
+            visibilityComboBox.Enabled = enable;
+            previewTxt.Enabled = enable;
+            previewBtn.Enabled = enable;
+            descriptionTxt.Enabled = enable;
+            btnPublishMap.Enabled = enable;
+            btnClose.Enabled = enable;
+        }
+
+        private void btnGoToSteam_Click(object sender, EventArgs e)
+        {
+            var workshopUrl = SteamworksUGC.WorkshopURL;
+            if (!string.IsNullOrEmpty(workshopUrl))
+            {
+                Process.Start(workshopUrl);
+            }
+        }
+
+        private void btnPublishMap_Click(object sender, EventArgs e)
+        {
+            if (string.IsNullOrEmpty(plugin.Map.BasicSection.Name))
+            {
+                plugin.Map.BasicSection.Name = titleTxt.Text;
+            }
+
+            if (string.IsNullOrEmpty(plugin.Map.BasicSection.Author))
+            {
+                plugin.Map.BasicSection.Author = SteamFriends.GetPersonaName();
+            }
+
+            plugin.Map.SteamSection.PreviewFile = previewTxt.Text;
+            plugin.Map.SteamSection.Title = titleTxt.Text;
+            plugin.Map.SteamSection.Description = descriptionTxt.Text;
+            plugin.Map.SteamSection.Visibility = (ERemoteStoragePublishedFileVisibility)visibilityComboBox.SelectedValue;
+
+            var tempPath = Path.Combine(Path.GetTempPath(), "CnCRCMapEditorPublishUGC");
+            Directory.CreateDirectory(tempPath);
+            foreach (var file in new DirectoryInfo(tempPath).EnumerateFiles()) file.Delete();
+
+            var pgmPath = Path.Combine(tempPath, "MAPDATA.PGM");
+            plugin.Save(pgmPath, FileType.PGM);
+
+            var tags = new List<string>();
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    tags.Add("TD");
+                    break;
+                case GameType.RedAlert:
+                    tags.Add("RA");
+                    break;
+            }
+
+            if (plugin.Map.BasicSection.SoloMission)
+            {
+                tags.Add("SinglePlayer");
+            }
+            else
+            {
+                tags.Add("MultiPlayer");
+            }
+
+            if (SteamworksUGC.PublishUGC(tempPath, plugin.Map.SteamSection, tags, OnPublishSuccess, OnOperationFailed))
+            {
+                statusLbl.Text = SteamworksUGC.CurrentOperation.Status;
+                EnableControls(false);
+            }
+        }
+
+        private void previewBtn_Click(object sender, EventArgs e)
+        {
+            var ofd = new OpenFileDialog
+            {
+                AutoUpgradeEnabled = false,
+                RestoreDirectory = true,
+                Filter = "Preview Files (*.png)|*.png",
+                CheckFileExists = true,
+                InitialDirectory = Path.GetDirectoryName(previewTxt.Text),
+                FileName = Path.GetFileName(previewTxt.Text)
+            };
+            if (!string.IsNullOrEmpty(previewTxt.Text))
+            {
+                ofd.FileName = previewTxt.Text;
+            }
+            if (ofd.ShowDialog() == DialogResult.OK)
+            {
+                previewTxt.Text = ofd.FileName;
+            }
+        }
+
+        private void publishAsNewToolStripMenuItem_Click(object sender, EventArgs e)
+        {
+            plugin.Map.SteamSection.PublishedFileId = PublishedFileId_t.Invalid.m_PublishedFileId;
+            btnPublishMap.PerformClick();
+        }
+
+        private void previewTxt_TextChanged(object sender, EventArgs e)
+        {
+            try
+            {
+                (previewTxt.Tag as Image)?.Dispose();
+
+                Bitmap preview = null;
+                using (Bitmap b = new Bitmap(previewTxt.Text))
+                {
+                    preview = new Bitmap(b.Width, b.Height, b.PixelFormat);
+                    using (Graphics g = Graphics.FromImage(preview))
+                    {
+                        g.DrawImage(b, Point.Empty);
+                        g.Flush();
+                    }
+                }
+
+                previewTxt.Tag = preview;
+            }
+            catch (Exception)
+            {
+                previewTxt.Tag = null;
+            }
+
+            UpdateControls();
+        }
+
+        private void descriptionTxt_TextChanged(object sender, EventArgs e)
+        {
+            UpdateControls();
+        }
+
+        private void UpdateControls()
+        {
+            btnPublishMap.Enabled = (previewTxt.Tag != null) && !string.IsNullOrEmpty(descriptionTxt.Text);
+        }
+    }
+}

+ 131 - 0
CnCTDRAMapEditor/Dialogs/SteamDialog.resx

@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="publicMapContextMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <data name="label5.Text" xml:space="preserve">
+    <value>Respect the rights of others. Provide only content (1) that is not defamatory, obscene, offensive or indecent, (2) that is not confidential or proprietary and (3) that does not violate or infringe any third-party rights. By providing content, you grant EA all licenses needed to enable EA’s use of the content for any purpose. EA’s User Agreement applies.
+
+EA does not pre-screen, endorse or specifically support any C&amp;&amp;C mod.  Please use mods with caution and understand there may be a risk.  EA reserves the right to address any inappropriate use of our C&amp;&amp;C content.</value>
+  </data>
+  <metadata name="imageTooltip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>314, 17</value>
+  </metadata>
+</root>

+ 713 - 0
CnCTDRAMapEditor/Dialogs/TeamTypesDialog.Designer.cs

@@ -0,0 +1,713 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Dialogs
+{
+    partial class TeamTypesDialog
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnOK = new System.Windows.Forms.Button();
+            this.settingsPanel = new System.Windows.Forms.Panel();
+            this.teamTypeTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
+            this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
+            this.label1 = new System.Windows.Forms.Label();
+            this.houseComboBox = new System.Windows.Forms.ComboBox();
+            this.roundaboutCheckBox = new System.Windows.Forms.CheckBox();
+            this.learningCheckBox = new System.Windows.Forms.CheckBox();
+            this.suicideCheckBox = new System.Windows.Forms.CheckBox();
+            this.autocreateCheckBox = new System.Windows.Forms.CheckBox();
+            this.mercernaryCheckBox = new System.Windows.Forms.CheckBox();
+            this.reinforcableCheckBox = new System.Windows.Forms.CheckBox();
+            this.prebuiltCheckBox = new System.Windows.Forms.CheckBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.initNumNud = new System.Windows.Forms.NumericUpDown();
+            this.maxAllowedNud = new System.Windows.Forms.NumericUpDown();
+            this.fearNud = new System.Windows.Forms.NumericUpDown();
+            this.waypointLabel = new System.Windows.Forms.Label();
+            this.triggerLabel = new System.Windows.Forms.Label();
+            this.waypointComboBox = new System.Windows.Forms.ComboBox();
+            this.triggerComboBox = new System.Windows.Forms.ComboBox();
+            this.label9 = new System.Windows.Forms.Label();
+            this.recruitPriorityNud = new System.Windows.Forms.NumericUpDown();
+            this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.teamsDataGridView = new System.Windows.Forms.DataGridView();
+            this.teamsTypeColumn = new System.Windows.Forms.DataGridViewComboBoxColumn();
+            this.teamsCountColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.missionsDataGridView = new System.Windows.Forms.DataGridView();
+            this.missionsMissionColumn = new System.Windows.Forms.DataGridViewComboBoxColumn();
+            this.missionsArgumentColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.teamTypesListView = new System.Windows.Forms.ListView();
+            this.nameColumnHeader = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+            this.teamTypesContextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
+            this.addTeamTypeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.removeTeamTypeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.flowLayoutPanel1.SuspendLayout();
+            this.settingsPanel.SuspendLayout();
+            this.teamTypeTableLayoutPanel.SuspendLayout();
+            this.tableLayoutPanel2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.initNumNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxAllowedNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.fearNud)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.recruitPriorityNud)).BeginInit();
+            this.tableLayoutPanel3.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.teamsDataGridView)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.missionsDataGridView)).BeginInit();
+            this.teamTypesContextMenuStrip.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 2;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 80F));
+            this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel1, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.settingsPanel, 1, 0);
+            this.tableLayoutPanel1.Controls.Add(this.teamTypesListView, 0, 0);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 2;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(1313, 640);
+            this.tableLayoutPanel1.TabIndex = 1;
+            // 
+            // flowLayoutPanel1
+            // 
+            this.flowLayoutPanel1.AutoSize = true;
+            this.flowLayoutPanel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.tableLayoutPanel1.SetColumnSpan(this.flowLayoutPanel1, 2);
+            this.flowLayoutPanel1.Controls.Add(this.btnCancel);
+            this.flowLayoutPanel1.Controls.Add(this.btnOK);
+            this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.RightToLeft;
+            this.flowLayoutPanel1.Location = new System.Drawing.Point(4, 583);
+            this.flowLayoutPanel1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.flowLayoutPanel1.Name = "flowLayoutPanel1";
+            this.flowLayoutPanel1.Size = new System.Drawing.Size(1305, 52);
+            this.flowLayoutPanel1.TabIndex = 1;
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.AutoSize = true;
+            this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.btnCancel.Location = new System.Drawing.Point(1200, 3);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(102, 46);
+            this.btnCancel.TabIndex = 2;
+            this.btnCancel.Text = "&Cancel";
+            this.btnCancel.UseVisualStyleBackColor = true;
+            // 
+            // btnOK
+            // 
+            this.btnOK.AutoSize = true;
+            this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
+            this.btnOK.Location = new System.Drawing.Point(1119, 3);
+            this.btnOK.Name = "btnOK";
+            this.btnOK.Size = new System.Drawing.Size(75, 46);
+            this.btnOK.TabIndex = 3;
+            this.btnOK.Text = "&OK";
+            this.btnOK.UseVisualStyleBackColor = true;
+            // 
+            // settingsPanel
+            // 
+            this.settingsPanel.Controls.Add(this.teamTypeTableLayoutPanel);
+            this.settingsPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.settingsPanel.Location = new System.Drawing.Point(277, 15);
+            this.settingsPanel.Margin = new System.Windows.Forms.Padding(15);
+            this.settingsPanel.Name = "settingsPanel";
+            this.settingsPanel.Size = new System.Drawing.Size(1021, 548);
+            this.settingsPanel.TabIndex = 3;
+            // 
+            // teamTypeTableLayoutPanel
+            // 
+            this.teamTypeTableLayoutPanel.ColumnCount = 3;
+            this.teamTypeTableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.teamTypeTableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.teamTypeTableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.teamTypeTableLayoutPanel.Controls.Add(this.tableLayoutPanel2, 0, 0);
+            this.teamTypeTableLayoutPanel.Controls.Add(this.tableLayoutPanel3, 2, 0);
+            this.teamTypeTableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.teamTypeTableLayoutPanel.Location = new System.Drawing.Point(0, 0);
+            this.teamTypeTableLayoutPanel.Name = "teamTypeTableLayoutPanel";
+            this.teamTypeTableLayoutPanel.RowCount = 1;
+            this.teamTypeTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.teamTypeTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 548F));
+            this.teamTypeTableLayoutPanel.Size = new System.Drawing.Size(1021, 548);
+            this.teamTypeTableLayoutPanel.TabIndex = 0;
+            // 
+            // tableLayoutPanel2
+            // 
+            this.tableLayoutPanel2.AutoSize = true;
+            this.tableLayoutPanel2.ColumnCount = 2;
+            this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel2.Controls.Add(this.label1, 0, 0);
+            this.tableLayoutPanel2.Controls.Add(this.houseComboBox, 1, 0);
+            this.tableLayoutPanel2.Controls.Add(this.roundaboutCheckBox, 1, 1);
+            this.tableLayoutPanel2.Controls.Add(this.learningCheckBox, 1, 2);
+            this.tableLayoutPanel2.Controls.Add(this.suicideCheckBox, 1, 3);
+            this.tableLayoutPanel2.Controls.Add(this.autocreateCheckBox, 1, 4);
+            this.tableLayoutPanel2.Controls.Add(this.mercernaryCheckBox, 1, 5);
+            this.tableLayoutPanel2.Controls.Add(this.reinforcableCheckBox, 1, 6);
+            this.tableLayoutPanel2.Controls.Add(this.prebuiltCheckBox, 1, 7);
+            this.tableLayoutPanel2.Controls.Add(this.label2, 0, 9);
+            this.tableLayoutPanel2.Controls.Add(this.label3, 0, 10);
+            this.tableLayoutPanel2.Controls.Add(this.label4, 0, 11);
+            this.tableLayoutPanel2.Controls.Add(this.initNumNud, 1, 9);
+            this.tableLayoutPanel2.Controls.Add(this.maxAllowedNud, 1, 10);
+            this.tableLayoutPanel2.Controls.Add(this.fearNud, 1, 11);
+            this.tableLayoutPanel2.Controls.Add(this.waypointLabel, 0, 12);
+            this.tableLayoutPanel2.Controls.Add(this.triggerLabel, 0, 13);
+            this.tableLayoutPanel2.Controls.Add(this.waypointComboBox, 1, 12);
+            this.tableLayoutPanel2.Controls.Add(this.triggerComboBox, 1, 13);
+            this.tableLayoutPanel2.Controls.Add(this.label9, 0, 8);
+            this.tableLayoutPanel2.Controls.Add(this.recruitPriorityNud, 1, 8);
+            this.tableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel2.Location = new System.Drawing.Point(3, 3);
+            this.tableLayoutPanel2.Name = "tableLayoutPanel2";
+            this.tableLayoutPanel2.RowCount = 15;
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel2.Size = new System.Drawing.Size(307, 542);
+            this.tableLayoutPanel2.TabIndex = 0;
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label1.Location = new System.Drawing.Point(3, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(100, 34);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "House";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // houseComboBox
+            // 
+            this.houseComboBox.DisplayMember = "Name";
+            this.houseComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.houseComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.houseComboBox.FormattingEnabled = true;
+            this.houseComboBox.Location = new System.Drawing.Point(109, 3);
+            this.houseComboBox.Name = "houseComboBox";
+            this.houseComboBox.Size = new System.Drawing.Size(195, 28);
+            this.houseComboBox.TabIndex = 1;
+            this.houseComboBox.ValueMember = "Type";
+            // 
+            // roundaboutCheckBox
+            // 
+            this.roundaboutCheckBox.AutoSize = true;
+            this.roundaboutCheckBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.roundaboutCheckBox.Location = new System.Drawing.Point(109, 37);
+            this.roundaboutCheckBox.Name = "roundaboutCheckBox";
+            this.roundaboutCheckBox.Size = new System.Drawing.Size(195, 24);
+            this.roundaboutCheckBox.TabIndex = 2;
+            this.roundaboutCheckBox.Text = "Roundabout";
+            this.roundaboutCheckBox.UseVisualStyleBackColor = true;
+            // 
+            // learningCheckBox
+            // 
+            this.learningCheckBox.AutoSize = true;
+            this.learningCheckBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.learningCheckBox.Location = new System.Drawing.Point(109, 67);
+            this.learningCheckBox.Name = "learningCheckBox";
+            this.learningCheckBox.Size = new System.Drawing.Size(195, 24);
+            this.learningCheckBox.TabIndex = 3;
+            this.learningCheckBox.Text = "Learning";
+            this.learningCheckBox.UseVisualStyleBackColor = true;
+            // 
+            // suicideCheckBox
+            // 
+            this.suicideCheckBox.AutoSize = true;
+            this.suicideCheckBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.suicideCheckBox.Location = new System.Drawing.Point(109, 97);
+            this.suicideCheckBox.Name = "suicideCheckBox";
+            this.suicideCheckBox.Size = new System.Drawing.Size(195, 24);
+            this.suicideCheckBox.TabIndex = 4;
+            this.suicideCheckBox.Text = "Suicide";
+            this.suicideCheckBox.UseVisualStyleBackColor = true;
+            // 
+            // autocreateCheckBox
+            // 
+            this.autocreateCheckBox.AutoSize = true;
+            this.autocreateCheckBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.autocreateCheckBox.Location = new System.Drawing.Point(109, 127);
+            this.autocreateCheckBox.Name = "autocreateCheckBox";
+            this.autocreateCheckBox.Size = new System.Drawing.Size(195, 24);
+            this.autocreateCheckBox.TabIndex = 5;
+            this.autocreateCheckBox.Text = "Auto-create";
+            this.autocreateCheckBox.UseVisualStyleBackColor = true;
+            // 
+            // mercernaryCheckBox
+            // 
+            this.mercernaryCheckBox.AutoSize = true;
+            this.mercernaryCheckBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.mercernaryCheckBox.Location = new System.Drawing.Point(109, 157);
+            this.mercernaryCheckBox.Name = "mercernaryCheckBox";
+            this.mercernaryCheckBox.Size = new System.Drawing.Size(195, 24);
+            this.mercernaryCheckBox.TabIndex = 6;
+            this.mercernaryCheckBox.Text = "Mercernary";
+            this.mercernaryCheckBox.UseVisualStyleBackColor = true;
+            // 
+            // reinforcableCheckBox
+            // 
+            this.reinforcableCheckBox.AutoSize = true;
+            this.reinforcableCheckBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.reinforcableCheckBox.Location = new System.Drawing.Point(109, 187);
+            this.reinforcableCheckBox.Name = "reinforcableCheckBox";
+            this.reinforcableCheckBox.Size = new System.Drawing.Size(195, 24);
+            this.reinforcableCheckBox.TabIndex = 7;
+            this.reinforcableCheckBox.Text = "Reinforcable";
+            this.reinforcableCheckBox.UseVisualStyleBackColor = true;
+            // 
+            // prebuiltCheckBox
+            // 
+            this.prebuiltCheckBox.AutoSize = true;
+            this.prebuiltCheckBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.prebuiltCheckBox.Location = new System.Drawing.Point(109, 217);
+            this.prebuiltCheckBox.Name = "prebuiltCheckBox";
+            this.prebuiltCheckBox.Size = new System.Drawing.Size(195, 24);
+            this.prebuiltCheckBox.TabIndex = 8;
+            this.prebuiltCheckBox.Text = "Prebuilt";
+            this.prebuiltCheckBox.UseVisualStyleBackColor = true;
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label2.Location = new System.Drawing.Point(3, 276);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(100, 32);
+            this.label2.TabIndex = 9;
+            this.label2.Text = "Init Num";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label3.Location = new System.Drawing.Point(3, 308);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(100, 32);
+            this.label3.TabIndex = 10;
+            this.label3.Text = "Max Allowed";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label4.Location = new System.Drawing.Point(3, 340);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(100, 32);
+            this.label4.TabIndex = 11;
+            this.label4.Text = "Fear";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // initNumNud
+            // 
+            this.initNumNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.initNumNud.Location = new System.Drawing.Point(109, 279);
+            this.initNumNud.Maximum = new decimal(new int[] {
+            255,
+            0,
+            0,
+            0});
+            this.initNumNud.Name = "initNumNud";
+            this.initNumNud.Size = new System.Drawing.Size(195, 26);
+            this.initNumNud.TabIndex = 12;
+            // 
+            // maxAllowedNud
+            // 
+            this.maxAllowedNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.maxAllowedNud.Location = new System.Drawing.Point(109, 311);
+            this.maxAllowedNud.Maximum = new decimal(new int[] {
+            255,
+            0,
+            0,
+            0});
+            this.maxAllowedNud.Name = "maxAllowedNud";
+            this.maxAllowedNud.Size = new System.Drawing.Size(195, 26);
+            this.maxAllowedNud.TabIndex = 13;
+            // 
+            // fearNud
+            // 
+            this.fearNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.fearNud.Location = new System.Drawing.Point(109, 343);
+            this.fearNud.Maximum = new decimal(new int[] {
+            255,
+            0,
+            0,
+            0});
+            this.fearNud.Name = "fearNud";
+            this.fearNud.Size = new System.Drawing.Size(195, 26);
+            this.fearNud.TabIndex = 14;
+            // 
+            // waypointLabel
+            // 
+            this.waypointLabel.AutoSize = true;
+            this.waypointLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.waypointLabel.Location = new System.Drawing.Point(3, 372);
+            this.waypointLabel.Name = "waypointLabel";
+            this.waypointLabel.Size = new System.Drawing.Size(100, 34);
+            this.waypointLabel.TabIndex = 15;
+            this.waypointLabel.Text = "Waypoint";
+            this.waypointLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // triggerLabel
+            // 
+            this.triggerLabel.AutoSize = true;
+            this.triggerLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.triggerLabel.Location = new System.Drawing.Point(3, 406);
+            this.triggerLabel.Name = "triggerLabel";
+            this.triggerLabel.Size = new System.Drawing.Size(100, 34);
+            this.triggerLabel.TabIndex = 16;
+            this.triggerLabel.Text = "Trigger";
+            this.triggerLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // waypointComboBox
+            // 
+            this.waypointComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.waypointComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.waypointComboBox.FormattingEnabled = true;
+            this.waypointComboBox.Location = new System.Drawing.Point(109, 375);
+            this.waypointComboBox.Name = "waypointComboBox";
+            this.waypointComboBox.Size = new System.Drawing.Size(195, 28);
+            this.waypointComboBox.TabIndex = 17;
+            // 
+            // triggerComboBox
+            // 
+            this.triggerComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.triggerComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.triggerComboBox.FormattingEnabled = true;
+            this.triggerComboBox.Location = new System.Drawing.Point(109, 409);
+            this.triggerComboBox.Name = "triggerComboBox";
+            this.triggerComboBox.Size = new System.Drawing.Size(195, 28);
+            this.triggerComboBox.TabIndex = 18;
+            // 
+            // label9
+            // 
+            this.label9.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label9.Location = new System.Drawing.Point(3, 244);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(100, 32);
+            this.label9.TabIndex = 19;
+            this.label9.Text = "Priority";
+            this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // recruitPriorityNud
+            // 
+            this.recruitPriorityNud.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.recruitPriorityNud.Location = new System.Drawing.Point(109, 247);
+            this.recruitPriorityNud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.recruitPriorityNud.Minimum = new decimal(new int[] {
+            -2147483648,
+            0,
+            0,
+            -2147483648});
+            this.recruitPriorityNud.Name = "recruitPriorityNud";
+            this.recruitPriorityNud.Size = new System.Drawing.Size(195, 26);
+            this.recruitPriorityNud.TabIndex = 20;
+            // 
+            // tableLayoutPanel3
+            // 
+            this.tableLayoutPanel3.ColumnCount = 2;
+            this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
+            this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
+            this.tableLayoutPanel3.Controls.Add(this.label7, 0, 0);
+            this.tableLayoutPanel3.Controls.Add(this.label8, 1, 0);
+            this.tableLayoutPanel3.Controls.Add(this.teamsDataGridView, 0, 1);
+            this.tableLayoutPanel3.Controls.Add(this.missionsDataGridView, 1, 1);
+            this.tableLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel3.Location = new System.Drawing.Point(316, 3);
+            this.tableLayoutPanel3.Name = "tableLayoutPanel3";
+            this.tableLayoutPanel3.RowCount = 2;
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel3.Size = new System.Drawing.Size(702, 542);
+            this.tableLayoutPanel3.TabIndex = 1;
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.Location = new System.Drawing.Point(3, 0);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(57, 20);
+            this.label7.TabIndex = 0;
+            this.label7.Text = "Teams";
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Location = new System.Drawing.Point(354, 0);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(70, 20);
+            this.label8.TabIndex = 1;
+            this.label8.Text = "Missions";
+            // 
+            // teamsDataGridView
+            // 
+            this.teamsDataGridView.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells;
+            this.teamsDataGridView.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.AllCells;
+            this.teamsDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.teamsDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.teamsTypeColumn,
+            this.teamsCountColumn});
+            this.teamsDataGridView.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.teamsDataGridView.Location = new System.Drawing.Point(3, 23);
+            this.teamsDataGridView.Name = "teamsDataGridView";
+            this.teamsDataGridView.RowTemplate.Height = 28;
+            this.teamsDataGridView.Size = new System.Drawing.Size(345, 516);
+            this.teamsDataGridView.TabIndex = 2;
+            this.teamsDataGridView.VirtualMode = true;
+            this.teamsDataGridView.CancelRowEdit += new System.Windows.Forms.QuestionEventHandler(this.teamsDataGridView_CancelRowEdit);
+            this.teamsDataGridView.CellValueNeeded += new System.Windows.Forms.DataGridViewCellValueEventHandler(this.teamsDataGridView_CellValueNeeded);
+            this.teamsDataGridView.CellValuePushed += new System.Windows.Forms.DataGridViewCellValueEventHandler(this.teamsDataGridView_CellValuePushed);
+            this.teamsDataGridView.NewRowNeeded += new System.Windows.Forms.DataGridViewRowEventHandler(this.teamsDataGridView_NewRowNeeded);
+            this.teamsDataGridView.RowDirtyStateNeeded += new System.Windows.Forms.QuestionEventHandler(this.teamsDataGridView_RowDirtyStateNeeded);
+            this.teamsDataGridView.RowValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.teamsDataGridView_RowValidated);
+            this.teamsDataGridView.UserAddedRow += new System.Windows.Forms.DataGridViewRowEventHandler(this.teamsDataGridView_UserAddedRow);
+            this.teamsDataGridView.UserDeletedRow += new System.Windows.Forms.DataGridViewRowEventHandler(this.teamsDataGridView_UserDeletedRow);
+            this.teamsDataGridView.UserDeletingRow += new System.Windows.Forms.DataGridViewRowCancelEventHandler(this.teamsDataGridView_UserDeletingRow);
+            // 
+            // teamsTypeColumn
+            // 
+            this.teamsTypeColumn.HeaderText = "Type";
+            this.teamsTypeColumn.Name = "teamsTypeColumn";
+            this.teamsTypeColumn.Width = 54;
+            // 
+            // teamsCountColumn
+            // 
+            this.teamsCountColumn.HeaderText = "Count";
+            this.teamsCountColumn.Name = "teamsCountColumn";
+            this.teamsCountColumn.Width = 88;
+            // 
+            // missionsDataGridView
+            // 
+            this.missionsDataGridView.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells;
+            this.missionsDataGridView.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.AllCells;
+            this.missionsDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.missionsDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.missionsMissionColumn,
+            this.missionsArgumentColumn});
+            this.missionsDataGridView.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.missionsDataGridView.Location = new System.Drawing.Point(354, 23);
+            this.missionsDataGridView.Name = "missionsDataGridView";
+            this.missionsDataGridView.RowTemplate.Height = 28;
+            this.missionsDataGridView.Size = new System.Drawing.Size(345, 516);
+            this.missionsDataGridView.TabIndex = 3;
+            this.missionsDataGridView.VirtualMode = true;
+            this.missionsDataGridView.CancelRowEdit += new System.Windows.Forms.QuestionEventHandler(this.missionsDataGridView_CancelRowEdit);
+            this.missionsDataGridView.CellValueNeeded += new System.Windows.Forms.DataGridViewCellValueEventHandler(this.missionsDataGridView_CellValueNeeded);
+            this.missionsDataGridView.CellValuePushed += new System.Windows.Forms.DataGridViewCellValueEventHandler(this.missionsDataGridView_CellValuePushed);
+            this.missionsDataGridView.NewRowNeeded += new System.Windows.Forms.DataGridViewRowEventHandler(this.missionsDataGridView_NewRowNeeded);
+            this.missionsDataGridView.RowDirtyStateNeeded += new System.Windows.Forms.QuestionEventHandler(this.missionsDataGridView_RowDirtyStateNeeded);
+            this.missionsDataGridView.RowValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.missionsDataGridView_RowValidated);
+            this.missionsDataGridView.UserAddedRow += new System.Windows.Forms.DataGridViewRowEventHandler(this.missionsDataGridView_UserAddedRow);
+            this.missionsDataGridView.UserDeletedRow += new System.Windows.Forms.DataGridViewRowEventHandler(this.missionsDataGridView_UserDeletedRow);
+            this.missionsDataGridView.UserDeletingRow += new System.Windows.Forms.DataGridViewRowCancelEventHandler(this.missionsDataGridView_UserDeletingRow);
+            // 
+            // missionsMissionColumn
+            // 
+            this.missionsMissionColumn.HeaderText = "Mission";
+            this.missionsMissionColumn.Name = "missionsMissionColumn";
+            this.missionsMissionColumn.Width = 68;
+            // 
+            // missionsArgumentColumn
+            // 
+            this.missionsArgumentColumn.HeaderText = "Argument";
+            this.missionsArgumentColumn.Name = "missionsArgumentColumn";
+            this.missionsArgumentColumn.Width = 115;
+            // 
+            // teamTypesListView
+            // 
+            this.teamTypesListView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
+            this.nameColumnHeader});
+            this.teamTypesListView.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.teamTypesListView.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None;
+            this.teamTypesListView.HideSelection = false;
+            this.teamTypesListView.LabelEdit = true;
+            this.teamTypesListView.Location = new System.Drawing.Point(3, 3);
+            this.teamTypesListView.MultiSelect = false;
+            this.teamTypesListView.Name = "teamTypesListView";
+            this.teamTypesListView.ShowItemToolTips = true;
+            this.teamTypesListView.Size = new System.Drawing.Size(256, 572);
+            this.teamTypesListView.TabIndex = 4;
+            this.teamTypesListView.UseCompatibleStateImageBehavior = false;
+            this.teamTypesListView.View = System.Windows.Forms.View.Details;
+            this.teamTypesListView.AfterLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.teamTypesListView_AfterLabelEdit);
+            this.teamTypesListView.SelectedIndexChanged += new System.EventHandler(this.teamTypesListView_SelectedIndexChanged);
+            this.teamTypesListView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.teamTypesListView_KeyDown);
+            this.teamTypesListView.MouseDown += new System.Windows.Forms.MouseEventHandler(this.teamTypesListView_MouseDown);
+            // 
+            // teamTypesContextMenuStrip
+            // 
+            this.teamTypesContextMenuStrip.ImageScalingSize = new System.Drawing.Size(24, 24);
+            this.teamTypesContextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.addTeamTypeToolStripMenuItem,
+            this.removeTeamTypeToolStripMenuItem});
+            this.teamTypesContextMenuStrip.Name = "teamTypesContextMenuStrip";
+            this.teamTypesContextMenuStrip.Size = new System.Drawing.Size(237, 64);
+            // 
+            // addTeamTypeToolStripMenuItem
+            // 
+            this.addTeamTypeToolStripMenuItem.Name = "addTeamTypeToolStripMenuItem";
+            this.addTeamTypeToolStripMenuItem.Size = new System.Drawing.Size(236, 30);
+            this.addTeamTypeToolStripMenuItem.Text = "&Add Team Type";
+            this.addTeamTypeToolStripMenuItem.Click += new System.EventHandler(this.addTeamTypeToolStripMenuItem_Click);
+            // 
+            // removeTeamTypeToolStripMenuItem
+            // 
+            this.removeTeamTypeToolStripMenuItem.Name = "removeTeamTypeToolStripMenuItem";
+            this.removeTeamTypeToolStripMenuItem.Size = new System.Drawing.Size(236, 30);
+            this.removeTeamTypeToolStripMenuItem.Text = "&Remove Team Type";
+            this.removeTeamTypeToolStripMenuItem.Click += new System.EventHandler(this.removeTeamTypeToolStripMenuItem_Click);
+            // 
+            // TeamTypesDialog
+            // 
+            this.AcceptButton = this.btnOK;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.btnCancel;
+            this.ClientSize = new System.Drawing.Size(1313, 640);
+            this.ControlBox = false;
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "TeamTypesDialog";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "Team Types";
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            this.flowLayoutPanel1.ResumeLayout(false);
+            this.flowLayoutPanel1.PerformLayout();
+            this.settingsPanel.ResumeLayout(false);
+            this.teamTypeTableLayoutPanel.ResumeLayout(false);
+            this.teamTypeTableLayoutPanel.PerformLayout();
+            this.tableLayoutPanel2.ResumeLayout(false);
+            this.tableLayoutPanel2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.initNumNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.maxAllowedNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.fearNud)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.recruitPriorityNud)).EndInit();
+            this.tableLayoutPanel3.ResumeLayout(false);
+            this.tableLayoutPanel3.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.teamsDataGridView)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.missionsDataGridView)).EndInit();
+            this.teamTypesContextMenuStrip.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnOK;
+        private System.Windows.Forms.Panel settingsPanel;
+        private System.Windows.Forms.ListView teamTypesListView;
+        private System.Windows.Forms.ColumnHeader nameColumnHeader;
+        private System.Windows.Forms.ContextMenuStrip teamTypesContextMenuStrip;
+        private System.Windows.Forms.ToolStripMenuItem addTeamTypeToolStripMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem removeTeamTypeToolStripMenuItem;
+        private System.Windows.Forms.TableLayoutPanel teamTypeTableLayoutPanel;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.ComboBox houseComboBox;
+        private System.Windows.Forms.CheckBox roundaboutCheckBox;
+        private System.Windows.Forms.CheckBox learningCheckBox;
+        private System.Windows.Forms.CheckBox suicideCheckBox;
+        private System.Windows.Forms.CheckBox autocreateCheckBox;
+        private System.Windows.Forms.CheckBox mercernaryCheckBox;
+        private System.Windows.Forms.CheckBox reinforcableCheckBox;
+        private System.Windows.Forms.CheckBox prebuiltCheckBox;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.NumericUpDown initNumNud;
+        private System.Windows.Forms.NumericUpDown maxAllowedNud;
+        private System.Windows.Forms.NumericUpDown fearNud;
+        private System.Windows.Forms.Label waypointLabel;
+        private System.Windows.Forms.Label triggerLabel;
+        private System.Windows.Forms.ComboBox waypointComboBox;
+        private System.Windows.Forms.ComboBox triggerComboBox;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.DataGridView teamsDataGridView;
+        private System.Windows.Forms.DataGridView missionsDataGridView;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.NumericUpDown recruitPriorityNud;
+        private System.Windows.Forms.DataGridViewComboBoxColumn teamsTypeColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn teamsCountColumn;
+        private System.Windows.Forms.DataGridViewComboBoxColumn missionsMissionColumn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn missionsArgumentColumn;
+    }
+}

+ 504 - 0
CnCTDRAMapEditor/Dialogs/TeamTypesDialog.cs

@@ -0,0 +1,504 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Model;
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Dialogs
+{
+    public partial class TeamTypesDialog : Form
+    {
+        private readonly IGamePlugin plugin;
+        private readonly int maxTeams;
+        private readonly IEnumerable<ITechnoType> technoTypes;
+
+        private readonly List<TeamType> teamTypes;
+        public IEnumerable<TeamType> TeamTypes => teamTypes;
+
+        private ListViewItem SelectedItem => (teamTypesListView.SelectedItems.Count > 0) ? teamTypesListView.SelectedItems[0] : null;
+
+        private TeamType SelectedTeamType => SelectedItem?.Tag as TeamType;
+
+        private TeamTypeClass mockClass;
+        private TeamTypeMission mockMission;
+        private int classEditRow = -1;
+        private int missionEditRow = -1;
+
+        public TeamTypesDialog(IGamePlugin plugin, int maxTeams)
+        {
+            this.plugin = plugin;
+            this.maxTeams = maxTeams;
+            technoTypes = plugin.Map.InfantryTypes.Cast<ITechnoType>().Concat(plugin.Map.UnitTypes.Cast<ITechnoType>());
+
+            InitializeComponent();
+
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    triggerLabel.Visible = triggerComboBox.Visible = false;
+                    waypointLabel.Visible = waypointComboBox.Visible = false;
+                    break;
+                case GameType.RedAlert:
+                    learningCheckBox.Visible = false;
+                    mercernaryCheckBox.Visible = false;
+                    break;
+            }
+
+            teamTypes = new List<TeamType>(plugin.Map.TeamTypes.Select(t => t.Clone()));
+
+            teamTypesListView.BeginUpdate();
+            {
+                foreach (var teamType in this.teamTypes)
+                {
+                    var item = new ListViewItem(teamType.Name)
+                    {
+                        Tag = teamType
+                    };
+                    teamTypesListView.Items.Add(item).ToolTipText = teamType.Name;
+                }
+            }
+            teamTypesListView.EndUpdate();
+
+            houseComboBox.DataSource = plugin.Map.Houses.Select(t => new TypeItem<HouseType>(t.Type.Name, t.Type)).ToArray();
+            waypointComboBox.DataSource = "(none)".Yield().Concat(plugin.Map.Waypoints.Select(w => w.Name)).ToArray();
+            triggerComboBox.DataSource = Trigger.None.Yield().Concat(plugin.Map.Triggers.Select(t => t.Name)).ToArray();
+
+            teamsTypeColumn.DisplayMember = "Name";
+            teamsTypeColumn.ValueMember = "Type";
+            teamsTypeColumn.DataSource = technoTypes.Select(t => new TypeItem<ITechnoType>(t.Name, t)).ToArray();
+
+            missionsMissionColumn.DataSource = plugin.Map.TeamMissionTypes;
+
+            teamTypeTableLayoutPanel.Visible = false;
+        }
+
+        private void teamTypesListView_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            houseComboBox.DataBindings.Clear();
+            roundaboutCheckBox.DataBindings.Clear();
+            learningCheckBox.DataBindings.Clear();
+            suicideCheckBox.DataBindings.Clear();
+            autocreateCheckBox.DataBindings.Clear();
+            mercernaryCheckBox.DataBindings.Clear();
+            reinforcableCheckBox.DataBindings.Clear();
+            prebuiltCheckBox.DataBindings.Clear();
+            recruitPriorityNud.DataBindings.Clear();
+            initNumNud.DataBindings.Clear();
+            maxAllowedNud.DataBindings.Clear();
+            fearNud.DataBindings.Clear();
+            waypointComboBox.DataBindings.Clear();
+            triggerComboBox.DataBindings.Clear();
+
+            if (SelectedTeamType != null)
+            {
+                houseComboBox.DataBindings.Add("SelectedValue", SelectedTeamType, "House");
+                roundaboutCheckBox.DataBindings.Add("Checked", SelectedTeamType, "IsRoundAbout");
+                learningCheckBox.DataBindings.Add("Checked", SelectedTeamType, "IsLearning");
+                suicideCheckBox.DataBindings.Add("Checked", SelectedTeamType, "IsSuicide");
+                autocreateCheckBox.DataBindings.Add("Checked", SelectedTeamType, "IsAutocreate");
+                mercernaryCheckBox.DataBindings.Add("Checked", SelectedTeamType, "IsMercenary");
+                reinforcableCheckBox.DataBindings.Add("Checked", SelectedTeamType, "IsReinforcable");
+                prebuiltCheckBox.DataBindings.Add("Checked", SelectedTeamType, "IsPrebuilt");
+                recruitPriorityNud.DataBindings.Add("Value", SelectedTeamType, "RecruitPriority");
+                initNumNud.DataBindings.Add("Value", SelectedTeamType, "InitNum");
+                maxAllowedNud.DataBindings.Add("Value", SelectedTeamType, "MaxAllowed");
+                fearNud.DataBindings.Add("Value", SelectedTeamType, "Fear");
+                waypointComboBox.DataBindings.Add("SelectedIndex", SelectedTeamType, "Origin");
+                triggerComboBox.DataBindings.Add("SelectedItem", SelectedTeamType, "Trigger");
+
+                mockClass = null;
+                mockMission = null;
+                classEditRow = -1;
+                missionEditRow = -1;
+
+                teamsDataGridView.Rows.Clear();
+                missionsDataGridView.Rows.Clear();
+
+                teamsDataGridView.RowCount = SelectedTeamType.Classes.Count + 1;
+                missionsDataGridView.RowCount = SelectedTeamType.Missions.Count + 1;
+
+                updateDataGridViewAddRows(teamsDataGridView, Globals.MaxTeamClasses);
+                updateDataGridViewAddRows(missionsDataGridView, Globals.MaxTeamMissions);
+
+                teamTypeTableLayoutPanel.Visible = true;
+            }
+            else
+            {
+                teamTypeTableLayoutPanel.Visible = false;
+            }
+        }
+
+        private void teamTypesListView_MouseDown(object sender, MouseEventArgs e)
+        {
+            if (e.Button == MouseButtons.Right)
+            {
+                var hitTest = teamTypesListView.HitTest(e.Location);
+
+                bool canAdd = (hitTest.Item == null) && (teamTypesListView.Items.Count < maxTeams);
+                bool canRemove = hitTest.Item != null;
+                addTeamTypeToolStripMenuItem.Visible = canAdd;
+                removeTeamTypeToolStripMenuItem.Visible = canRemove;
+
+                if (canAdd || canRemove)
+                {
+                    teamTypesContextMenuStrip.Show(Cursor.Position);
+                }
+            }
+        }
+
+        private void teamTypesListView_KeyDown(object sender, KeyEventArgs e)
+        {
+            if ((e.KeyData == Keys.F2) && (teamTypesListView.SelectedItems.Count > 0))
+            {
+                teamTypesListView.SelectedItems[0].BeginEdit();
+            }
+        }
+
+        private void addTeamTypeToolStripMenuItem_Click(object sender, EventArgs e)
+        {
+            var nameChars = Enumerable.Range(97, 26).Concat(Enumerable.Range(48, 10));
+
+            string name = string.Empty;
+            foreach (var nameChar in nameChars)
+            {
+                name = new string((char)nameChar, 4);
+                if (!teamTypes.Where(t => t.Equals(name)).Any())
+                {
+                    break;
+                }
+            }
+
+            var teamType = new TeamType { Name = name, House = plugin.Map.HouseTypes.First() };
+            var item = new ListViewItem(teamType.Name)
+            {
+                Tag = teamType
+            };
+            teamTypes.Add(teamType);
+            teamTypesListView.Items.Add(item).ToolTipText = teamType.Name;
+
+            item.Selected = true;
+            item.BeginEdit();
+        }
+
+        private void removeTeamTypeToolStripMenuItem_Click(object sender, EventArgs e)
+        {
+            if (SelectedItem != null)
+            {
+                teamTypes.Remove(SelectedTeamType);
+                teamTypesListView.Items.Remove(SelectedItem);
+            }
+        }
+
+        private void teamTypesListView_AfterLabelEdit(object sender, LabelEditEventArgs e)
+        {
+            int maxLength = int.MaxValue;
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    maxLength = 8;
+                    break;
+                case GameType.RedAlert:
+                    maxLength = 23;
+                    break;
+            }
+
+            if (string.IsNullOrEmpty(e.Label))
+            {
+                e.CancelEdit = true;
+            }
+            else if (e.Label.Length > maxLength)
+            {
+                e.CancelEdit = true;
+                MessageBox.Show(string.Format("Team name is longer than {0} characters.", maxLength), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+            else if (teamTypes.Where(t => (t != SelectedTeamType) && t.Equals(e.Label)).Any())
+            {
+                e.CancelEdit = true;
+                MessageBox.Show(string.Format("Team with name '{0]' already exists", e.Label), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+            else
+            {
+                SelectedTeamType.Name = e.Label;
+                teamTypesListView.Items[e.Item].ToolTipText = SelectedTeamType.Name;
+            }
+        }
+
+        private void teamsDataGridView_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e)
+        {
+            if (SelectedTeamType == null)
+            {
+                return;
+            }
+
+            TeamTypeClass teamTypeClass = null;
+            if (e.RowIndex == classEditRow)
+            {
+                teamTypeClass = mockClass;
+            }
+            else if (e.RowIndex < SelectedTeamType.Classes.Count)
+            {
+                teamTypeClass = SelectedTeamType.Classes[e.RowIndex];
+            }
+
+            if (teamTypeClass == null)
+            {
+                return;
+            }
+
+            switch (e.ColumnIndex)
+            {
+                case 0:
+                    e.Value = teamTypeClass.Type;
+                    break;
+                case 1:
+                    e.Value = teamTypeClass.Count;
+                    break;
+            }
+        }
+
+        private void teamsDataGridView_CellValuePushed(object sender, DataGridViewCellValueEventArgs e)
+        {
+            if (SelectedTeamType == null)
+            {
+                return;
+            }
+
+            if (mockClass == null)
+            {
+                mockClass = (e.RowIndex < SelectedTeamType.Classes.Count) ?
+                    new TeamTypeClass { Type = SelectedTeamType.Classes[e.RowIndex].Type, Count = SelectedTeamType.Classes[e.RowIndex].Count } :
+                    new TeamTypeClass { Type = technoTypes.First(), Count = 0 };
+            }
+            classEditRow = e.RowIndex;
+
+            switch (e.ColumnIndex)
+            {
+                case 0:
+                    mockClass.Type = e.Value as ITechnoType;
+                    break;
+                case 1:
+                    mockClass.Count = int.TryParse(e.Value as string, out int value) ? (byte)Math.Max(0, Math.Min(255, value)) : (byte)0;
+                    break;
+            }
+        }
+
+        private void teamsDataGridView_NewRowNeeded(object sender, DataGridViewRowEventArgs e)
+        {
+            mockClass = new TeamTypeClass { Type = technoTypes.First(), Count = 0 };
+            classEditRow = teamsDataGridView.RowCount - 1;
+        }
+
+        private void teamsDataGridView_RowValidated(object sender, DataGridViewCellEventArgs e)
+        {
+            if ((mockClass != null) && (e.RowIndex >= SelectedTeamType.Classes.Count) && ((teamsDataGridView.Rows.Count > 1) || (e.RowIndex < (teamsDataGridView.Rows.Count - 1))))
+            {
+                SelectedTeamType.Classes.Add(mockClass);
+                mockClass = null;
+                classEditRow = -1;
+            }
+            else if ((mockClass != null) && (e.RowIndex < SelectedTeamType.Classes.Count))
+            {
+                SelectedTeamType.Classes[e.RowIndex] = mockClass;
+                mockClass = null;
+                classEditRow = -1;
+            }
+            else if (teamsDataGridView.ContainsFocus)
+            {
+                mockClass = null;
+                classEditRow = -1;
+            }
+        }
+
+        private void teamsDataGridView_RowDirtyStateNeeded(object sender, QuestionEventArgs e)
+        {
+            e.Response = teamsDataGridView.IsCurrentCellDirty;
+        }
+
+        private void teamsDataGridView_CancelRowEdit(object sender, QuestionEventArgs e)
+        {
+            if ((classEditRow == (teamsDataGridView.Rows.Count - 2)) && (classEditRow == SelectedTeamType.Classes.Count))
+            {
+                mockClass = new TeamTypeClass { Type = technoTypes.First(), Count = 0 };
+            }
+            else
+            {
+                mockClass = null;
+                classEditRow = -1;
+            }
+        }
+
+        private void teamsDataGridView_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
+        {
+            if (e.Row.Index < SelectedTeamType.Classes.Count)
+            {
+                SelectedTeamType.Classes.RemoveAt(e.Row.Index);
+            }
+
+            if (e.Row.Index == classEditRow)
+            {
+                mockClass = null;
+                classEditRow = -1;
+            }
+        }
+
+        private void teamsDataGridView_UserAddedRow(object sender, DataGridViewRowEventArgs e)
+        {
+            updateDataGridViewAddRows(teamsDataGridView, Globals.MaxTeamClasses);
+        }
+
+        private void teamsDataGridView_UserDeletedRow(object sender, DataGridViewRowEventArgs e)
+        {
+            updateDataGridViewAddRows(teamsDataGridView, Globals.MaxTeamClasses);
+        }
+
+        private void missionsDataGridView_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e)
+        {
+            if (SelectedTeamType == null)
+            {
+                return;
+            }
+
+            TeamTypeMission teamMissionType = null;
+            if (e.RowIndex == missionEditRow)
+            {
+                teamMissionType = mockMission;
+            }
+            else if (e.RowIndex < SelectedTeamType.Missions.Count)
+            {
+                teamMissionType = SelectedTeamType.Missions[e.RowIndex];
+            }
+
+            if (teamMissionType == null)
+            {
+                return;
+            }
+
+            switch (e.ColumnIndex)
+            {
+                case 0:
+                    e.Value = teamMissionType.Mission;
+                    break;
+                case 1:
+                    e.Value = teamMissionType.Argument;
+                    break;
+            }
+        }
+
+        private void missionsDataGridView_CellValuePushed(object sender, DataGridViewCellValueEventArgs e)
+        {
+            if (SelectedTeamType == null)
+            {
+                return;
+            }
+
+            if (mockMission == null)
+            {
+                mockMission = (e.RowIndex < SelectedTeamType.Missions.Count) ?
+                    new TeamTypeMission { Mission = SelectedTeamType.Missions[e.RowIndex].Mission, Argument = SelectedTeamType.Missions[e.RowIndex].Argument } :
+                    new TeamTypeMission { Mission = plugin.Map.TeamMissionTypes.First(), Argument = 0 };
+            }
+            missionEditRow = e.RowIndex;
+
+            switch (e.ColumnIndex)
+            {
+                case 0:
+                    mockMission.Mission = e.Value as string;
+                    break;
+                case 1:
+                    mockMission.Argument = int.TryParse(e.Value as string, out int value) ? value : 0;
+                    break;
+            }
+        }
+
+        private void missionsDataGridView_NewRowNeeded(object sender, DataGridViewRowEventArgs e)
+        {
+            mockMission = new TeamTypeMission { Mission = plugin.Map.TeamMissionTypes.First(), Argument = 0 };
+            missionEditRow = missionsDataGridView.RowCount - 1;
+        }
+
+        private void missionsDataGridView_RowValidated(object sender, DataGridViewCellEventArgs e)
+        {
+            if ((mockMission != null) && (e.RowIndex >= SelectedTeamType.Missions.Count) && ((missionsDataGridView.Rows.Count > 1) || (e.RowIndex < (missionsDataGridView.Rows.Count - 1))))
+            {
+                SelectedTeamType.Missions.Add(mockMission);
+                mockMission = null;
+                missionEditRow = -1;
+            }
+            else if ((mockMission != null) && (e.RowIndex < SelectedTeamType.Missions.Count))
+            {
+                SelectedTeamType.Missions[e.RowIndex] = mockMission;
+                mockMission = null;
+                missionEditRow = -1;
+            }
+            else if (missionsDataGridView.ContainsFocus)
+            {
+                mockMission = null;
+                missionEditRow = -1;
+            }
+        }
+
+        private void missionsDataGridView_RowDirtyStateNeeded(object sender, QuestionEventArgs e)
+        {
+            e.Response = missionsDataGridView.IsCurrentCellDirty;
+        }
+
+        private void missionsDataGridView_CancelRowEdit(object sender, QuestionEventArgs e)
+        {
+            if ((missionEditRow == (missionsDataGridView.Rows.Count - 2)) && (missionEditRow == SelectedTeamType.Missions.Count))
+            {
+                mockMission = new TeamTypeMission { Mission = plugin.Map.TeamMissionTypes.First(), Argument = 0 };
+            }
+            else
+            {
+                mockMission = null;
+                missionEditRow = -1;
+            }
+        }
+
+        private void missionsDataGridView_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
+        {
+            if (e.Row.Index < SelectedTeamType.Missions.Count)
+            {
+                SelectedTeamType.Missions.RemoveAt(e.Row.Index);
+            }
+
+            if (e.Row.Index == missionEditRow)
+            {
+                mockMission = null;
+                missionEditRow = -1;
+            }
+        }
+
+        private void missionsDataGridView_UserAddedRow(object sender, DataGridViewRowEventArgs e)
+        {
+            updateDataGridViewAddRows(missionsDataGridView, Globals.MaxTeamMissions);
+        }
+
+        private void missionsDataGridView_UserDeletedRow(object sender, DataGridViewRowEventArgs e)
+        {
+            updateDataGridViewAddRows(missionsDataGridView, Globals.MaxTeamMissions);
+        }
+
+        private void updateDataGridViewAddRows(DataGridView dataGridView, int maxItems)
+        {
+            dataGridView.AllowUserToAddRows = dataGridView.Rows.Count <= maxItems;
+        }
+    }
+}

+ 135 - 0
CnCTDRAMapEditor/Dialogs/TeamTypesDialog.resx

@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="teamsTypeColumn.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="teamsCountColumn.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="missionsMissionColumn.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="missionsArgumentColumn.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="teamTypesContextMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+</root>

+ 687 - 0
CnCTDRAMapEditor/Dialogs/TriggersDialog.Designer.cs

@@ -0,0 +1,687 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Dialogs
+{
+    partial class TriggersDialog
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnOK = new System.Windows.Forms.Button();
+            this.settingsPanel = new System.Windows.Forms.Panel();
+            this.triggersTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
+            this.label1 = new System.Windows.Forms.Label();
+            this.houseComboBox = new System.Windows.Forms.ComboBox();
+            this.typeLabel = new System.Windows.Forms.Label();
+            this.event1Label = new System.Windows.Forms.Label();
+            this.event2Label = new System.Windows.Forms.Label();
+            this.action1Label = new System.Windows.Forms.Label();
+            this.action2Label = new System.Windows.Forms.Label();
+            this.action1ComboBox = new System.Windows.Forms.ComboBox();
+            this.action2ComboBox = new System.Windows.Forms.ComboBox();
+            this.existenceLabel = new System.Windows.Forms.Label();
+            this.existenceComboBox = new System.Windows.Forms.ComboBox();
+            this.typeComboBox = new System.Windows.Forms.ComboBox();
+            this.event1ComboBox = new System.Windows.Forms.ComboBox();
+            this.event2ComboBox = new System.Windows.Forms.ComboBox();
+            this.teamLabel = new System.Windows.Forms.Label();
+            this.teamComboBox = new System.Windows.Forms.ComboBox();
+            this.event1Flp = new System.Windows.Forms.FlowLayoutPanel();
+            this.event1Nud = new System.Windows.Forms.NumericUpDown();
+            this.event1ValueComboBox = new System.Windows.Forms.ComboBox();
+            this.event2Flp = new System.Windows.Forms.FlowLayoutPanel();
+            this.event2Nud = new System.Windows.Forms.NumericUpDown();
+            this.event2ValueComboBox = new System.Windows.Forms.ComboBox();
+            this.action1Flp = new System.Windows.Forms.FlowLayoutPanel();
+            this.action1Nud = new System.Windows.Forms.NumericUpDown();
+            this.action1ValueComboBox = new System.Windows.Forms.ComboBox();
+            this.action2Flp = new System.Windows.Forms.FlowLayoutPanel();
+            this.action2Nud = new System.Windows.Forms.NumericUpDown();
+            this.action2ValueComboBox = new System.Windows.Forms.ComboBox();
+            this.triggersListView = new System.Windows.Forms.ListView();
+            this.nameColumnHeader = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+            this.triggersContextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
+            this.addTriggerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.removeTriggerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.flowLayoutPanel1.SuspendLayout();
+            this.settingsPanel.SuspendLayout();
+            this.triggersTableLayoutPanel.SuspendLayout();
+            this.event1Flp.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.event1Nud)).BeginInit();
+            this.event2Flp.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.event2Nud)).BeginInit();
+            this.action1Flp.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.action1Nud)).BeginInit();
+            this.action2Flp.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.action2Nud)).BeginInit();
+            this.triggersContextMenuStrip.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 2;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel1, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.settingsPanel, 1, 0);
+            this.tableLayoutPanel1.Controls.Add(this.triggersListView, 0, 0);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 2;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(562, 499);
+            this.tableLayoutPanel1.TabIndex = 1;
+            // 
+            // flowLayoutPanel1
+            // 
+            this.flowLayoutPanel1.AutoSize = true;
+            this.flowLayoutPanel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.tableLayoutPanel1.SetColumnSpan(this.flowLayoutPanel1, 2);
+            this.flowLayoutPanel1.Controls.Add(this.btnCancel);
+            this.flowLayoutPanel1.Controls.Add(this.btnOK);
+            this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.RightToLeft;
+            this.flowLayoutPanel1.Location = new System.Drawing.Point(3, 462);
+            this.flowLayoutPanel1.Name = "flowLayoutPanel1";
+            this.flowLayoutPanel1.Size = new System.Drawing.Size(556, 34);
+            this.flowLayoutPanel1.TabIndex = 1;
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.AutoSize = true;
+            this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.btnCancel.Location = new System.Drawing.Point(486, 2);
+            this.btnCancel.Margin = new System.Windows.Forms.Padding(2);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(68, 30);
+            this.btnCancel.TabIndex = 2;
+            this.btnCancel.Text = "&Cancel";
+            this.btnCancel.UseVisualStyleBackColor = true;
+            // 
+            // btnOK
+            // 
+            this.btnOK.AutoSize = true;
+            this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
+            this.btnOK.Location = new System.Drawing.Point(432, 2);
+            this.btnOK.Margin = new System.Windows.Forms.Padding(2);
+            this.btnOK.Name = "btnOK";
+            this.btnOK.Size = new System.Drawing.Size(50, 30);
+            this.btnOK.TabIndex = 3;
+            this.btnOK.Text = "&OK";
+            this.btnOK.UseVisualStyleBackColor = true;
+            // 
+            // settingsPanel
+            // 
+            this.settingsPanel.Controls.Add(this.triggersTableLayoutPanel);
+            this.settingsPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.settingsPanel.Location = new System.Drawing.Point(149, 10);
+            this.settingsPanel.Margin = new System.Windows.Forms.Padding(10);
+            this.settingsPanel.Name = "settingsPanel";
+            this.settingsPanel.Size = new System.Drawing.Size(403, 439);
+            this.settingsPanel.TabIndex = 3;
+            // 
+            // triggersTableLayoutPanel
+            // 
+            this.triggersTableLayoutPanel.AutoSize = true;
+            this.triggersTableLayoutPanel.ColumnCount = 4;
+            this.triggersTableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.triggersTableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.triggersTableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.triggersTableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.triggersTableLayoutPanel.Controls.Add(this.label1, 0, 0);
+            this.triggersTableLayoutPanel.Controls.Add(this.houseComboBox, 1, 0);
+            this.triggersTableLayoutPanel.Controls.Add(this.typeLabel, 0, 9);
+            this.triggersTableLayoutPanel.Controls.Add(this.event1Label, 0, 10);
+            this.triggersTableLayoutPanel.Controls.Add(this.event2Label, 0, 11);
+            this.triggersTableLayoutPanel.Controls.Add(this.action1Label, 0, 12);
+            this.triggersTableLayoutPanel.Controls.Add(this.action2Label, 0, 13);
+            this.triggersTableLayoutPanel.Controls.Add(this.action1ComboBox, 1, 12);
+            this.triggersTableLayoutPanel.Controls.Add(this.action2ComboBox, 1, 13);
+            this.triggersTableLayoutPanel.Controls.Add(this.existenceLabel, 0, 8);
+            this.triggersTableLayoutPanel.Controls.Add(this.existenceComboBox, 1, 8);
+            this.triggersTableLayoutPanel.Controls.Add(this.typeComboBox, 1, 9);
+            this.triggersTableLayoutPanel.Controls.Add(this.event1ComboBox, 1, 10);
+            this.triggersTableLayoutPanel.Controls.Add(this.event2ComboBox, 1, 11);
+            this.triggersTableLayoutPanel.Controls.Add(this.teamLabel, 0, 14);
+            this.triggersTableLayoutPanel.Controls.Add(this.teamComboBox, 1, 14);
+            this.triggersTableLayoutPanel.Controls.Add(this.event1Flp, 2, 10);
+            this.triggersTableLayoutPanel.Controls.Add(this.event2Flp, 2, 11);
+            this.triggersTableLayoutPanel.Controls.Add(this.action1Flp, 2, 12);
+            this.triggersTableLayoutPanel.Controls.Add(this.action2Flp, 2, 13);
+            this.triggersTableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.triggersTableLayoutPanel.Location = new System.Drawing.Point(0, 0);
+            this.triggersTableLayoutPanel.Margin = new System.Windows.Forms.Padding(2);
+            this.triggersTableLayoutPanel.Name = "triggersTableLayoutPanel";
+            this.triggersTableLayoutPanel.RowCount = 17;
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.triggersTableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.triggersTableLayoutPanel.Size = new System.Drawing.Size(403, 439);
+            this.triggersTableLayoutPanel.TabIndex = 1;
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label1.Location = new System.Drawing.Point(2, 0);
+            this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(67, 25);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "House";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // houseComboBox
+            // 
+            this.houseComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.houseComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.houseComboBox.FormattingEnabled = true;
+            this.houseComboBox.Location = new System.Drawing.Point(73, 2);
+            this.houseComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.houseComboBox.Name = "houseComboBox";
+            this.houseComboBox.Size = new System.Drawing.Size(141, 21);
+            this.houseComboBox.TabIndex = 1;
+            // 
+            // typeLabel
+            // 
+            this.typeLabel.AutoSize = true;
+            this.typeLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.typeLabel.Location = new System.Drawing.Point(2, 50);
+            this.typeLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.typeLabel.Name = "typeLabel";
+            this.typeLabel.Size = new System.Drawing.Size(67, 25);
+            this.typeLabel.TabIndex = 9;
+            this.typeLabel.Text = "Type";
+            this.typeLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // event1Label
+            // 
+            this.event1Label.AutoSize = true;
+            this.event1Label.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.event1Label.Location = new System.Drawing.Point(2, 75);
+            this.event1Label.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.event1Label.Name = "event1Label";
+            this.event1Label.Size = new System.Drawing.Size(67, 57);
+            this.event1Label.TabIndex = 10;
+            this.event1Label.Text = "Event 1";
+            this.event1Label.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // event2Label
+            // 
+            this.event2Label.AutoSize = true;
+            this.event2Label.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.event2Label.Location = new System.Drawing.Point(2, 132);
+            this.event2Label.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.event2Label.Name = "event2Label";
+            this.event2Label.Size = new System.Drawing.Size(67, 57);
+            this.event2Label.TabIndex = 11;
+            this.event2Label.Text = "Event 2";
+            this.event2Label.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // action1Label
+            // 
+            this.action1Label.AutoSize = true;
+            this.action1Label.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.action1Label.Location = new System.Drawing.Point(2, 189);
+            this.action1Label.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.action1Label.Name = "action1Label";
+            this.action1Label.Size = new System.Drawing.Size(67, 57);
+            this.action1Label.TabIndex = 15;
+            this.action1Label.Text = "Action 1";
+            this.action1Label.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // action2Label
+            // 
+            this.action2Label.AutoSize = true;
+            this.action2Label.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.action2Label.Location = new System.Drawing.Point(2, 246);
+            this.action2Label.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.action2Label.Name = "action2Label";
+            this.action2Label.Size = new System.Drawing.Size(67, 57);
+            this.action2Label.TabIndex = 16;
+            this.action2Label.Text = "Action 2";
+            this.action2Label.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // action1ComboBox
+            // 
+            this.action1ComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.action1ComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.action1ComboBox.FormattingEnabled = true;
+            this.action1ComboBox.Location = new System.Drawing.Point(73, 191);
+            this.action1ComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.action1ComboBox.Name = "action1ComboBox";
+            this.action1ComboBox.Size = new System.Drawing.Size(141, 21);
+            this.action1ComboBox.TabIndex = 17;
+            this.action1ComboBox.SelectedIndexChanged += new System.EventHandler(this.trigger1ComboBox_SelectedIndexChanged);
+            // 
+            // action2ComboBox
+            // 
+            this.action2ComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.action2ComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.action2ComboBox.FormattingEnabled = true;
+            this.action2ComboBox.Location = new System.Drawing.Point(73, 248);
+            this.action2ComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.action2ComboBox.Name = "action2ComboBox";
+            this.action2ComboBox.Size = new System.Drawing.Size(141, 21);
+            this.action2ComboBox.TabIndex = 18;
+            this.action2ComboBox.SelectedIndexChanged += new System.EventHandler(this.trigger2ComboBox_SelectedIndexChanged);
+            // 
+            // existenceLabel
+            // 
+            this.existenceLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.existenceLabel.Location = new System.Drawing.Point(2, 25);
+            this.existenceLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.existenceLabel.Name = "existenceLabel";
+            this.existenceLabel.Size = new System.Drawing.Size(67, 25);
+            this.existenceLabel.TabIndex = 19;
+            this.existenceLabel.Text = "Existence";
+            this.existenceLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // existenceComboBox
+            // 
+            this.existenceComboBox.DisplayMember = "Name";
+            this.existenceComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.existenceComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.existenceComboBox.FormattingEnabled = true;
+            this.existenceComboBox.Location = new System.Drawing.Point(73, 27);
+            this.existenceComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.existenceComboBox.Name = "existenceComboBox";
+            this.existenceComboBox.Size = new System.Drawing.Size(141, 21);
+            this.existenceComboBox.TabIndex = 20;
+            this.existenceComboBox.ValueMember = "Value";
+            // 
+            // typeComboBox
+            // 
+            this.typeComboBox.DisplayMember = "Name";
+            this.typeComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.typeComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.typeComboBox.FormattingEnabled = true;
+            this.typeComboBox.Location = new System.Drawing.Point(73, 52);
+            this.typeComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.typeComboBox.Name = "typeComboBox";
+            this.typeComboBox.Size = new System.Drawing.Size(141, 21);
+            this.typeComboBox.TabIndex = 21;
+            this.typeComboBox.ValueMember = "Value";
+            this.typeComboBox.SelectedValueChanged += new System.EventHandler(this.typeComboBox_SelectedValueChanged);
+            // 
+            // event1ComboBox
+            // 
+            this.event1ComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.event1ComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.event1ComboBox.FormattingEnabled = true;
+            this.event1ComboBox.Location = new System.Drawing.Point(73, 77);
+            this.event1ComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.event1ComboBox.Name = "event1ComboBox";
+            this.event1ComboBox.Size = new System.Drawing.Size(141, 21);
+            this.event1ComboBox.TabIndex = 22;
+            this.event1ComboBox.SelectedIndexChanged += new System.EventHandler(this.trigger1ComboBox_SelectedIndexChanged);
+            // 
+            // event2ComboBox
+            // 
+            this.event2ComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.event2ComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.event2ComboBox.FormattingEnabled = true;
+            this.event2ComboBox.Location = new System.Drawing.Point(73, 134);
+            this.event2ComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.event2ComboBox.Name = "event2ComboBox";
+            this.event2ComboBox.Size = new System.Drawing.Size(141, 21);
+            this.event2ComboBox.TabIndex = 23;
+            this.event2ComboBox.SelectedIndexChanged += new System.EventHandler(this.trigger2ComboBox_SelectedIndexChanged);
+            // 
+            // teamLabel
+            // 
+            this.teamLabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.teamLabel.Location = new System.Drawing.Point(2, 303);
+            this.teamLabel.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.teamLabel.Name = "teamLabel";
+            this.teamLabel.Size = new System.Drawing.Size(67, 25);
+            this.teamLabel.TabIndex = 32;
+            this.teamLabel.Text = "Team";
+            this.teamLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // teamComboBox
+            // 
+            this.teamComboBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.teamComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.teamComboBox.FormattingEnabled = true;
+            this.teamComboBox.Location = new System.Drawing.Point(73, 305);
+            this.teamComboBox.Margin = new System.Windows.Forms.Padding(2);
+            this.teamComboBox.Name = "teamComboBox";
+            this.teamComboBox.Size = new System.Drawing.Size(141, 21);
+            this.teamComboBox.TabIndex = 33;
+            // 
+            // event1Flp
+            // 
+            this.event1Flp.AutoSize = true;
+            this.event1Flp.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.event1Flp.Controls.Add(this.event1Nud);
+            this.event1Flp.Controls.Add(this.event1ValueComboBox);
+            this.event1Flp.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.event1Flp.Location = new System.Drawing.Point(219, 78);
+            this.event1Flp.Name = "event1Flp";
+            this.event1Flp.Size = new System.Drawing.Size(172, 51);
+            this.event1Flp.TabIndex = 36;
+            // 
+            // event1Nud
+            // 
+            this.event1Nud.Location = new System.Drawing.Point(2, 2);
+            this.event1Nud.Margin = new System.Windows.Forms.Padding(2);
+            this.event1Nud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.event1Nud.Minimum = new decimal(new int[] {
+            -2147483648,
+            0,
+            0,
+            -2147483648});
+            this.event1Nud.Name = "event1Nud";
+            this.event1Nud.Size = new System.Drawing.Size(70, 20);
+            this.event1Nud.TabIndex = 31;
+            // 
+            // event1ValueComboBox
+            // 
+            this.event1ValueComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.event1ValueComboBox.FormattingEnabled = true;
+            this.event1ValueComboBox.Location = new System.Drawing.Point(3, 27);
+            this.event1ValueComboBox.Name = "event1ValueComboBox";
+            this.event1ValueComboBox.Size = new System.Drawing.Size(166, 21);
+            this.event1ValueComboBox.TabIndex = 32;
+            // 
+            // event2Flp
+            // 
+            this.event2Flp.AutoSize = true;
+            this.event2Flp.Controls.Add(this.event2Nud);
+            this.event2Flp.Controls.Add(this.event2ValueComboBox);
+            this.event2Flp.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.event2Flp.Location = new System.Drawing.Point(219, 135);
+            this.event2Flp.Name = "event2Flp";
+            this.event2Flp.Size = new System.Drawing.Size(172, 51);
+            this.event2Flp.TabIndex = 37;
+            // 
+            // event2Nud
+            // 
+            this.event2Nud.Location = new System.Drawing.Point(2, 2);
+            this.event2Nud.Margin = new System.Windows.Forms.Padding(2);
+            this.event2Nud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.event2Nud.Minimum = new decimal(new int[] {
+            -2147483648,
+            0,
+            0,
+            -2147483648});
+            this.event2Nud.Name = "event2Nud";
+            this.event2Nud.Size = new System.Drawing.Size(70, 20);
+            this.event2Nud.TabIndex = 30;
+            // 
+            // event2ValueComboBox
+            // 
+            this.event2ValueComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.event2ValueComboBox.FormattingEnabled = true;
+            this.event2ValueComboBox.Location = new System.Drawing.Point(3, 27);
+            this.event2ValueComboBox.Name = "event2ValueComboBox";
+            this.event2ValueComboBox.Size = new System.Drawing.Size(166, 21);
+            this.event2ValueComboBox.TabIndex = 33;
+            // 
+            // action1Flp
+            // 
+            this.action1Flp.AutoSize = true;
+            this.action1Flp.Controls.Add(this.action1Nud);
+            this.action1Flp.Controls.Add(this.action1ValueComboBox);
+            this.action1Flp.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.action1Flp.Location = new System.Drawing.Point(219, 192);
+            this.action1Flp.Name = "action1Flp";
+            this.action1Flp.Size = new System.Drawing.Size(172, 51);
+            this.action1Flp.TabIndex = 38;
+            // 
+            // action1Nud
+            // 
+            this.action1Nud.Location = new System.Drawing.Point(2, 2);
+            this.action1Nud.Margin = new System.Windows.Forms.Padding(2);
+            this.action1Nud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.action1Nud.Minimum = new decimal(new int[] {
+            -2147483648,
+            0,
+            0,
+            -2147483648});
+            this.action1Nud.Name = "action1Nud";
+            this.action1Nud.Size = new System.Drawing.Size(70, 20);
+            this.action1Nud.TabIndex = 31;
+            // 
+            // action1ValueComboBox
+            // 
+            this.action1ValueComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.action1ValueComboBox.FormattingEnabled = true;
+            this.action1ValueComboBox.Location = new System.Drawing.Point(3, 27);
+            this.action1ValueComboBox.Name = "action1ValueComboBox";
+            this.action1ValueComboBox.Size = new System.Drawing.Size(166, 21);
+            this.action1ValueComboBox.TabIndex = 33;
+            // 
+            // action2Flp
+            // 
+            this.action2Flp.AutoSize = true;
+            this.action2Flp.Controls.Add(this.action2Nud);
+            this.action2Flp.Controls.Add(this.action2ValueComboBox);
+            this.action2Flp.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.action2Flp.Location = new System.Drawing.Point(219, 249);
+            this.action2Flp.Name = "action2Flp";
+            this.action2Flp.Size = new System.Drawing.Size(172, 51);
+            this.action2Flp.TabIndex = 39;
+            // 
+            // action2Nud
+            // 
+            this.action2Nud.Location = new System.Drawing.Point(2, 2);
+            this.action2Nud.Margin = new System.Windows.Forms.Padding(2);
+            this.action2Nud.Maximum = new decimal(new int[] {
+            2147483647,
+            0,
+            0,
+            0});
+            this.action2Nud.Minimum = new decimal(new int[] {
+            -2147483648,
+            0,
+            0,
+            -2147483648});
+            this.action2Nud.Name = "action2Nud";
+            this.action2Nud.Size = new System.Drawing.Size(70, 20);
+            this.action2Nud.TabIndex = 32;
+            // 
+            // action2ValueComboBox
+            // 
+            this.action2ValueComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.action2ValueComboBox.FormattingEnabled = true;
+            this.action2ValueComboBox.Location = new System.Drawing.Point(3, 27);
+            this.action2ValueComboBox.Name = "action2ValueComboBox";
+            this.action2ValueComboBox.Size = new System.Drawing.Size(166, 21);
+            this.action2ValueComboBox.TabIndex = 33;
+            // 
+            // triggersListView
+            // 
+            this.triggersListView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
+            this.nameColumnHeader});
+            this.triggersListView.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.triggersListView.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None;
+            this.triggersListView.HideSelection = false;
+            this.triggersListView.LabelEdit = true;
+            this.triggersListView.Location = new System.Drawing.Point(2, 2);
+            this.triggersListView.Margin = new System.Windows.Forms.Padding(2);
+            this.triggersListView.MultiSelect = false;
+            this.triggersListView.Name = "triggersListView";
+            this.triggersListView.ShowItemToolTips = true;
+            this.triggersListView.Size = new System.Drawing.Size(135, 455);
+            this.triggersListView.TabIndex = 4;
+            this.triggersListView.UseCompatibleStateImageBehavior = false;
+            this.triggersListView.View = System.Windows.Forms.View.Details;
+            this.triggersListView.AfterLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.teamTypesListView_AfterLabelEdit);
+            this.triggersListView.SelectedIndexChanged += new System.EventHandler(this.triggersListView_SelectedIndexChanged);
+            this.triggersListView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.teamTypesListView_KeyDown);
+            this.triggersListView.MouseDown += new System.Windows.Forms.MouseEventHandler(this.teamTypesListView_MouseDown);
+            // 
+            // triggersContextMenuStrip
+            // 
+            this.triggersContextMenuStrip.ImageScalingSize = new System.Drawing.Size(24, 24);
+            this.triggersContextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.addTriggerToolStripMenuItem,
+            this.removeTriggerToolStripMenuItem});
+            this.triggersContextMenuStrip.Name = "teamTypesContextMenuStrip";
+            this.triggersContextMenuStrip.Size = new System.Drawing.Size(157, 48);
+            // 
+            // addTriggerToolStripMenuItem
+            // 
+            this.addTriggerToolStripMenuItem.Name = "addTriggerToolStripMenuItem";
+            this.addTriggerToolStripMenuItem.Size = new System.Drawing.Size(156, 22);
+            this.addTriggerToolStripMenuItem.Text = "&Add Trigger";
+            this.addTriggerToolStripMenuItem.Click += new System.EventHandler(this.addTriggerToolStripMenuItem_Click);
+            // 
+            // removeTriggerToolStripMenuItem
+            // 
+            this.removeTriggerToolStripMenuItem.Name = "removeTriggerToolStripMenuItem";
+            this.removeTriggerToolStripMenuItem.Size = new System.Drawing.Size(156, 22);
+            this.removeTriggerToolStripMenuItem.Text = "&Remove Trigger";
+            this.removeTriggerToolStripMenuItem.Click += new System.EventHandler(this.removeTriggerToolStripMenuItem_Click);
+            // 
+            // TriggersDialog
+            // 
+            this.AcceptButton = this.btnOK;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.btnCancel;
+            this.ClientSize = new System.Drawing.Size(562, 499);
+            this.ControlBox = false;
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.Margin = new System.Windows.Forms.Padding(2);
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "TriggersDialog";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "Triggers";
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            this.flowLayoutPanel1.ResumeLayout(false);
+            this.flowLayoutPanel1.PerformLayout();
+            this.settingsPanel.ResumeLayout(false);
+            this.settingsPanel.PerformLayout();
+            this.triggersTableLayoutPanel.ResumeLayout(false);
+            this.triggersTableLayoutPanel.PerformLayout();
+            this.event1Flp.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.event1Nud)).EndInit();
+            this.event2Flp.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.event2Nud)).EndInit();
+            this.action1Flp.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.action1Nud)).EndInit();
+            this.action2Flp.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.action2Nud)).EndInit();
+            this.triggersContextMenuStrip.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnOK;
+        private System.Windows.Forms.Panel settingsPanel;
+        private System.Windows.Forms.ListView triggersListView;
+        private System.Windows.Forms.ColumnHeader nameColumnHeader;
+        private System.Windows.Forms.ContextMenuStrip triggersContextMenuStrip;
+        private System.Windows.Forms.ToolStripMenuItem addTriggerToolStripMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem removeTriggerToolStripMenuItem;
+        private System.Windows.Forms.TableLayoutPanel triggersTableLayoutPanel;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.ComboBox houseComboBox;
+        private System.Windows.Forms.Label typeLabel;
+        private System.Windows.Forms.Label event1Label;
+        private System.Windows.Forms.Label event2Label;
+        private System.Windows.Forms.Label action2Label;
+        private System.Windows.Forms.ComboBox action2ComboBox;
+        private System.Windows.Forms.Label existenceLabel;
+        private System.Windows.Forms.ComboBox existenceComboBox;
+        private System.Windows.Forms.ComboBox typeComboBox;
+        private System.Windows.Forms.ComboBox event1ComboBox;
+        private System.Windows.Forms.ComboBox event2ComboBox;
+        private System.Windows.Forms.ComboBox action1ComboBox;
+        private System.Windows.Forms.Label action1Label;
+        private System.Windows.Forms.Label teamLabel;
+        private System.Windows.Forms.ComboBox teamComboBox;
+        private System.Windows.Forms.FlowLayoutPanel event1Flp;
+        private System.Windows.Forms.NumericUpDown event1Nud;
+        private System.Windows.Forms.FlowLayoutPanel event2Flp;
+        private System.Windows.Forms.NumericUpDown event2Nud;
+        private System.Windows.Forms.FlowLayoutPanel action1Flp;
+        private System.Windows.Forms.NumericUpDown action1Nud;
+        private System.Windows.Forms.FlowLayoutPanel action2Flp;
+        private System.Windows.Forms.NumericUpDown action2Nud;
+        private System.Windows.Forms.ComboBox event1ValueComboBox;
+        private System.Windows.Forms.ComboBox event2ValueComboBox;
+        private System.Windows.Forms.ComboBox action1ValueComboBox;
+        private System.Windows.Forms.ComboBox action2ValueComboBox;
+    }
+}

+ 510 - 0
CnCTDRAMapEditor/Dialogs/TriggersDialog.cs

@@ -0,0 +1,510 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Model;
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Windows.Forms;
+
+namespace MobiusEditor.Dialogs
+{
+    public partial class TriggersDialog : Form
+    {
+        private readonly IGamePlugin plugin;
+        private readonly int maxTriggers;
+
+        private readonly List<Trigger> triggers;
+        public IEnumerable<Trigger> Triggers => triggers;
+
+        private ListViewItem SelectedItem => (triggersListView.SelectedItems.Count > 0) ? triggersListView.SelectedItems[0] : null;
+
+        private Trigger SelectedTrigger => SelectedItem?.Tag as Trigger;
+
+        public TriggersDialog(IGamePlugin plugin, int maxTriggers)
+        {
+            this.plugin = plugin;
+            this.maxTriggers = maxTriggers;
+
+            InitializeComponent();
+
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    existenceLabel.Text = "Loop";
+                    event1Label.Text = "Event";
+                    action1Label.Text = "Action";
+                    typeLabel.Visible = typeComboBox.Visible = false;
+                    event2Label.Visible = event2ComboBox.Visible = event2Flp.Visible = false;
+                    action2Label.Visible = action2ComboBox.Visible = action2Flp.Visible = false;
+                    break;
+                case GameType.RedAlert:
+                    teamLabel.Visible = teamComboBox.Visible = false;
+                    break;
+            }
+
+            triggers = new List<Trigger>(plugin.Map.Triggers.Select(t => t.Clone()));
+
+            triggersListView.BeginUpdate();
+            {
+                foreach (var trigger in triggers)
+                {
+                    var item = new ListViewItem(trigger.Name)
+                    {
+                        Tag = trigger
+                    };
+                    triggersListView.Items.Add(item).ToolTipText = trigger.Name;
+                }
+            }
+            triggersListView.EndUpdate();
+
+            string[] existenceNames = Enum.GetNames(typeof(TriggerPersistantType));
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    existenceNames = new string[] { "No", "And", "Or" };
+                    break;
+                case GameType.RedAlert:
+                    existenceNames = new string[] { "Temporary", "Semi-Constant", "Constant" };
+                    break;
+            }
+
+            string[] typeNames = new string[]
+            {
+                "E => A1 [+ A2]",
+                "E1 && E2 => A1 [+ A2]",
+                "E1 || E2 => A1 [+ A2]",
+                "E1 => A1; E2 => A2",
+            };
+
+            houseComboBox.DataSource = "None".Yield().Concat(plugin.Map.Houses.Select(t => t.Type.Name)).ToArray();
+            existenceComboBox.DataSource = Enum.GetValues(typeof(TriggerPersistantType)).Cast<int>()
+                .Select(v => new { Name = existenceNames[v], Value = (TriggerPersistantType)v })
+                .ToArray();
+            typeComboBox.DataSource = Enum.GetValues(typeof(TriggerMultiStyleType)).Cast<int>()
+                .Select(v => new { Name = typeNames[v], Value = (TriggerMultiStyleType)v })
+                .ToArray();
+            event1ComboBox.DataSource = plugin.Map.EventTypes.Where(t => !string.IsNullOrEmpty(t)).ToArray();
+            event2ComboBox.DataSource = plugin.Map.EventTypes.Where(t => !string.IsNullOrEmpty(t)).ToArray();
+            action1ComboBox.DataSource = plugin.Map.ActionTypes.Where(t => !string.IsNullOrEmpty(t)).ToArray();
+            action2ComboBox.DataSource = plugin.Map.ActionTypes.Where(t => !string.IsNullOrEmpty(t)).ToArray();
+            teamComboBox.DataSource = "None".Yield().Concat(plugin.Map.TeamTypes.Select(t => t.Name)).ToArray();
+
+            triggersTableLayoutPanel.Visible = false;
+        }
+
+        private void triggersListView_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            houseComboBox.DataBindings.Clear();
+            existenceComboBox.DataBindings.Clear();
+            typeComboBox.DataBindings.Clear();
+            event1ComboBox.DataBindings.Clear();
+            event2ComboBox.DataBindings.Clear();
+            action1ComboBox.DataBindings.Clear();
+            action2ComboBox.DataBindings.Clear();
+            teamComboBox.DataBindings.Clear();
+
+            if (SelectedTrigger != null)
+            {
+                houseComboBox.DataBindings.Add("SelectedItem", SelectedTrigger, "House");
+                existenceComboBox.DataBindings.Add("SelectedValue", SelectedTrigger, "PersistantType");
+                event1ComboBox.DataBindings.Add("SelectedItem", SelectedTrigger.Event1, "EventType");
+                action1ComboBox.DataBindings.Add("SelectedItem", SelectedTrigger.Action1, "ActionType");
+
+                UpdateTriggerControls(SelectedTrigger,
+                    SelectedTrigger?.Event1, SelectedTrigger?.Action1,
+                    event1ComboBox, event1Nud, event1ValueComboBox,
+                    action1ComboBox, action1Nud, action1ValueComboBox);
+
+                switch (plugin.GameType)
+                {
+                    case GameType.TiberianDawn:
+                        teamComboBox.DataBindings.Add("SelectedItem", SelectedTrigger.Action1, "Team");
+                        break;
+                    case GameType.RedAlert:
+                        typeComboBox.DataBindings.Add("SelectedValue", SelectedTrigger, "EventControl");
+                        event2ComboBox.DataBindings.Add("SelectedItem", SelectedTrigger.Event2, "EventType");
+                        action2ComboBox.DataBindings.Add("SelectedItem", SelectedTrigger.Action2, "ActionType");
+                        UpdateTriggerControls(SelectedTrigger,
+                            SelectedTrigger?.Event2, SelectedTrigger?.Action2,
+                            event2ComboBox, event2Nud, event2ValueComboBox,
+                            action2ComboBox, action2Nud, action2ValueComboBox);
+                        break;
+                }
+
+                triggersTableLayoutPanel.Visible = true;
+            }
+            else
+            {
+                triggersTableLayoutPanel.Visible = false;
+            }
+        }
+
+        private void teamTypesListView_MouseDown(object sender, MouseEventArgs e)
+        {
+            if (e.Button == MouseButtons.Right)
+            {
+                var hitTest = triggersListView.HitTest(e.Location);
+
+                bool canAdd = (hitTest.Item == null) && (triggersListView.Items.Count < maxTriggers);
+                bool canRemove = hitTest.Item != null;
+                addTriggerToolStripMenuItem.Visible = canAdd;
+                removeTriggerToolStripMenuItem.Visible = canRemove;
+
+                if (canAdd || canRemove)
+                {
+                    triggersContextMenuStrip.Show(Cursor.Position);
+                }
+            }
+        }
+
+        private void teamTypesListView_KeyDown(object sender, KeyEventArgs e)
+        {
+            if ((e.KeyData == Keys.F2) && (triggersListView.SelectedItems.Count > 0))
+            {
+                triggersListView.SelectedItems[0].BeginEdit();
+            }
+        }
+
+        private void addTriggerToolStripMenuItem_Click(object sender, EventArgs e)
+        {
+            var nameChars = Enumerable.Range(97, 26).Concat(Enumerable.Range(48, 10));
+
+            string name = string.Empty;
+            foreach (var nameChar in nameChars)
+            {
+                name = new string((char)nameChar, 4);
+                if (!triggers.Where(t => t.Equals(name)).Any())
+                {
+                    break;
+                }
+            }
+
+            var trigger = new Trigger { Name = name, House = plugin.Map.HouseTypes.First().Name };
+            var item = new ListViewItem(trigger.Name)
+            {
+                Tag = trigger
+            };
+            triggers.Add(trigger);
+            triggersListView.Items.Add(item).ToolTipText = trigger.Name;
+
+            item.Selected = true;
+            item.BeginEdit();
+        }
+
+        private void removeTriggerToolStripMenuItem_Click(object sender, EventArgs e)
+        {
+            if (SelectedItem != null)
+            {
+                triggers.Remove(SelectedTrigger);
+                triggersListView.Items.Remove(SelectedItem);
+            }
+        }
+
+        private void teamTypesListView_AfterLabelEdit(object sender, LabelEditEventArgs e)
+        {
+            int maxLength = int.MaxValue;
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    maxLength = 4;
+                    break;
+                case GameType.RedAlert:
+                    maxLength = 23;
+                    break;
+            }
+
+            if (string.IsNullOrEmpty(e.Label))
+            {
+                e.CancelEdit = true;
+            }
+            else if (e.Label.Length > maxLength)
+            {
+                e.CancelEdit = true;
+                MessageBox.Show(string.Format("Trigger name is longer than {0} characters.", maxLength), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+            else if (triggers.Where(t => (t != SelectedTrigger) && t.Equals(e.Label)).Any())
+            {
+                e.CancelEdit = true;
+                MessageBox.Show(string.Format("Trigger with name '{0]' already exists", e.Label), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+            else
+            {
+                SelectedTrigger.Name = e.Label;
+                triggersListView.Items[e.Item].ToolTipText = SelectedTrigger.Name;
+            }
+        }
+
+        private void typeComboBox_SelectedValueChanged(object sender, EventArgs e)
+        {
+            if (plugin.GameType == GameType.RedAlert)
+            {
+                var eventType = (TriggerMultiStyleType)typeComboBox.SelectedValue;
+                event2Label.Visible = event2ComboBox.Visible = event2Flp.Visible = eventType != TriggerMultiStyleType.Only;
+            }
+        }
+
+        private void trigger1ComboBox_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            UpdateTriggerControls(SelectedTrigger,
+                SelectedTrigger?.Event1, SelectedTrigger?.Action1,
+                event1ComboBox, event1Nud, event1ValueComboBox,
+                action1ComboBox, action1Nud, action1ValueComboBox);
+        }
+
+        private void trigger2ComboBox_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            UpdateTriggerControls(SelectedTrigger,
+                SelectedTrigger?.Event2, SelectedTrigger?.Action2,
+                event2ComboBox, event2Nud, event2ValueComboBox,
+                action2ComboBox, action2Nud, action2ValueComboBox);
+        }
+
+        private void UpdateTriggerControls(Trigger trigger, TriggerEvent triggerEvent, TriggerAction triggerAction, ComboBox eventComboBox, NumericUpDown eventNud, ComboBox eventValueComboBox, ComboBox actionComboBox, NumericUpDown actionNud, ComboBox actionValueComboBox)
+        {
+            eventNud.Visible = false;
+            eventNud.DataBindings.Clear();
+            eventValueComboBox.Visible = false;
+            eventValueComboBox.DataBindings.Clear();
+            eventValueComboBox.DataSource = null;
+            eventValueComboBox.DisplayMember = null;
+            eventValueComboBox.ValueMember = null;
+
+            if (triggerEvent != null)
+            {
+                switch (plugin.GameType)
+                {
+                    case GameType.TiberianDawn:
+                        switch (eventComboBox.SelectedItem)
+                        {
+                            case TiberianDawn.EventTypes.EVENT_TIME:
+                            case TiberianDawn.EventTypes.EVENT_CREDITS:
+                            case TiberianDawn.EventTypes.EVENT_NUNITS_DESTROYED:
+                            case TiberianDawn.EventTypes.EVENT_NBUILDINGS_DESTROYED:
+                                eventNud.Visible = true;
+                                eventNud.DataBindings.Add("Value", triggerEvent, "Data");
+                                break;
+                            case TiberianDawn.EventTypes.EVENT_BUILD:
+                                eventValueComboBox.Visible = true;
+                                eventValueComboBox.DisplayMember = "Name";
+                                eventValueComboBox.ValueMember = "Value";
+                                eventValueComboBox.DataSource = plugin.Map.BuildingTypes.Select(t => new { Name = t.DisplayName, Value = (long)t.ID }).ToArray();
+                                eventValueComboBox.DataBindings.Add("SelectedValue", triggerEvent, "Data");
+                                break;
+                            default:
+                                break;
+                        }
+                        break;
+                    case GameType.RedAlert:
+                        switch (eventComboBox.SelectedItem)
+                        {
+                            case RedAlert.EventTypes.TEVENT_LEAVES_MAP:
+                                eventValueComboBox.Visible = true;
+                                eventValueComboBox.DataSource = plugin.Map.TeamTypes.Select(t => t.Name).ToArray();
+                                eventValueComboBox.DataBindings.Add("SelectedItem", triggerEvent, "Team");
+                                break;
+                            case RedAlert.EventTypes.TEVENT_PLAYER_ENTERED:
+                            case RedAlert.EventTypes.TEVENT_CROSS_HORIZONTAL:
+                            case RedAlert.EventTypes.TEVENT_CROSS_VERTICAL:
+                            case RedAlert.EventTypes.TEVENT_ENTERS_ZONE:
+                            case RedAlert.EventTypes.TEVENT_LOW_POWER:
+                            case RedAlert.EventTypes.TEVENT_THIEVED:
+                            case RedAlert.EventTypes.TEVENT_HOUSE_DISCOVERED:
+                            case RedAlert.EventTypes.TEVENT_BUILDINGS_DESTROYED:
+                            case RedAlert.EventTypes.TEVENT_UNITS_DESTROYED:
+                            case RedAlert.EventTypes.TEVENT_ALL_DESTROYED:
+                                eventValueComboBox.Visible = true;
+                                eventValueComboBox.DisplayMember = "Name";
+                                eventValueComboBox.ValueMember = "Value";
+                                eventValueComboBox.DataSource = new { Name = "None", Value = (long)-1 }.Yield().Concat(plugin.Map.Houses.Select(t => new { t.Type.Name, Value = (long)t.Type.ID })).ToArray();
+                                eventValueComboBox.DataBindings.Add("SelectedValue", triggerEvent, "Data");
+                                break;
+                            case RedAlert.EventTypes.TEVENT_BUILDING_EXISTS:
+                            case RedAlert.EventTypes.TEVENT_BUILD:
+                                eventValueComboBox.Visible = true;
+                                eventValueComboBox.DisplayMember = "Name";
+                                eventValueComboBox.ValueMember = "Value";
+                                eventValueComboBox.DataSource = plugin.Map.BuildingTypes.Select(t => new { Name = t.DisplayName, Value = (long)t.ID }).ToArray();
+                                eventValueComboBox.DataBindings.Add("SelectedValue", triggerEvent, "Data");
+                                break;
+                            case RedAlert.EventTypes.TEVENT_BUILD_UNIT:
+                                eventValueComboBox.Visible = true;
+                                eventValueComboBox.DisplayMember = "Name";
+                                eventValueComboBox.ValueMember = "Value";
+                                eventValueComboBox.DataSource = plugin.Map.UnitTypes.Where(t => t.IsUnit).Select(t => new { Name = t.DisplayName, Value = (long)t.ID }).ToArray();
+                                eventValueComboBox.DataBindings.Add("SelectedValue", triggerEvent, "Data");
+                                break;
+                            case RedAlert.EventTypes.TEVENT_BUILD_INFANTRY:
+                                eventValueComboBox.Visible = true;
+                                eventValueComboBox.DisplayMember = "Name";
+                                eventValueComboBox.ValueMember = "Value";
+                                eventValueComboBox.DataSource = plugin.Map.InfantryTypes.Select(t => new { Name = t.DisplayName, Value = (long)t.ID }).ToArray();
+                                eventValueComboBox.DataBindings.Add("SelectedValue", triggerEvent, "Data");
+                                break;
+                            case RedAlert.EventTypes.TEVENT_BUILD_AIRCRAFT:
+                                eventValueComboBox.Visible = true;
+                                eventValueComboBox.DisplayMember = "Name";
+                                eventValueComboBox.ValueMember = "Value";
+                                eventValueComboBox.DataSource = plugin.Map.UnitTypes.Where(t => t.IsAircraft).Select(t => new { Name = t.DisplayName, Value = (long)t.ID }).ToArray();
+                                eventValueComboBox.DataBindings.Add("SelectedValue", triggerEvent, "Data");
+                                break;
+                            case RedAlert.EventTypes.TEVENT_NUNITS_DESTROYED:
+                            case RedAlert.EventTypes.TEVENT_NBUILDINGS_DESTROYED:
+                            case RedAlert.EventTypes.TEVENT_CREDITS:
+                            case RedAlert.EventTypes.TEVENT_TIME:
+                            case RedAlert.EventTypes.TEVENT_GLOBAL_SET:
+                            case RedAlert.EventTypes.TEVENT_GLOBAL_CLEAR:
+                                eventNud.Visible = true;
+                                eventNud.DataBindings.Add("Value", triggerEvent, "Data");
+                                break;
+                            default:
+                                break;
+                        }
+                        break;
+                }
+            }
+
+            actionNud.Visible = false;
+            actionNud.DataBindings.Clear();
+            actionNud.Minimum = long.MinValue;
+            actionNud.Maximum = long.MaxValue;
+            actionValueComboBox.Visible = false;
+            actionValueComboBox.DataBindings.Clear();
+            actionValueComboBox.DataSource = null;
+            actionValueComboBox.DisplayMember = null;
+            actionValueComboBox.ValueMember = null;
+
+            if (triggerAction != null)
+            {
+                switch (plugin.GameType)
+                {
+                    case GameType.RedAlert:
+                        switch (actionComboBox.SelectedItem)
+                        {
+                            case RedAlert.ActionTypes.TACTION_CREATE_TEAM:
+                            case RedAlert.ActionTypes.TACTION_DESTROY_TEAM:
+                            case RedAlert.ActionTypes.TACTION_REINFORCEMENTS:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DataSource = plugin.Map.TeamTypes.Select(t => t.Name).ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedItem", triggerAction, "Team");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_WIN:
+                            case RedAlert.ActionTypes.TACTION_LOSE:
+                            case RedAlert.ActionTypes.TACTION_BEGIN_PRODUCTION:
+                            case RedAlert.ActionTypes.TACTION_FIRE_SALE:
+                            case RedAlert.ActionTypes.TACTION_AUTOCREATE:
+                            case RedAlert.ActionTypes.TACTION_ALL_HUNT:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DisplayMember = "Name";
+                                actionValueComboBox.ValueMember = "Value";
+                                actionValueComboBox.DataSource = new { Name = "None", Value = (long)-1 }.Yield().Concat(plugin.Map.Houses.Select(t => new { t.Type.Name, Value = (long)t.Type.ID })).ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedValue", triggerAction, "Data");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_FORCE_TRIGGER:
+                            case RedAlert.ActionTypes.TACTION_DESTROY_TRIGGER:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DataSource = plugin.Map.Triggers.Select(t => t.Name).ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedItem", triggerAction, "Trigger");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_DZ:
+                            case RedAlert.ActionTypes.TACTION_REVEAL_SOME:
+                            case RedAlert.ActionTypes.TACTION_REVEAL_ZONE:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DisplayMember = "Name";
+                                actionValueComboBox.ValueMember = "Value";
+                                actionValueComboBox.DataSource = new { Name = "None", Value = (long)-1 }.Yield().Concat(plugin.Map.Waypoints.Select((t, i) => new { t.Name, Value = (long)i })).ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedValue", triggerAction, "Data");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_1_SPECIAL:
+                            case RedAlert.ActionTypes.TACTION_FULL_SPECIAL:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DisplayMember = "Name";
+                                actionValueComboBox.ValueMember = "Value";
+                                actionValueComboBox.DataSource = Enum.GetValues(typeof(RedAlert.ActionDataTypes.SpecialWeaponType)).Cast<int>()
+                                    .Select(v => new { Name = Enum.GetName(typeof(RedAlert.ActionDataTypes.SpecialWeaponType), v), Value = (long)v })
+                                    .ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedValue", triggerAction, "Data");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_PLAY_MUSIC:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DisplayMember = "Name";
+                                actionValueComboBox.ValueMember = "Value";
+                                actionValueComboBox.DataSource = Enum.GetValues(typeof(RedAlert.ActionDataTypes.ThemeType)).Cast<int>()
+                                    .Select(v => new { Name = Enum.GetName(typeof(RedAlert.ActionDataTypes.ThemeType), v), Value = (long)v })
+                                    .ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedValue", triggerAction, "Data");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_PLAY_MOVIE:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DisplayMember = "Name";
+                                actionValueComboBox.ValueMember = "Value";
+                                actionValueComboBox.DataSource = Enum.GetValues(typeof(RedAlert.ActionDataTypes.VQType)).Cast<int>()
+                                    .Select(v => new { Name = Enum.GetName(typeof(RedAlert.ActionDataTypes.VQType), v), Value = (long)v })
+                                    .ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedValue", triggerAction, "Data");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_PLAY_SOUND:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DisplayMember = "Name";
+                                actionValueComboBox.ValueMember = "Value";
+                                actionValueComboBox.DataSource = Enum.GetValues(typeof(RedAlert.ActionDataTypes.VocType)).Cast<int>()
+                                    .Select(v => new { Name = Enum.GetName(typeof(RedAlert.ActionDataTypes.VocType), v), Value = (long)v })
+                                    .ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedValue", triggerAction, "Data");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_PLAY_SPEECH:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DisplayMember = "Name";
+                                actionValueComboBox.ValueMember = "Value";
+                                actionValueComboBox.DataSource = Enum.GetValues(typeof(RedAlert.ActionDataTypes.VoxType)).Cast<int>()
+                                    .Select(v => new { Name = Enum.GetName(typeof(RedAlert.ActionDataTypes.VoxType), v), Value = (long)v })
+                                    .ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedValue", triggerAction, "Data");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_PREFERRED_TARGET:
+                                actionValueComboBox.Visible = true;
+                                actionValueComboBox.DisplayMember = "Name";
+                                actionValueComboBox.ValueMember = "Value";
+                                actionValueComboBox.DataSource = Enum.GetValues(typeof(RedAlert.ActionDataTypes.QuarryType)).Cast<int>()
+                                    .Select(v => new { Name = Enum.GetName(typeof(RedAlert.ActionDataTypes.QuarryType), v), Value = (long)v })
+                                    .ToArray();
+                                actionValueComboBox.DataBindings.Add("SelectedValue", triggerAction, "Data");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_TEXT_TRIGGER:
+                                actionNud.Visible = true;
+                                actionNud.Minimum = 1;
+                                actionNud.Maximum = 209;
+                                actionNud.DataBindings.Add("Value", triggerAction, "Data");
+                                break;
+                            case RedAlert.ActionTypes.TACTION_ADD_TIMER:
+                            case RedAlert.ActionTypes.TACTION_SUB_TIMER:
+                            case RedAlert.ActionTypes.TACTION_SET_TIMER:
+                            case RedAlert.ActionTypes.TACTION_SET_GLOBAL:
+                            case RedAlert.ActionTypes.TACTION_CLEAR_GLOBAL:
+                            case RedAlert.ActionTypes.TACTION_BASE_BUILDING:
+                                actionNud.Visible = true;
+                                actionNud.DataBindings.Add("Value", triggerAction, "Data");
+                                break;
+                            default:
+                                break;
+                        }
+                        break;
+                }
+            }
+        }
+    }
+}

+ 123 - 0
CnCTDRAMapEditor/Dialogs/TriggersDialog.resx

@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="triggersContextMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+</root>

+ 33 - 0
CnCTDRAMapEditor/Event/RenderEventArgs.cs

@@ -0,0 +1,33 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+
+namespace MobiusEditor.Event
+{
+    public class RenderEventArgs : EventArgs
+    {
+        public Graphics Graphics { get; private set; }
+
+        public ISet<Point> Cells { get; private set; }
+
+        public RenderEventArgs(Graphics graphics, ISet<Point> cells)
+        {
+            Graphics = graphics;
+            Cells = cells;
+        }
+    }
+}

+ 32 - 0
CnCTDRAMapEditor/Event/UndoRedoEventArgs.cs

@@ -0,0 +1,32 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Controls;
+using MobiusEditor.Model;
+
+namespace MobiusEditor.Event
+{
+    public class UndoRedoEventArgs
+    {
+        public MapPanel MapPanel { get; private set; }
+
+        public Map Map { get; private set; }
+
+        public UndoRedoEventArgs(MapPanel mapPanel, Map map)
+        {
+            MapPanel = mapPanel;
+            Map = map;
+        }
+    }
+}

+ 72 - 0
CnCTDRAMapEditor/Globals.cs

@@ -0,0 +1,72 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Utility;
+using System;
+using System.Drawing;
+using System.IO;
+
+namespace MobiusEditor
+{
+    public static class Globals
+    {
+        static Globals()
+        {
+            TileScale = Properties.Settings.Default.Quality;
+        }
+
+        public const string TilesetsXMLPath = @"DATA\XML\TILESETS.XML";
+        public const string TexturesPath = @"DATA\ART\TEXTURES\SRGB";
+        public const string MegafilePath = @"DATA";
+        public const string GameTextFilenameFormat = @"DATA\TEXT\MASTERTEXTFILE_{0}.LOC";
+
+        public const int OriginalTileWidth = 128;
+        public const int OriginalTileHeight = 128;
+        public static readonly Size OriginalTileSize = new Size(OriginalTileWidth, OriginalTileHeight);
+
+        public static int TileScale { get; set; }
+        public static int TileWidth => OriginalTileWidth / TileScale;
+        public static int TileHeight => OriginalTileHeight / TileScale;
+        public static Size TileSize => new Size(TileWidth, TileHeight);
+
+        public const int PixelWidth = 24;
+        public const int PixelHeight = 24;
+
+        public static readonly Size MapPreviewSize = new Size(512, 512);
+        public static readonly Size WorkshopPreviewSize = new Size(512, 512);
+
+        public static readonly string[] Edges = new string[] { "North", "South", "West", "East" };
+        public const int NumInfantryStops = 5;
+
+        public const int MaxTeamClasses = 5;
+        public const int MaxTeamMissions = 20;
+
+        public const long MaxMapSize = 131072;
+
+        public static MegafileManager TheMegafileManager;
+        public static TextureManager TheTextureManager;
+        public static TilesetManager TheTilesetManager;
+        public static TeamColorManager TheTeamColorManager;
+        public static GameTextManager TheGameTextManager;
+
+        public static readonly string RootSaveDirectory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), @"CnCRemastered\Local_Custom_Maps");
+
+#if DEVELOPER
+        public static class Developer
+        {
+            public static bool ShowOverlapCells = false;
+        }
+#endif
+    }
+}

+ 25 - 0
CnCTDRAMapEditor/Interface/IBrowsableType.cs

@@ -0,0 +1,25 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System.Drawing;
+
+namespace MobiusEditor.Interface
+{
+    public interface IBrowsableType
+    {
+        string DisplayName { get; }
+
+        Image Thumbnail { get; }
+    }
+}

+ 21 - 0
CnCTDRAMapEditor/Interface/ICellOccupier.cs

@@ -0,0 +1,21 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Interface
+{
+    public interface ICellOccupier
+    {
+        bool[,] OccupyMask { get; }
+    }
+}

+ 23 - 0
CnCTDRAMapEditor/Interface/ICellOverlapper.cs

@@ -0,0 +1,23 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System.Drawing;
+
+namespace MobiusEditor.Interface
+{
+    public interface ICellOverlapper
+    {
+        Rectangle OverlapBounds { get; }
+    }
+}

+ 56 - 0
CnCTDRAMapEditor/Interface/IGamePlugin.cs

@@ -0,0 +1,56 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Model;
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.IO;
+
+namespace MobiusEditor.Interface
+{
+    public enum FileType
+    {
+        None,
+        INI,
+        BIN,
+        MEG,
+        PGM
+    }
+
+    public enum GameType
+    {
+        None,
+        TiberianDawn,
+        RedAlert
+    }
+
+    public interface IGamePlugin : IDisposable
+    {
+        GameType GameType { get; }
+
+        Map Map { get; }
+
+        Image MapImage { get; }
+
+        bool Dirty { get; set; }
+
+        void New(string theater);
+
+        IEnumerable<string> Load(string path, FileType fileType);
+
+        bool Save(string path, FileType fileType);
+    }
+}

+ 21 - 0
CnCTDRAMapEditor/Interface/INamedType.cs

@@ -0,0 +1,21 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Interface
+{
+    public interface INamedType
+    {
+        string Name { get; }
+    }
+}

+ 23 - 0
CnCTDRAMapEditor/Interface/ITechnoType.cs

@@ -0,0 +1,23 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Interface
+{
+    public interface ITechnoType
+    {
+        sbyte ID { get; }
+
+        string Name { get; }
+    }
+}

+ 29 - 0
CnCTDRAMapEditor/Interface/ITool.cs

@@ -0,0 +1,29 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Model;
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace MobiusEditor.Interface
+{
+    public interface ITool : IDisposable
+    {
+        MapLayerFlag Layers { get; set; }
+    }
+}

+ 28 - 0
CnCTDRAMapEditor/Interface/IWidget.cs

@@ -0,0 +1,28 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace MobiusEditor.Interface
+{
+    public interface IWidget : IDisposable
+    {
+        void Render(Graphics graphics);
+    }
+}

+ 714 - 0
CnCTDRAMapEditor/License.txt

@@ -0,0 +1,714 @@
+Electronic Arts Inc. released only TiberianDawn.dll, RedAlert.dll and 
+the Command & Conquer Map Editor and their corresponding source code 
+under the GPL V3 below, with additional terms at the bottom.
+
+                    GNU GENERAL PUBLIC LICENSE
+                       Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+  The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works.  By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.  We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors.  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+  To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights.  Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received.  You must make sure that they, too, receive
+or can get the source code.  And you must show them these terms so they
+know their rights.
+
+  Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+  For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software.  For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+  Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so.  This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software.  The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable.  Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products.  If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+  Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary.  To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                       TERMS AND CONDITIONS
+
+  0. Definitions.
+
+  "This License" refers to version 3 of the GNU General Public License.
+
+  "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+  "The Program" refers to any copyrightable work licensed under this
+License.  Each licensee is addressed as "you".  "Licensees" and
+"recipients" may be individuals or organizations.
+
+  To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy.  The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+  A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+  To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy.  Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+  To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies.  Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+  An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License.  If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+  1. Source Code.
+
+  The "source code" for a work means the preferred form of the work
+for making modifications to it.  "Object code" means any non-source
+form of a work.
+
+  A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+  The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form.  A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+  The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities.  However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work.  For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+  The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+  The Corresponding Source for a work in source code form is that
+same work.
+
+  2. Basic Permissions.
+
+  All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met.  This License explicitly affirms your unlimited
+permission to run the unmodified Program.  The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work.  This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+  You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force.  You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright.  Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+  Conveying under any other circumstances is permitted solely under
+the conditions stated below.  Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+  No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+  When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+  4. Conveying Verbatim Copies.
+
+  You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+  You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+  5. Conveying Modified Source Versions.
+
+  You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+    a) The work must carry prominent notices stating that you modified
+    it, and giving a relevant date.
+
+    b) The work must carry prominent notices stating that it is
+    released under this License and any conditions added under section
+    7.  This requirement modifies the requirement in section 4 to
+    "keep intact all notices".
+
+    c) You must license the entire work, as a whole, under this
+    License to anyone who comes into possession of a copy.  This
+    License will therefore apply, along with any applicable section 7
+    additional terms, to the whole of the work, and all its parts,
+    regardless of how they are packaged.  This License gives no
+    permission to license the work in any other way, but it does not
+    invalidate such permission if you have separately received it.
+
+    d) If the work has interactive user interfaces, each must display
+    Appropriate Legal Notices; however, if the Program has interactive
+    interfaces that do not display Appropriate Legal Notices, your
+    work need not make them do so.
+
+  A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit.  Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+  6. Conveying Non-Source Forms.
+
+  You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+    a) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by the
+    Corresponding Source fixed on a durable physical medium
+    customarily used for software interchange.
+
+    b) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by a
+    written offer, valid for at least three years and valid for as
+    long as you offer spare parts or customer support for that product
+    model, to give anyone who possesses the object code either (1) a
+    copy of the Corresponding Source for all the software in the
+    product that is covered by this License, on a durable physical
+    medium customarily used for software interchange, for a price no
+    more than your reasonable cost of physically performing this
+    conveying of source, or (2) access to copy the
+    Corresponding Source from a network server at no charge.
+
+    c) Convey individual copies of the object code with a copy of the
+    written offer to provide the Corresponding Source.  This
+    alternative is allowed only occasionally and noncommercially, and
+    only if you received the object code with such an offer, in accord
+    with subsection 6b.
+
+    d) Convey the object code by offering access from a designated
+    place (gratis or for a charge), and offer equivalent access to the
+    Corresponding Source in the same way through the same place at no
+    further charge.  You need not require recipients to copy the
+    Corresponding Source along with the object code.  If the place to
+    copy the object code is a network server, the Corresponding Source
+    may be on a different server (operated by you or a third party)
+    that supports equivalent copying facilities, provided you maintain
+    clear directions next to the object code saying where to find the
+    Corresponding Source.  Regardless of what server hosts the
+    Corresponding Source, you remain obligated to ensure that it is
+    available for as long as needed to satisfy these requirements.
+
+    e) Convey the object code using peer-to-peer transmission, provided
+    you inform other peers where the object code and Corresponding
+    Source of the work are being offered to the general public at no
+    charge under subsection 6d.
+
+  A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+  A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling.  In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage.  For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product.  A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+  "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source.  The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+  If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information.  But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+  The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed.  Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+  Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+  7. Additional Terms.
+
+  "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law.  If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+  When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it.  (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.)  You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+  Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+    a) Disclaiming warranty or limiting liability differently from the
+    terms of sections 15 and 16 of this License; or
+
+    b) Requiring preservation of specified reasonable legal notices or
+    author attributions in that material or in the Appropriate Legal
+    Notices displayed by works containing it; or
+
+    c) Prohibiting misrepresentation of the origin of that material, or
+    requiring that modified versions of such material be marked in
+    reasonable ways as different from the original version; or
+
+    d) Limiting the use for publicity purposes of names of licensors or
+    authors of the material; or
+
+    e) Declining to grant rights under trademark law for use of some
+    trade names, trademarks, or service marks; or
+
+    f) Requiring indemnification of licensors and authors of that
+    material by anyone who conveys the material (or modified versions of
+    it) with contractual assumptions of liability to the recipient, for
+    any liability that these contractual assumptions directly impose on
+    those licensors and authors.
+
+  All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10.  If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term.  If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+  If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+  Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+  8. Termination.
+
+  You may not propagate or modify a covered work except as expressly
+provided under this License.  Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+  However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+  Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+  Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License.  If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+  9. Acceptance Not Required for Having Copies.
+
+  You are not required to accept this License in order to receive or
+run a copy of the Program.  Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance.  However,
+nothing other than this License grants you permission to propagate or
+modify any covered work.  These actions infringe copyright if you do
+not accept this License.  Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+  10. Automatic Licensing of Downstream Recipients.
+
+  Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License.  You are not responsible
+for enforcing compliance by third parties with this License.
+
+  An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations.  If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+  You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License.  For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+  11. Patents.
+
+  A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based.  The
+work thus licensed is called the contributor's "contributor version".
+
+  A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version.  For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+  Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+  In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement).  To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+  If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients.  "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+  If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+  A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License.  You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+  Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+  12. No Surrender of Others' Freedom.
+
+  If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all.  For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+  13. Use with the GNU Affero General Public License.
+
+  Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work.  The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+  14. Revised Versions of this License.
+
+  The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+  Each version is given a distinguishing version number.  If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation.  If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+  If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+  Later license versions may give you additional or different
+permissions.  However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+  15. Disclaimer of Warranty.
+
+  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. Limitation of Liability.
+
+  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+  17. Interpretation of Sections 15 and 16.
+
+  If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+                     END OF TERMS AND CONDITIONS
+
+            How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+  If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+    <program>  Copyright (C) <year>  <name of author>
+    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+  You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+<http://www.gnu.org/licenses/>.
+
+  The GNU General Public License does not permit incorporating your program
+into proprietary programs.  If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library.  If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.  But first, please read
+<http://www.gnu.org/philosophy/why-not-lgpl.html>.
+
+ADDITIONAL TERMS per GNU GPL Section 7
+No trademark or publicity rights are granted. This license does NOT give you
+any right, title or interest in "Command & Conquer" or any other Electronic Arts trademark. You may not distribute any
+modification of this program using any Electronic Arts trademark or claim any affiliation or association with Electronic Arts Inc.
+or its affiliates or their employees.
+
+Any propagation or conveyance of this program must include this copyright
+notice and these terms.
+
+If you convey this program (or any modifications of it) and assume
+contractual liability for the program to recipients of it, you agree to
+indemnify Electronic Arts for any liability that those contractual
+assumptions impose on Electronic Arts.
+
+You may not misrepresent the origins of this program; modified versions of
+the program must be marked as such and not identified as the original program.
+
+This disclaimer supplements the one included in the General Public License.
+TO THE FULLEST EXTENT PERMISSIBLE UNDER APPLICABLE LAW, THIS PROGRAM IS
+PROVIDED TO YOU "AS IS," WITH ALL FAULTS, WITHOUT WARRANTY OF ANY KIND, AND
+YOUR USE IS AT YOUR SOLE RISK. THE ENTIRE RISK OF SATISFACTORY QUALITY AND
+PERFORMANCE RESIDES WITH YOU. ELECTRONIC ARTS DISCLAIMS ANY AND ALL EXPRESS,
+IMPLIED OR STATUTORY WARRANTIES, INCLUDING IMPLIED WARRANTIES OF
+MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE,
+NONINFRINGEMENT OF THIRD PARTY RIGHTS, AND WARRANTIES (IF ANY) ARISING FROM A
+COURSE OF DEALING, USAGE, OR TRADE PRACTICE. ELECTRONIC ARTS DOES NOT WARRANT
+AGAINST INTERFERENCE WITH YOUR ENJOYMENT OF THE PROGRAM; THAT THE PROGRAM WILL
+MEET YOUR REQUIREMENTS; THAT OPERATION OF THE PROGRAM WILL BE UNINTERRUPTED OR
+ERROR-FREE, OR THAT THE PROGRAM WILL BE COMPATIBLE WITH THIRD PARTY SOFTWARE
+OR THAT ANY ERRORS IN THE PROGRAM WILL BE CORRECTED. NO ORAL OR WRITTEN ADVICE
+PROVIDED BY ELECTRONIC ARTS OR ANY AUTHORIZED REPRESENTATIVE SHALL CREATE A
+WARRANTY. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF OR LIMITATIONS ON
+IMPLIED WARRANTIES OR THE LIMITATIONS ON THE APPLICABLE STATUTORY RIGHTS OF A
+CONSUMER, SO SOME OR ALL OF THE ABOVE EXCLUSIONS AND LIMITATIONS MAY NOT APPLY
+TO YOU.

+ 660 - 0
CnCTDRAMapEditor/MainForm.Designer.cs

@@ -0,0 +1,660 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor
+{
+    partial class MainForm
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                activeTool?.Dispose();
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
+            this.mainMenuStrip = new System.Windows.Forms.MenuStrip();
+            this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.fileNewMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.fileOpenMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.fileSaveMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.fileSaveAsMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripSeparator();
+            this.fileExportMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.filePublishMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripSeparator();
+            this.fileRecentFilesMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
+            this.fileExitMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.editToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.editUndoMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.editRedoMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.settingsMapSettingsMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.settingsTeamTypesMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.settingsTriggersMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.viewToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.layersToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.viewLayersBoundariesMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.viewLayersOverlayMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.viewLayersTerrainMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.viewLayersWaypointsMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.viewLayersObjectTriggersMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.viewLayersCellTriggersMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.developerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.developerGenerateMapPreviewMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.developerGenerateMapPreviewDirectoryMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.developerGoToINIMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripSeparator();
+            this.debugToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.developerDebugShowOverlapCellsMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.mainStatusStrip = new System.Windows.Forms.StatusStrip();
+            this.toolStatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
+            this.cellStatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
+            this.mouseToolTip = new System.Windows.Forms.ToolTip(this.components);
+            this.mainToolStrip = new System.Windows.Forms.ToolStrip();
+            this.mapToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.smudgeToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.overlayToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.terrainToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.infantryToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.unitToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.buildingToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.resourcesToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.wallsToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.waypointsToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.cellTriggersToolStripButton = new System.Windows.Forms.ToolStripButton();
+            this.mapPanel = new MobiusEditor.Controls.MapPanel();
+            this.copyrightStatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
+            this.mainMenuStrip.SuspendLayout();
+            this.mainStatusStrip.SuspendLayout();
+            this.mainToolStrip.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // mainMenuStrip
+            // 
+            this.mainMenuStrip.ImageScalingSize = new System.Drawing.Size(24, 24);
+            this.mainMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.fileToolStripMenuItem,
+            this.editToolStripMenuItem,
+            this.settingsToolStripMenuItem,
+            this.viewToolStripMenuItem,
+            this.developerToolStripMenuItem});
+            this.mainMenuStrip.Location = new System.Drawing.Point(0, 0);
+            this.mainMenuStrip.Name = "mainMenuStrip";
+            this.mainMenuStrip.Padding = new System.Windows.Forms.Padding(8, 2, 0, 2);
+            this.mainMenuStrip.Size = new System.Drawing.Size(1369, 28);
+            this.mainMenuStrip.TabIndex = 1;
+            this.mainMenuStrip.Text = "menuStrip1";
+            // 
+            // fileToolStripMenuItem
+            // 
+            this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.fileNewMenuItem,
+            this.fileOpenMenuItem,
+            this.fileSaveMenuItem,
+            this.fileSaveAsMenuItem,
+            this.toolStripMenuItem4,
+            this.fileExportMenuItem,
+            this.filePublishMenuItem,
+            this.toolStripMenuItem3,
+            this.fileRecentFilesMenuItem,
+            this.toolStripMenuItem1,
+            this.fileExitMenuItem});
+            this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
+            this.fileToolStripMenuItem.Size = new System.Drawing.Size(44, 24);
+            this.fileToolStripMenuItem.Text = "&File";
+            // 
+            // fileNewMenuItem
+            // 
+            this.fileNewMenuItem.Name = "fileNewMenuItem";
+            this.fileNewMenuItem.Size = new System.Drawing.Size(162, 26);
+            this.fileNewMenuItem.Text = "&New...";
+            this.fileNewMenuItem.Click += new System.EventHandler(this.fileNewMenuItem_Click);
+            // 
+            // fileOpenMenuItem
+            // 
+            this.fileOpenMenuItem.Name = "fileOpenMenuItem";
+            this.fileOpenMenuItem.Size = new System.Drawing.Size(162, 26);
+            this.fileOpenMenuItem.Text = "&Open...";
+            this.fileOpenMenuItem.Click += new System.EventHandler(this.fileOpenMenuItem_Click);
+            // 
+            // fileSaveMenuItem
+            // 
+            this.fileSaveMenuItem.Name = "fileSaveMenuItem";
+            this.fileSaveMenuItem.Size = new System.Drawing.Size(162, 26);
+            this.fileSaveMenuItem.Text = "&Save";
+            this.fileSaveMenuItem.Click += new System.EventHandler(this.fileSaveMenuItem_Click);
+            // 
+            // fileSaveAsMenuItem
+            // 
+            this.fileSaveAsMenuItem.Name = "fileSaveAsMenuItem";
+            this.fileSaveAsMenuItem.Size = new System.Drawing.Size(162, 26);
+            this.fileSaveAsMenuItem.Text = "Save &As...";
+            this.fileSaveAsMenuItem.Click += new System.EventHandler(this.fileSaveAsMenuItem_Click);
+            // 
+            // toolStripMenuItem4
+            // 
+            this.toolStripMenuItem4.Name = "toolStripMenuItem4";
+            this.toolStripMenuItem4.Size = new System.Drawing.Size(159, 6);
+            // 
+            // fileExportMenuItem
+            // 
+            this.fileExportMenuItem.Name = "fileExportMenuItem";
+            this.fileExportMenuItem.Size = new System.Drawing.Size(162, 26);
+            this.fileExportMenuItem.Text = "&Export...";
+            this.fileExportMenuItem.Click += new System.EventHandler(this.fileExportMenuItem_Click);
+            // 
+            // filePublishMenuItem
+            // 
+            this.filePublishMenuItem.Name = "filePublishMenuItem";
+            this.filePublishMenuItem.Size = new System.Drawing.Size(162, 26);
+            this.filePublishMenuItem.Text = "&Publish...";
+            this.filePublishMenuItem.Click += new System.EventHandler(this.filePublishMenuItem_Click);
+            // 
+            // toolStripMenuItem3
+            // 
+            this.toolStripMenuItem3.Name = "toolStripMenuItem3";
+            this.toolStripMenuItem3.Size = new System.Drawing.Size(159, 6);
+            // 
+            // fileRecentFilesMenuItem
+            // 
+            this.fileRecentFilesMenuItem.Name = "fileRecentFilesMenuItem";
+            this.fileRecentFilesMenuItem.Size = new System.Drawing.Size(162, 26);
+            this.fileRecentFilesMenuItem.Text = "&Recent Files";
+            // 
+            // toolStripMenuItem1
+            // 
+            this.toolStripMenuItem1.Name = "toolStripMenuItem1";
+            this.toolStripMenuItem1.Size = new System.Drawing.Size(159, 6);
+            // 
+            // fileExitMenuItem
+            // 
+            this.fileExitMenuItem.Name = "fileExitMenuItem";
+            this.fileExitMenuItem.Size = new System.Drawing.Size(162, 26);
+            this.fileExitMenuItem.Text = "&Exit";
+            this.fileExitMenuItem.Click += new System.EventHandler(this.fileExitMenuItem_Click);
+            // 
+            // editToolStripMenuItem
+            // 
+            this.editToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.editUndoMenuItem,
+            this.editRedoMenuItem});
+            this.editToolStripMenuItem.Name = "editToolStripMenuItem";
+            this.editToolStripMenuItem.Size = new System.Drawing.Size(47, 24);
+            this.editToolStripMenuItem.Text = "&Edit";
+            // 
+            // editUndoMenuItem
+            // 
+            this.editUndoMenuItem.Name = "editUndoMenuItem";
+            this.editUndoMenuItem.ShortcutKeyDisplayString = "Ctrl + Z";
+            this.editUndoMenuItem.Size = new System.Drawing.Size(179, 26);
+            this.editUndoMenuItem.Text = "&Undo";
+            this.editUndoMenuItem.Click += new System.EventHandler(this.editUndoMenuItem_Click);
+            // 
+            // editRedoMenuItem
+            // 
+            this.editRedoMenuItem.Name = "editRedoMenuItem";
+            this.editRedoMenuItem.ShortcutKeyDisplayString = "Ctrl + Y";
+            this.editRedoMenuItem.Size = new System.Drawing.Size(179, 26);
+            this.editRedoMenuItem.Text = "&Redo";
+            this.editRedoMenuItem.Click += new System.EventHandler(this.editRedoMenuItem_Click);
+            // 
+            // settingsToolStripMenuItem
+            // 
+            this.settingsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.settingsMapSettingsMenuItem,
+            this.settingsTeamTypesMenuItem,
+            this.settingsTriggersMenuItem});
+            this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
+            this.settingsToolStripMenuItem.Size = new System.Drawing.Size(74, 24);
+            this.settingsToolStripMenuItem.Text = "&Settings";
+            // 
+            // settingsMapSettingsMenuItem
+            // 
+            this.settingsMapSettingsMenuItem.Name = "settingsMapSettingsMenuItem";
+            this.settingsMapSettingsMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.settingsMapSettingsMenuItem.Text = "&Map Settings...";
+            this.settingsMapSettingsMenuItem.Click += new System.EventHandler(this.settingsMapSettingsMenuItem_Click);
+            // 
+            // settingsTeamTypesMenuItem
+            // 
+            this.settingsTeamTypesMenuItem.Name = "settingsTeamTypesMenuItem";
+            this.settingsTeamTypesMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.settingsTeamTypesMenuItem.Text = "&Team Types...";
+            this.settingsTeamTypesMenuItem.Click += new System.EventHandler(this.settingsTeamTypesMenuItem_Click);
+            // 
+            // settingsTriggersMenuItem
+            // 
+            this.settingsTriggersMenuItem.Name = "settingsTriggersMenuItem";
+            this.settingsTriggersMenuItem.Size = new System.Drawing.Size(180, 26);
+            this.settingsTriggersMenuItem.Text = "T&riggers...";
+            this.settingsTriggersMenuItem.Click += new System.EventHandler(this.settingsTriggersMenuItem_Click);
+            // 
+            // viewToolStripMenuItem
+            // 
+            this.viewToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.layersToolStripMenuItem});
+            this.viewToolStripMenuItem.Name = "viewToolStripMenuItem";
+            this.viewToolStripMenuItem.Size = new System.Drawing.Size(53, 24);
+            this.viewToolStripMenuItem.Text = "&View";
+            // 
+            // layersToolStripMenuItem
+            // 
+            this.layersToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.viewLayersBoundariesMenuItem,
+            this.viewLayersOverlayMenuItem,
+            this.viewLayersTerrainMenuItem,
+            this.viewLayersWaypointsMenuItem,
+            this.viewLayersObjectTriggersMenuItem,
+            this.viewLayersCellTriggersMenuItem});
+            this.layersToolStripMenuItem.Name = "layersToolStripMenuItem";
+            this.layersToolStripMenuItem.Size = new System.Drawing.Size(125, 26);
+            this.layersToolStripMenuItem.Text = "&Layers";
+            // 
+            // viewLayersBoundariesMenuItem
+            // 
+            this.viewLayersBoundariesMenuItem.Checked = true;
+            this.viewLayersBoundariesMenuItem.CheckOnClick = true;
+            this.viewLayersBoundariesMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
+            this.viewLayersBoundariesMenuItem.Name = "viewLayersBoundariesMenuItem";
+            this.viewLayersBoundariesMenuItem.Size = new System.Drawing.Size(185, 26);
+            this.viewLayersBoundariesMenuItem.Text = "&Boundaries";
+            this.viewLayersBoundariesMenuItem.CheckedChanged += new System.EventHandler(this.viewLayersMenuItem_CheckedChanged);
+            // 
+            // viewLayersOverlayMenuItem
+            // 
+            this.viewLayersOverlayMenuItem.Checked = true;
+            this.viewLayersOverlayMenuItem.CheckOnClick = true;
+            this.viewLayersOverlayMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
+            this.viewLayersOverlayMenuItem.Name = "viewLayersOverlayMenuItem";
+            this.viewLayersOverlayMenuItem.Size = new System.Drawing.Size(185, 26);
+            this.viewLayersOverlayMenuItem.Text = "&Overlay";
+            this.viewLayersOverlayMenuItem.CheckedChanged += new System.EventHandler(this.viewLayersMenuItem_CheckedChanged);
+            // 
+            // viewLayersTerrainMenuItem
+            // 
+            this.viewLayersTerrainMenuItem.Checked = true;
+            this.viewLayersTerrainMenuItem.CheckOnClick = true;
+            this.viewLayersTerrainMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
+            this.viewLayersTerrainMenuItem.Name = "viewLayersTerrainMenuItem";
+            this.viewLayersTerrainMenuItem.Size = new System.Drawing.Size(185, 26);
+            this.viewLayersTerrainMenuItem.Text = "&Terrain";
+            this.viewLayersTerrainMenuItem.CheckedChanged += new System.EventHandler(this.viewLayersMenuItem_CheckedChanged);
+            // 
+            // viewLayersWaypointsMenuItem
+            // 
+            this.viewLayersWaypointsMenuItem.Checked = true;
+            this.viewLayersWaypointsMenuItem.CheckOnClick = true;
+            this.viewLayersWaypointsMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
+            this.viewLayersWaypointsMenuItem.Name = "viewLayersWaypointsMenuItem";
+            this.viewLayersWaypointsMenuItem.Size = new System.Drawing.Size(185, 26);
+            this.viewLayersWaypointsMenuItem.Text = "&Waypoints";
+            this.viewLayersWaypointsMenuItem.CheckedChanged += new System.EventHandler(this.viewLayersMenuItem_CheckedChanged);
+            // 
+            // viewLayersObjectTriggersMenuItem
+            // 
+            this.viewLayersObjectTriggersMenuItem.Checked = true;
+            this.viewLayersObjectTriggersMenuItem.CheckOnClick = true;
+            this.viewLayersObjectTriggersMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
+            this.viewLayersObjectTriggersMenuItem.Name = "viewLayersObjectTriggersMenuItem";
+            this.viewLayersObjectTriggersMenuItem.Size = new System.Drawing.Size(185, 26);
+            this.viewLayersObjectTriggersMenuItem.Text = "O&bject Triggers";
+            this.viewLayersObjectTriggersMenuItem.CheckedChanged += new System.EventHandler(this.viewLayersMenuItem_CheckedChanged);
+            // 
+            // viewLayersCellTriggersMenuItem
+            // 
+            this.viewLayersCellTriggersMenuItem.Checked = true;
+            this.viewLayersCellTriggersMenuItem.CheckOnClick = true;
+            this.viewLayersCellTriggersMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
+            this.viewLayersCellTriggersMenuItem.Name = "viewLayersCellTriggersMenuItem";
+            this.viewLayersCellTriggersMenuItem.Size = new System.Drawing.Size(185, 26);
+            this.viewLayersCellTriggersMenuItem.Text = "&Cell Triggers";
+            this.viewLayersCellTriggersMenuItem.CheckedChanged += new System.EventHandler(this.viewLayersMenuItem_CheckedChanged);
+            // 
+            // developerToolStripMenuItem
+            // 
+            this.developerToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.developerGenerateMapPreviewMenuItem,
+            this.developerGoToINIMenuItem,
+            this.toolStripMenuItem2,
+            this.debugToolStripMenuItem});
+            this.developerToolStripMenuItem.Name = "developerToolStripMenuItem";
+            this.developerToolStripMenuItem.Size = new System.Drawing.Size(90, 24);
+            this.developerToolStripMenuItem.Text = "&Developer";
+            // 
+            // developerGenerateMapPreviewMenuItem
+            // 
+            this.developerGenerateMapPreviewMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.developerGenerateMapPreviewDirectoryMenuItem});
+            this.developerGenerateMapPreviewMenuItem.Name = "developerGenerateMapPreviewMenuItem";
+            this.developerGenerateMapPreviewMenuItem.Size = new System.Drawing.Size(234, 26);
+            this.developerGenerateMapPreviewMenuItem.Text = "&Generate map preview";
+            this.developerGenerateMapPreviewMenuItem.Click += new System.EventHandler(this.developerGenerateMapPreviewMenuItem_Click);
+            // 
+            // developerGenerateMapPreviewDirectoryMenuItem
+            // 
+            this.developerGenerateMapPreviewDirectoryMenuItem.Name = "developerGenerateMapPreviewDirectoryMenuItem";
+            this.developerGenerateMapPreviewDirectoryMenuItem.Size = new System.Drawing.Size(154, 26);
+            this.developerGenerateMapPreviewDirectoryMenuItem.Text = "&Directory...";
+            this.developerGenerateMapPreviewDirectoryMenuItem.Click += new System.EventHandler(this.developerGenerateMapPreviewDirectoryMenuItem_Click);
+            // 
+            // developerGoToINIMenuItem
+            // 
+            this.developerGoToINIMenuItem.Name = "developerGoToINIMenuItem";
+            this.developerGoToINIMenuItem.Size = new System.Drawing.Size(234, 26);
+            this.developerGoToINIMenuItem.Text = "Go to &INI";
+            this.developerGoToINIMenuItem.Click += new System.EventHandler(this.developerGoToINIMenuItem_Click);
+            // 
+            // toolStripMenuItem2
+            // 
+            this.toolStripMenuItem2.Name = "toolStripMenuItem2";
+            this.toolStripMenuItem2.Size = new System.Drawing.Size(231, 6);
+            // 
+            // debugToolStripMenuItem
+            // 
+            this.debugToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.developerDebugShowOverlapCellsMenuItem});
+            this.debugToolStripMenuItem.Name = "debugToolStripMenuItem";
+            this.debugToolStripMenuItem.Size = new System.Drawing.Size(234, 26);
+            this.debugToolStripMenuItem.Text = "&Debug";
+            // 
+            // developerDebugShowOverlapCellsMenuItem
+            // 
+            this.developerDebugShowOverlapCellsMenuItem.CheckOnClick = true;
+            this.developerDebugShowOverlapCellsMenuItem.Name = "developerDebugShowOverlapCellsMenuItem";
+            this.developerDebugShowOverlapCellsMenuItem.Size = new System.Drawing.Size(209, 26);
+            this.developerDebugShowOverlapCellsMenuItem.Text = "Show &Overlap cells";
+            this.developerDebugShowOverlapCellsMenuItem.CheckedChanged += new System.EventHandler(this.developerDebugShowOverlapCellsMenuItem_CheckedChanged);
+            // 
+            // mainStatusStrip
+            // 
+            this.mainStatusStrip.ImageScalingSize = new System.Drawing.Size(24, 24);
+            this.mainStatusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.toolStatusLabel,
+            this.cellStatusLabel,
+            this.copyrightStatusLabel});
+            this.mainStatusStrip.Location = new System.Drawing.Point(0, 651);
+            this.mainStatusStrip.Name = "mainStatusStrip";
+            this.mainStatusStrip.Padding = new System.Windows.Forms.Padding(2, 0, 19, 0);
+            this.mainStatusStrip.Size = new System.Drawing.Size(1369, 25);
+            this.mainStatusStrip.TabIndex = 2;
+            this.mainStatusStrip.Text = "statusStrip1";
+            // 
+            // toolStatusLabel
+            // 
+            this.toolStatusLabel.Name = "toolStatusLabel";
+            this.toolStatusLabel.Size = new System.Drawing.Size(0, 20);
+            // 
+            // cellStatusLabel
+            // 
+            this.cellStatusLabel.BorderSides = System.Windows.Forms.ToolStripStatusLabelBorderSides.Left;
+            this.cellStatusLabel.BorderStyle = System.Windows.Forms.Border3DStyle.Etched;
+            this.cellStatusLabel.Name = "cellStatusLabel";
+            this.cellStatusLabel.Size = new System.Drawing.Size(4, 20);
+            // 
+            // mainToolStrip
+            // 
+            this.mainToolStrip.ImageScalingSize = new System.Drawing.Size(24, 24);
+            this.mainToolStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+            this.mapToolStripButton,
+            this.smudgeToolStripButton,
+            this.overlayToolStripButton,
+            this.terrainToolStripButton,
+            this.infantryToolStripButton,
+            this.unitToolStripButton,
+            this.buildingToolStripButton,
+            this.resourcesToolStripButton,
+            this.wallsToolStripButton,
+            this.waypointsToolStripButton,
+            this.cellTriggersToolStripButton});
+            this.mainToolStrip.Location = new System.Drawing.Point(0, 28);
+            this.mainToolStrip.Name = "mainToolStrip";
+            this.mainToolStrip.Padding = new System.Windows.Forms.Padding(0, 0, 2, 0);
+            this.mainToolStrip.Size = new System.Drawing.Size(1369, 31);
+            this.mainToolStrip.TabIndex = 3;
+            this.mainToolStrip.Text = "toolStrip1";
+            this.mainToolStrip.MouseMove += new System.Windows.Forms.MouseEventHandler(this.mainToolStrip_MouseMove);
+            // 
+            // mapToolStripButton
+            // 
+            this.mapToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("mapToolStripButton.Image")));
+            this.mapToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.mapToolStripButton.Name = "mapToolStripButton";
+            this.mapToolStripButton.Size = new System.Drawing.Size(67, 28);
+            this.mapToolStripButton.Text = "Map";
+            this.mapToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // smudgeToolStripButton
+            // 
+            this.smudgeToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("smudgeToolStripButton.Image")));
+            this.smudgeToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.smudgeToolStripButton.Name = "smudgeToolStripButton";
+            this.smudgeToolStripButton.Size = new System.Drawing.Size(92, 28);
+            this.smudgeToolStripButton.Text = "Smudge";
+            this.smudgeToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // overlayToolStripButton
+            // 
+            this.overlayToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("overlayToolStripButton.Image")));
+            this.overlayToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.overlayToolStripButton.Name = "overlayToolStripButton";
+            this.overlayToolStripButton.Size = new System.Drawing.Size(87, 28);
+            this.overlayToolStripButton.Text = "Overlay";
+            this.overlayToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // terrainToolStripButton
+            // 
+            this.terrainToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("terrainToolStripButton.Image")));
+            this.terrainToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.terrainToolStripButton.Name = "terrainToolStripButton";
+            this.terrainToolStripButton.Size = new System.Drawing.Size(82, 28);
+            this.terrainToolStripButton.Text = "Terrain";
+            this.terrainToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // infantryToolStripButton
+            // 
+            this.infantryToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("infantryToolStripButton.Image")));
+            this.infantryToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.infantryToolStripButton.Name = "infantryToolStripButton";
+            this.infantryToolStripButton.Size = new System.Drawing.Size(87, 28);
+            this.infantryToolStripButton.Text = "Infantry";
+            this.infantryToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // unitToolStripButton
+            // 
+            this.unitToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("unitToolStripButton.Image")));
+            this.unitToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.unitToolStripButton.Name = "unitToolStripButton";
+            this.unitToolStripButton.Size = new System.Drawing.Size(70, 28);
+            this.unitToolStripButton.Text = "Units";
+            this.unitToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // buildingToolStripButton
+            // 
+            this.buildingToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("buildingToolStripButton.Image")));
+            this.buildingToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.buildingToolStripButton.Name = "buildingToolStripButton";
+            this.buildingToolStripButton.Size = new System.Drawing.Size(102, 28);
+            this.buildingToolStripButton.Text = "Structures";
+            this.buildingToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // resourcesToolStripButton
+            // 
+            this.resourcesToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("resourcesToolStripButton.Image")));
+            this.resourcesToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.resourcesToolStripButton.Name = "resourcesToolStripButton";
+            this.resourcesToolStripButton.Size = new System.Drawing.Size(103, 28);
+            this.resourcesToolStripButton.Text = "Resources";
+            this.resourcesToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // wallsToolStripButton
+            // 
+            this.wallsToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("wallsToolStripButton.Image")));
+            this.wallsToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.wallsToolStripButton.Name = "wallsToolStripButton";
+            this.wallsToolStripButton.Size = new System.Drawing.Size(72, 28);
+            this.wallsToolStripButton.Text = "Walls";
+            this.wallsToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // waypointsToolStripButton
+            // 
+            this.waypointsToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("waypointsToolStripButton.Image")));
+            this.waypointsToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.waypointsToolStripButton.Name = "waypointsToolStripButton";
+            this.waypointsToolStripButton.Size = new System.Drawing.Size(106, 28);
+            this.waypointsToolStripButton.Text = "Waypoints";
+            this.waypointsToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // cellTriggersToolStripButton
+            // 
+            this.cellTriggersToolStripButton.Image = ((System.Drawing.Image)(resources.GetObject("cellTriggersToolStripButton.Image")));
+            this.cellTriggersToolStripButton.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.cellTriggersToolStripButton.Name = "cellTriggersToolStripButton";
+            this.cellTriggersToolStripButton.Size = new System.Drawing.Size(119, 28);
+            this.cellTriggersToolStripButton.Text = "Cell Triggers";
+            this.cellTriggersToolStripButton.Click += new System.EventHandler(this.mainToolStripButton_Click);
+            // 
+            // mapPanel
+            // 
+            this.mapPanel.BackColor = System.Drawing.Color.Black;
+            this.mapPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.mapPanel.FocusOnMouseEnter = true;
+            this.mapPanel.Location = new System.Drawing.Point(0, 59);
+            this.mapPanel.MapImage = null;
+            this.mapPanel.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+            this.mapPanel.MaxZoom = 8;
+            this.mapPanel.MinZoom = 1;
+            this.mapPanel.Name = "mapPanel";
+            this.mapPanel.Quality = 2;
+            this.mapPanel.Size = new System.Drawing.Size(1369, 592);
+            this.mapPanel.TabIndex = 4;
+            this.mapPanel.Zoom = 1;
+            this.mapPanel.ZoomStep = 1;
+            this.mapPanel.MouseMove += new System.Windows.Forms.MouseEventHandler(this.mapPanel_MouseMove);
+            // 
+            // copyrightStatusLabel
+            // 
+            this.copyrightStatusLabel.Name = "copyrightStatusLabel";
+            this.copyrightStatusLabel.Size = new System.Drawing.Size(1305, 20);
+            this.copyrightStatusLabel.Spring = true;
+            this.copyrightStatusLabel.Text = "©2020 Electronic Arts Inc.";
+            this.copyrightStatusLabel.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // MainForm
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1369, 676);
+            this.Controls.Add(this.mapPanel);
+            this.Controls.Add(this.mainToolStrip);
+            this.Controls.Add(this.mainStatusStrip);
+            this.Controls.Add(this.mainMenuStrip);
+            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+            this.KeyPreview = true;
+            this.MainMenuStrip = this.mainMenuStrip;
+            this.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+            this.Name = "MainForm";
+            this.Text = "CnC TDRA Map Editor";
+            this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing);
+            this.mainMenuStrip.ResumeLayout(false);
+            this.mainMenuStrip.PerformLayout();
+            this.mainStatusStrip.ResumeLayout(false);
+            this.mainStatusStrip.PerformLayout();
+            this.mainToolStrip.ResumeLayout(false);
+            this.mainToolStrip.PerformLayout();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+        private System.Windows.Forms.MenuStrip mainMenuStrip;
+        private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem fileOpenMenuItem;
+        private System.Windows.Forms.StatusStrip mainStatusStrip;
+        private System.Windows.Forms.ToolStripStatusLabel cellStatusLabel;
+        private System.Windows.Forms.ToolStripMenuItem viewToolStripMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem fileSaveAsMenuItem;
+        private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
+        private System.Windows.Forms.ToolStripMenuItem fileExitMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem fileNewMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem developerToolStripMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem developerGenerateMapPreviewMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem fileExportMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem developerGenerateMapPreviewDirectoryMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem settingsToolStripMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem settingsMapSettingsMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem editToolStripMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem editUndoMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem editRedoMenuItem;
+        private System.Windows.Forms.ToolStripSeparator toolStripMenuItem2;
+        private System.Windows.Forms.ToolStripMenuItem debugToolStripMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem developerDebugShowOverlapCellsMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem filePublishMenuItem;
+        private System.Windows.Forms.ToolTip mouseToolTip;
+        private System.Windows.Forms.ToolStrip mainToolStrip;
+        private System.Windows.Forms.ToolStripButton mapToolStripButton;
+        private System.Windows.Forms.ToolStripButton smudgeToolStripButton;
+        private System.Windows.Forms.ToolStripButton overlayToolStripButton;
+        private System.Windows.Forms.ToolStripButton terrainToolStripButton;
+        private System.Windows.Forms.ToolStripButton infantryToolStripButton;
+        private System.Windows.Forms.ToolStripButton unitToolStripButton;
+        private System.Windows.Forms.ToolStripButton buildingToolStripButton;
+        private System.Windows.Forms.ToolStripButton resourcesToolStripButton;
+        private System.Windows.Forms.ToolStripButton wallsToolStripButton;
+        private System.Windows.Forms.ToolStripButton waypointsToolStripButton;
+        private Controls.MapPanel mapPanel;
+        private System.Windows.Forms.ToolStripSeparator toolStripMenuItem3;
+        private System.Windows.Forms.ToolStripMenuItem fileRecentFilesMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem fileSaveMenuItem;
+        private System.Windows.Forms.ToolStripSeparator toolStripMenuItem4;
+        private System.Windows.Forms.ToolStripMenuItem developerGoToINIMenuItem;
+        private System.Windows.Forms.ToolStripButton cellTriggersToolStripButton;
+        private System.Windows.Forms.ToolStripMenuItem settingsTeamTypesMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem settingsTriggersMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem layersToolStripMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem viewLayersBoundariesMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem viewLayersObjectTriggersMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem viewLayersCellTriggersMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem viewLayersWaypointsMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem viewLayersTerrainMenuItem;
+        private System.Windows.Forms.ToolStripMenuItem viewLayersOverlayMenuItem;
+        private System.Windows.Forms.ToolStripStatusLabel toolStatusLabel;
+        private System.Windows.Forms.ToolStripStatusLabel copyrightStatusLabel;
+    }
+}
+

+ 1415 - 0
CnCTDRAMapEditor/MainForm.cs

@@ -0,0 +1,1415 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Dialogs;
+using MobiusEditor.Event;
+using MobiusEditor.Interface;
+using MobiusEditor.Model;
+using MobiusEditor.Tools;
+using MobiusEditor.Tools.Dialogs;
+using MobiusEditor.Utility;
+using Steamworks;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Diagnostics;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+namespace MobiusEditor
+{
+    public partial class MainForm : Form
+    {
+        [Flags]
+        private enum ToolType
+        {
+            None        = 0,
+            Map         = 1 << 0,
+            Smudge      = 1 << 1,
+            Overlay     = 1 << 2,
+            Terrain     = 1 << 3,
+            Infantry    = 1 << 4,
+            Unit        = 1 << 5,
+            Building    = 1 << 6,
+            Resources   = 1 << 7,
+            Wall        = 1 << 8,
+            Waypoint    = 1 << 9,
+            CellTrigger = 1 << 10
+        }
+
+        private static readonly ToolType[] toolTypes;
+
+        private ToolType availableToolTypes = ToolType.None;
+
+        private ToolType activeToolType = ToolType.None;
+        private ToolType ActiveToolType
+        {
+            get => activeToolType;
+            set
+            {
+                var firstAvailableTool = value;
+                if ((availableToolTypes & firstAvailableTool) == ToolType.None)
+                {
+                    var otherAvailableToolTypes = toolTypes.Where(t => (availableToolTypes & t) != ToolType.None);
+                    firstAvailableTool = otherAvailableToolTypes.Any() ? otherAvailableToolTypes.First() : ToolType.None;
+                }
+
+                if (activeToolType != firstAvailableTool)
+                {
+                    activeToolType = firstAvailableTool;
+                    RefreshActiveTool();
+                }
+            }
+        }
+
+        private MapLayerFlag activeLayers;
+        public MapLayerFlag ActiveLayers
+        {
+            get => activeLayers;
+            set
+            {
+                if (activeLayers != value)
+                {
+                    activeLayers = value;
+                    if (activeTool != null)
+                    {
+                        activeTool.Layers = ActiveLayers;
+                    }
+                }
+            }
+        }
+
+        private ITool activeTool;
+        private Form activeToolForm;
+
+        private IGamePlugin plugin;
+        private string filename;
+
+        private readonly MRU mru;
+
+        private readonly UndoRedoList<UndoRedoEventArgs> url = new UndoRedoList<UndoRedoEventArgs>();
+
+        private readonly Timer steamUpdateTimer = new Timer();
+
+        static MainForm()
+        {
+            toolTypes = ((IEnumerable<ToolType>)Enum.GetValues(typeof(ToolType))).Where(t => t != ToolType.None).ToArray();
+        }
+
+        public MainForm()
+        {
+            InitializeComponent();
+
+            mru = new MRU("Software\\Petroglyph\\CnCRemasteredEditor", 10, fileRecentFilesMenuItem);
+            mru.FileSelected += Mru_FileSelected;
+
+            foreach (ToolStripButton toolStripButton in mainToolStrip.Items)
+            {
+                toolStripButton.MouseMove += mainToolStrip_MouseMove;
+            }
+
+#if !DEVELOPER
+            fileExportMenuItem.Visible = false;
+            developerToolStripMenuItem.Visible = false;
+#endif
+
+            url.Tracked += UndoRedo_Updated;
+            url.Undone += UndoRedo_Updated;
+            url.Redone += UndoRedo_Updated;
+            UpdateUndoRedo();
+
+            steamUpdateTimer.Interval = 500;
+            steamUpdateTimer.Tick += SteamUpdateTimer_Tick;
+        }
+
+        private void SteamUpdateTimer_Tick(object sender, EventArgs e)
+        {
+            if (SteamworksUGC.IsInit)
+            {
+                SteamworksUGC.Service();
+            }
+        }
+
+        protected override void OnLoad(EventArgs e)
+        {
+            base.OnLoad(e);
+
+            RefreshAvailableTools();
+            UpdateVisibleLayers();
+
+            filePublishMenuItem.Visible = SteamworksUGC.IsInit;
+
+            steamUpdateTimer.Start();
+        }
+
+        protected override void OnClosed(EventArgs e)
+        {
+            base.OnClosed(e);
+
+            steamUpdateTimer.Stop();
+            steamUpdateTimer.Dispose();
+        }
+
+        protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
+        {
+            if (keyData == Keys.Q)
+            {
+                mapToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.W)
+            {
+                smudgeToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.E)
+            {
+                overlayToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.R)
+            {
+                terrainToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.T)
+            {
+                infantryToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.Y)
+            {
+                unitToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.A)
+            {
+                buildingToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.S)
+            {
+                resourcesToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.D)
+            {
+                wallsToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.F)
+            {
+                waypointsToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == Keys.G)
+            {
+                cellTriggersToolStripButton.PerformClick();
+                return true;
+            }
+            else if (keyData == (Keys.Control | Keys.Z))
+            {
+                if (editUndoMenuItem.Enabled)
+                {
+                    editUndoMenuItem_Click(this, new EventArgs());
+                }
+                return true;
+            }
+            else if (keyData == (Keys.Control | Keys.Y))
+            {
+                if (editRedoMenuItem.Enabled)
+                {
+                    editRedoMenuItem_Click(this, new EventArgs());
+                }
+                return true;
+            }
+
+            return base.ProcessCmdKey(ref msg, keyData);
+        }
+
+        private void UpdateUndoRedo()
+        {
+            editUndoMenuItem.Enabled = url.CanUndo;
+            editRedoMenuItem.Enabled = url.CanRedo;
+        }
+
+        private void UndoRedo_Updated(object sender, EventArgs e)
+        {
+            UpdateUndoRedo();
+        }
+
+        private void fileNewMenuItem_Click(object sender, EventArgs e)
+        {
+            if (!PromptSaveMap())
+            {
+                return;
+            }
+
+            NewMapDialog nmd = new NewMapDialog();
+            if (nmd.ShowDialog() == DialogResult.OK)
+            {
+                if (plugin != null)
+                {
+                    plugin.Map.Triggers.CollectionChanged -= Triggers_CollectionChanged;
+                    plugin.Dispose();
+                }
+                plugin = null;
+
+                Globals.TheTilesetManager.Reset();
+                Globals.TheTextureManager.Reset();
+
+                if (nmd.GameType == GameType.TiberianDawn)
+                {
+                    Globals.TheTeamColorManager.Reset();
+                    Globals.TheTeamColorManager.Load(@"DATA\XML\CNCTDTEAMCOLORS.XML");
+
+                    plugin = new TiberianDawn.GamePlugin();
+                    plugin.New(nmd.TheaterName);
+                }
+                else if (nmd.GameType == GameType.RedAlert)
+                {
+                    Globals.TheTeamColorManager.Reset();
+                    Globals.TheTeamColorManager.Load(@"DATA\XML\CNCRATEAMCOLORS.XML");
+
+                    plugin = new RedAlert.GamePlugin();
+                    plugin.New(nmd.TheaterName);
+                }
+
+                if (SteamworksUGC.IsInit)
+                {
+                    plugin.Map.BasicSection.Author = SteamFriends.GetPersonaName();
+                }
+
+                plugin.Map.Triggers.CollectionChanged += Triggers_CollectionChanged;
+                mapPanel.MapImage = plugin.MapImage;
+
+                filename = null;
+                Text = "CnC TDRA Map Editor";
+                url.Clear();
+
+                ClearActiveTool();
+                RefreshAvailableTools();
+                RefreshActiveTool();
+            }
+        }
+
+        private void fileOpenMenuItem_Click(object sender, EventArgs e)
+        {
+            if (!PromptSaveMap())
+            {
+                return;
+            }
+
+            var pgmFilter =
+#if DEVELOPER
+                "|PGM files (*.pgm)|*.pgm"
+#else
+                string.Empty
+#endif
+            ;
+
+            OpenFileDialog ofd = new OpenFileDialog
+            {
+                AutoUpgradeEnabled = false,
+                RestoreDirectory = true
+            };
+            ofd.Filter = "Tiberian Dawn files (*.ini;*.bin)|*.ini;*.bin|Red Alert files (*.mpr)|*.mpr" + pgmFilter  + "|All files (*.*)|*.*";
+            if (plugin != null)
+            {
+                switch (plugin.GameType)
+                {
+                    case GameType.TiberianDawn:
+                        ofd.InitialDirectory = TiberianDawn.Constants.SaveDirectory;
+                        ofd.FilterIndex = 1;
+                        break;
+                    case GameType.RedAlert:
+                        ofd.InitialDirectory = RedAlert.Constants.SaveDirectory;
+                        ofd.FilterIndex = 2;
+                        break;
+                }
+            }
+            else
+            {
+                ofd.InitialDirectory = Globals.RootSaveDirectory;
+            }
+            if (ofd.ShowDialog() == DialogResult.OK)
+            {
+                var fileInfo = new FileInfo(ofd.FileName);
+                if (LoadFile(fileInfo.FullName))
+                {
+                    mru.Add(fileInfo);
+                }
+                else
+                {
+                    mru.Remove(fileInfo);
+                    MessageBox.Show(string.Format("Error loading {0}.", ofd.FileName), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                }
+            }
+        }
+
+        private void fileSaveMenuItem_Click(object sender, EventArgs e)
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+
+            if (string.IsNullOrEmpty(filename))
+            {
+                fileSaveAsMenuItem.PerformClick();
+            }
+            else
+            {
+                var fileInfo = new FileInfo(filename);
+                if (SaveFile(fileInfo.FullName))
+                {
+                    mru.Add(fileInfo);
+                }
+                else
+                {
+                    mru.Remove(fileInfo);
+                }
+            }
+        }
+
+        private void fileSaveAsMenuItem_Click(object sender, EventArgs e)
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+
+            SaveFileDialog sfd = new SaveFileDialog
+            {
+                AutoUpgradeEnabled = false,
+                RestoreDirectory = true
+            };
+            var filters = new List<string>();
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    filters.Add("Tiberian Dawn files (*.ini;*.bin)|*.ini;*.bin");
+                    sfd.InitialDirectory = TiberianDawn.Constants.SaveDirectory;
+                    break;
+                case GameType.RedAlert:
+                    filters.Add("Red Alert files (*.mpr)|*.mpr");
+                    sfd.InitialDirectory = RedAlert.Constants.SaveDirectory;
+                    break;
+            }
+            filters.Add("All files (*.*)|*.*");
+
+            sfd.Filter = string.Join("|", filters);
+            if (!string.IsNullOrEmpty(filename))
+            {
+                sfd.InitialDirectory = Path.GetDirectoryName(filename);
+                sfd.FileName = Path.GetFileName(filename);
+            }
+            if (sfd.ShowDialog() == DialogResult.OK)
+            {
+                var fileInfo = new FileInfo(sfd.FileName);
+                if (SaveFile(fileInfo.FullName))
+                {
+                    mru.Add(fileInfo);
+                }
+                else
+                {
+                    mru.Remove(fileInfo);
+                }
+            }
+        }
+
+        private void fileExportMenuItem_Click(object sender, EventArgs e)
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+
+            SaveFileDialog sfd = new SaveFileDialog
+            {
+                AutoUpgradeEnabled = false,
+                RestoreDirectory = true
+            };
+            sfd.Filter = "MEG files (*.meg)|*.meg";
+            if (sfd.ShowDialog() == DialogResult.OK)
+            {
+                plugin.Save(sfd.FileName, FileType.MEG);
+            }
+        }
+
+        private void fileExitMenuItem_Click(object sender, EventArgs e)
+        {
+            Close();
+        }
+
+        private void editUndoMenuItem_Click(object sender, EventArgs e)
+        {
+            if (url.CanUndo)
+            {
+                url.Undo(new UndoRedoEventArgs(mapPanel, plugin.Map));
+            }
+        }
+
+        private void editRedoMenuItem_Click(object sender, EventArgs e)
+        {
+            if (url.CanRedo)
+            {
+                url.Redo(new UndoRedoEventArgs(mapPanel, plugin.Map));
+            }
+        }
+
+        private void settingsMapSettingsMenuItem_Click(object sender, EventArgs e)
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+
+            var basicSettings = new PropertyTracker<BasicSection>(plugin.Map.BasicSection);
+            var briefingSettings = new PropertyTracker<BriefingSection>(plugin.Map.BriefingSection);
+            var houseSettingsTrackers = plugin.Map.Houses.ToDictionary(h => h, h => new PropertyTracker<House>(h));
+
+            MapSettingsDialog msd = new MapSettingsDialog(plugin, basicSettings, briefingSettings, houseSettingsTrackers);
+            if (msd.ShowDialog() == DialogResult.OK)
+            {
+                basicSettings.Commit();
+                briefingSettings.Commit();
+                foreach (var houseSettingsTracker in houseSettingsTrackers.Values)
+                {
+                    houseSettingsTracker.Commit();
+                }
+                plugin.Dirty = true;
+            }
+        }
+
+        private void settingsTeamTypesMenuItem_Click(object sender, EventArgs e)
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+
+            int maxTeams = 0;
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    {
+                        maxTeams = TiberianDawn.Constants.MaxTeams;
+                    }
+                    break;
+                case GameType.RedAlert:
+                    {
+                        maxTeams = RedAlert.Constants.MaxTeams;
+                    }
+                    break;
+            }
+
+            TeamTypesDialog ttd = new TeamTypesDialog(plugin, maxTeams);
+            if (ttd.ShowDialog() == DialogResult.OK)
+            {
+                plugin.Map.TeamTypes.Clear();
+                plugin.Map.TeamTypes.AddRange(ttd.TeamTypes.Select(t => t.Clone()));
+                plugin.Dirty = true;
+            }
+        }
+
+        private void settingsTriggersMenuItem_Click(object sender, EventArgs e)
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+
+            int maxTriggers = 0;
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    {
+                        maxTriggers = TiberianDawn.Constants.MaxTriggers;
+                    }
+                    break;
+                case GameType.RedAlert:
+                    {
+                        maxTriggers = RedAlert.Constants.MaxTriggers;
+                    }
+                    break;
+            }
+
+            TriggersDialog td = new TriggersDialog(plugin, maxTriggers);
+            if (td.ShowDialog() == DialogResult.OK)
+            {
+                var oldTriggers =
+                    from leftTrigger in plugin.Map.Triggers
+                    join rightTrigger in td.Triggers
+                    on leftTrigger.Name equals rightTrigger.Name into result
+                    where result.Count() == 0
+                    select leftTrigger;
+                var newTriggers =
+                    from leftTrigger in td.Triggers
+                    join rightTrigger in plugin.Map.Triggers
+                    on leftTrigger.Name equals rightTrigger.Name into result
+                    where result.Count() == 0
+                    select leftTrigger;
+                var sameTriggers =
+                    from leftTrigger in plugin.Map.Triggers
+                    join rightTrigger in td.Triggers
+                    on leftTrigger.Name equals rightTrigger.Name
+                    select new
+                    {
+                        OldTrigger = leftTrigger,
+                        NewTrigger = rightTrigger
+                    };
+
+                foreach (var oldTrigger in oldTriggers.ToArray())
+                {
+                    plugin.Map.Triggers.Remove(oldTrigger);
+                }
+
+                foreach (var newTrigger in newTriggers.ToArray())
+                {
+                    plugin.Map.Triggers.Add(newTrigger.Clone());
+                }
+
+                foreach (var item in sameTriggers.ToArray())
+                {
+                    plugin.Map.Triggers.Add(item.NewTrigger.Clone());
+                    plugin.Map.Triggers.Remove(item.OldTrigger);
+                }
+
+                plugin.Dirty = true;
+            }
+        }
+
+        private void Mru_FileSelected(object sender, FileInfo e)
+        {
+            if (!PromptSaveMap())
+            {
+                return;
+            }
+
+            if (LoadFile(e.FullName))
+            {
+                mru.Add(e);
+            }
+            else
+            {
+                mru.Remove(e);
+                MessageBox.Show(string.Format("Error loading {0}.", e.FullName), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+        }
+
+        private void mapPanel_MouseMove(object sender, MouseEventArgs e)
+        {
+            if (plugin != null)
+            {
+                var mapPoint = mapPanel.ClientToMap(e.Location);
+                var location = new Point((int)Math.Floor((double)mapPoint.X / Globals.TileWidth), (int)Math.Floor((double)mapPoint.Y / Globals.TileHeight));
+                if (plugin.Map.Metrics.GetCell(location, out int cell))
+                {
+                    var sb = new StringBuilder();
+                    sb.AppendFormat("X = {0}, Y = {1}, Cell = {2}", location.X, location.Y, cell);
+
+                    var template = plugin.Map.Templates[cell];
+                    var templateType = template?.Type;  
+                    if (templateType != null)
+                    {
+                        sb.AppendFormat(", Template = {0} ({1})", templateType.DisplayName, template.Icon);
+                    }
+
+                    var smudge = plugin.Map.Smudge[cell];
+                    var smudgeType = smudge?.Type;
+                    if (smudgeType != null)
+                    {
+                        sb.AppendFormat(", Smudge = {0}", smudgeType.DisplayName);
+                    }
+
+                    var overlay = plugin.Map.Overlay[cell];
+                    var overlayType = overlay?.Type;
+                    if (overlayType != null)
+                    {
+                        sb.AppendFormat(", Overlay = {0}", overlayType.DisplayName);
+                    }
+
+                    var terrain = plugin.Map.Technos[location] as Terrain;
+                    var terrainType = terrain?.Type;
+                    if (terrainType != null)
+                    {
+                        sb.AppendFormat(", Terrain = {0}", terrainType.DisplayName);
+                    }
+
+                    if (plugin.Map.Technos[location] is InfantryGroup infantryGroup)
+                    {
+                        var subPixel = new Point(
+                            (mapPoint.X * Globals.PixelWidth / Globals.TileWidth) % Globals.PixelWidth,
+                            (mapPoint.Y * Globals.PixelHeight / Globals.TileHeight) % Globals.PixelHeight
+                        );
+
+                        var i = InfantryGroup.ClosestStoppingTypes(subPixel).Cast<int>().First();
+                        if (infantryGroup.Infantry[i] != null)
+                        {
+                            sb.AppendFormat(", Infantry = {0}", infantryGroup.Infantry[i].Type.DisplayName);
+                        }
+                    }
+
+                    var unit = plugin.Map.Technos[location] as Unit;
+                    var unitType = unit?.Type;
+                    if (unitType != null)
+                    {
+                        sb.AppendFormat(", Unit = {0}", unitType.DisplayName);
+                    }
+
+                    var building = plugin.Map.Technos[location] as Building;
+                    var buildingType = building?.Type;
+                    if (buildingType != null)
+                    {
+                        sb.AppendFormat(", Building = {0}", buildingType.DisplayName);
+                    }
+
+                    cellStatusLabel.Text = sb.ToString();
+                }
+                else
+                {
+                    cellStatusLabel.Text = string.Empty;
+                }
+            }
+        }
+
+        private bool LoadFile(string loadFilename)
+        {
+            FileType fileType = FileType.None;
+            switch (Path.GetExtension(loadFilename).ToLower())
+            {
+                case ".ini":
+                case ".mpr":
+                    fileType = FileType.INI;
+                    break;
+                case ".bin":
+                    fileType = FileType.BIN;
+                    break;
+#if DEVELOPER
+                case ".pgm":
+                    fileType = FileType.PGM;
+                    break;
+#endif
+            }
+
+            if (fileType == FileType.None)
+            {
+                return false;
+            }
+
+            GameType gameType = GameType.None;
+            switch (fileType)
+            {
+                case FileType.INI:
+                    {
+                        var ini = new INI();
+                        try
+                        {
+                            using (var reader = new StreamReader(loadFilename))
+                            {
+                                ini.Parse(reader);
+                            }
+                        }
+                        catch (FileNotFoundException)
+                        {
+                            return false;
+                        }
+                        gameType = File.Exists(Path.ChangeExtension(loadFilename, ".bin")) ? GameType.TiberianDawn : GameType.RedAlert;
+                    }
+                    break;
+                case FileType.BIN:
+                    gameType = GameType.TiberianDawn;
+                    break;
+#if DEVELOPER
+                case FileType.PGM:
+                    {
+                        try
+                        {
+                            using (var megafile = new Megafile(loadFilename))
+                            {
+                                if (megafile.Any(f => Path.GetExtension(f).ToLower() == ".mpr"))
+                                {
+                                    gameType = GameType.RedAlert;
+                                }
+                                else
+                                {
+                                    gameType = GameType.TiberianDawn;
+                                }
+                            }
+                        }
+                        catch (FileNotFoundException)
+                        {
+                            return false;
+                        }
+                    }
+                    break;
+#endif
+            }
+
+            if (gameType == GameType.None)
+            {
+                return false;
+            }
+
+            if (plugin != null)
+            {
+                plugin.Map.Triggers.CollectionChanged -= Triggers_CollectionChanged;
+                plugin.Dispose();
+            }
+            plugin = null;
+
+            Globals.TheTilesetManager.Reset();
+            Globals.TheTextureManager.Reset();
+
+            switch (gameType)
+            {
+                case GameType.TiberianDawn:
+                    {
+                        Globals.TheTeamColorManager.Reset();
+                        Globals.TheTeamColorManager.Load(@"DATA\XML\CNCTDTEAMCOLORS.XML");
+                        plugin = new TiberianDawn.GamePlugin();
+                    }
+                    break;
+                case GameType.RedAlert:
+                    {
+                        Globals.TheTeamColorManager.Reset();
+                        Globals.TheTeamColorManager.Load(@"DATA\XML\CNCRATEAMCOLORS.XML");
+                        plugin = new RedAlert.GamePlugin();
+                    }
+                    break;
+            }
+
+            try
+            {
+                var errors = plugin.Load(loadFilename, fileType).ToArray();
+                if (errors.Length > 0)
+                {
+                    ErrorMessageBox errorMessageBox = new ErrorMessageBox { Errors = errors };
+                    errorMessageBox.ShowDialog();
+                }
+            }
+            catch (Exception)
+            {
+#if DEVELOPER
+                throw;
+#else
+                return false;
+#endif
+            }
+
+            plugin.Map.Triggers.CollectionChanged += Triggers_CollectionChanged;
+            mapPanel.MapImage = plugin.MapImage;
+
+            plugin.Dirty = false;
+            filename = loadFilename;
+            Text = string.Format("CnC TDRA Map Editor - {0}", filename);
+
+            url.Clear();
+
+            ClearActiveTool();
+            RefreshAvailableTools();
+            RefreshActiveTool();
+
+            return true;
+        }
+
+        private bool SaveFile(string saveFilename)
+        {
+            FileType fileType = FileType.None;
+            switch (Path.GetExtension(saveFilename).ToLower())
+            {
+                case ".ini":
+                case ".mpr":
+                    fileType = FileType.INI;
+                    break;
+                case ".bin":
+                    fileType = FileType.BIN;
+                    break;
+            }
+
+            if (fileType == FileType.None)
+            {
+                return false;
+            }
+
+            if (string.IsNullOrEmpty(plugin.Map.SteamSection.Title))
+            {
+                plugin.Map.SteamSection.Title = plugin.Map.BasicSection.Name;
+            }
+
+            if (!plugin.Save(saveFilename, fileType))
+            {
+                return false;
+            }
+
+            if (new FileInfo(saveFilename).Length > Globals.MaxMapSize)
+            {
+                MessageBox.Show(string.Format("Map file exceeds the maximum size of {0} bytes.", Globals.MaxMapSize), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+
+            plugin.Dirty = false;
+            filename = saveFilename;
+            Text = string.Format("CnC TDRA Map Editor - {0}", filename);
+
+            return true;
+        }
+
+        private void RefreshAvailableTools()
+        {
+            availableToolTypes = ToolType.None;
+            if (plugin != null)
+            {
+                availableToolTypes |= ToolType.Waypoint;
+
+                if (plugin.Map.TemplateTypes.Any()) availableToolTypes |= ToolType.Map;
+                if (plugin.Map.SmudgeTypes.Any()) availableToolTypes |= ToolType.Smudge;
+                if (plugin.Map.OverlayTypes.Any(t => t.IsPlaceable && ((t.Theaters == null) || t.Theaters.Contains(plugin.Map.Theater)))) availableToolTypes |= ToolType.Overlay;
+                if (plugin.Map.TerrainTypes.Any(t => t.Theaters.Contains(plugin.Map.Theater))) availableToolTypes |= ToolType.Terrain;
+                if (plugin.Map.InfantryTypes.Any()) availableToolTypes |= ToolType.Infantry;
+                if (plugin.Map.UnitTypes.Any()) availableToolTypes |= ToolType.Unit;
+                if (plugin.Map.BuildingTypes.Any()) availableToolTypes |= ToolType.Building;
+                if (plugin.Map.OverlayTypes.Any(t => t.IsResource)) availableToolTypes |= ToolType.Resources;
+                if (plugin.Map.OverlayTypes.Any(t => t.IsWall)) availableToolTypes |= ToolType.Wall;
+                if (plugin.Map.Triggers.Any()) availableToolTypes |= ToolType.CellTrigger;
+            }
+
+            mapToolStripButton.Enabled = (availableToolTypes & ToolType.Map) != ToolType.None;
+            smudgeToolStripButton.Enabled = (availableToolTypes & ToolType.Smudge) != ToolType.None;
+            overlayToolStripButton.Enabled = (availableToolTypes & ToolType.Overlay) != ToolType.None;
+            terrainToolStripButton.Enabled = (availableToolTypes & ToolType.Terrain) != ToolType.None;
+            infantryToolStripButton.Enabled = (availableToolTypes & ToolType.Infantry) != ToolType.None;
+            unitToolStripButton.Enabled = (availableToolTypes & ToolType.Unit) != ToolType.None;
+            buildingToolStripButton.Enabled = (availableToolTypes & ToolType.Building) != ToolType.None;
+            resourcesToolStripButton.Enabled = (availableToolTypes & ToolType.Resources) != ToolType.None;
+            wallsToolStripButton.Enabled = (availableToolTypes & ToolType.Wall) != ToolType.None;
+            waypointsToolStripButton.Enabled = (availableToolTypes & ToolType.Waypoint) != ToolType.None;
+            cellTriggersToolStripButton.Enabled = (availableToolTypes & ToolType.CellTrigger) != ToolType.None;
+
+            ActiveToolType = activeToolType;
+        }
+
+        private void ClearActiveTool()
+        {
+            activeTool?.Dispose();
+            activeTool = null;
+
+            if (activeToolForm != null)
+            {
+                activeToolForm.ResizeEnd -= ActiveToolForm_ResizeEnd;
+                activeToolForm.Close();
+                activeToolForm = null;
+            }
+
+            toolStatusLabel.Text = string.Empty;
+        }
+
+        private void RefreshActiveTool()
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+
+            if (activeTool == null)
+            {
+                activeLayers = MapLayerFlag.None;
+            }
+
+            ClearActiveTool();
+
+            switch (ActiveToolType)
+            {
+                case ToolType.Map:
+                    {
+                        TemplateToolDialog toolDialog = new TemplateToolDialog();
+
+                        activeTool = new TemplateTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.TemplateTypeListView, toolDialog.TemplateTypeMapPanel, mouseToolTip, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    } break;
+                case ToolType.Smudge:
+                    {
+                        GenericToolDialog toolDialog = new GenericToolDialog
+                        {
+                            Text = "Smudge"
+                        };
+
+                        toolDialog.GenericTypeComboBox.Types = plugin.Map.SmudgeTypes.Where(t => (t.Flag & SmudgeTypeFlag.Bib) == SmudgeTypeFlag.None).OrderBy(t => t.Name);
+
+                        activeTool = new SmudgeTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.GenericTypeComboBox, toolDialog.GenericTypeMapPanel, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+                case ToolType.Overlay:
+                    {
+                        GenericToolDialog toolDialog = new GenericToolDialog
+                        {
+                            Text = "Overlay"
+                        };
+
+                        toolDialog.GenericTypeComboBox.Types = plugin.Map.OverlayTypes.Where(t => t.IsPlaceable && ((t.Theaters == null) || t.Theaters.Contains(plugin.Map.Theater))).OrderBy(t => t.Name);
+
+                        activeTool = new OverlaysTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.GenericTypeComboBox, toolDialog.GenericTypeMapPanel, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+                case ToolType.Resources:
+                    {
+                        ResourcesToolDialog toolDialog = new ResourcesToolDialog();
+
+                        activeTool = new ResourcesTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.TotalResourcesLbl, toolDialog.ResourceBrushSizeNud, toolDialog.GemsCheckBox, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+                case ToolType.Terrain:
+                    {
+                        TerrainToolDialog toolDialog = new TerrainToolDialog(plugin);
+
+                        toolDialog.TerrainTypeComboBox.Types = plugin.Map.TerrainTypes.Where(t => t.Theaters.Contains(plugin.Map.Theater)).OrderBy(t => t.Name);
+
+                        activeTool = new TerrainTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.TerrainTypeComboBox, toolDialog.TerrainTypeMapPanel, toolDialog.TerrainProperties, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+                case ToolType.Infantry:
+                    {
+                        ObjectToolDialog toolDialog = new ObjectToolDialog(plugin)
+                        {
+                            Text = "Infantry"
+                        };
+
+                        toolDialog.ObjectTypeComboBox.Types = plugin.Map.InfantryTypes.OrderBy(t => t.Name);
+
+                        activeTool = new InfantryTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.ObjectTypeComboBox, toolDialog.ObjectTypeMapPanel, toolDialog.ObjectProperties, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+                case ToolType.Unit:
+                    {
+                        ObjectToolDialog toolDialog = new ObjectToolDialog(plugin)
+                        {
+                            Text = "Units"
+                        };
+
+                        toolDialog.ObjectTypeComboBox.Types = plugin.Map.UnitTypes
+                            .Where(t => !t.IsFixedWing)
+                            .OrderBy(t => t.Name);
+
+                        activeTool = new UnitTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.ObjectTypeComboBox, toolDialog.ObjectTypeMapPanel, toolDialog.ObjectProperties, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+                case ToolType.Building:
+                    {
+                        ObjectToolDialog toolDialog = new ObjectToolDialog(plugin)
+                        {
+                            Text = "Structures"
+                        };
+
+                        toolDialog.ObjectTypeComboBox.Types = plugin.Map.BuildingTypes
+                            .Where(t => (t.Theaters == null) || t.Theaters.Contains(plugin.Map.Theater))
+                            .OrderBy(t => t.IsFake)
+                            .ThenBy(t => t.Name);
+
+                        activeTool = new BuildingTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.ObjectTypeComboBox, toolDialog.ObjectTypeMapPanel, toolDialog.ObjectProperties, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+                case ToolType.Wall:
+                    {
+                        GenericToolDialog toolDialog = new GenericToolDialog
+                        {
+                            Text = "Walls"
+                        };
+
+                        toolDialog.GenericTypeComboBox.Types = plugin.Map.OverlayTypes.Where(t => t.IsWall).OrderBy(t => t.Name);
+
+                        activeTool = new WallsTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.GenericTypeComboBox, toolDialog.GenericTypeMapPanel, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+                case ToolType.Waypoint:
+                    {
+                        WaypointsToolDialog toolDialog = new WaypointsToolDialog();
+
+                        toolDialog.WaypointCombo.DataSource = plugin.Map.Waypoints.Select(w => w.Name).ToArray();
+
+                        activeTool = new WaypointsTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.WaypointCombo, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+                case ToolType.CellTrigger:
+                    {
+                        CellTriggersToolDialog toolDialog = new CellTriggersToolDialog();
+
+                        toolDialog.TriggerCombo.DataSource = plugin.Map.Triggers.Select(t => t.Name).ToArray();
+
+                        activeTool = new CellTriggersTool(mapPanel, ActiveLayers, toolStatusLabel, toolDialog.TriggerCombo, plugin, url);
+                        activeToolForm = toolDialog;
+                        activeToolForm.Show(this);
+                    }
+                    break;
+            }
+
+            if (activeToolForm != null)
+            {
+                activeToolForm.ResizeEnd += ActiveToolForm_ResizeEnd;
+                clampActiveToolForm();
+            }
+
+            switch (plugin.GameType)
+            {
+                case GameType.TiberianDawn:
+                    mapPanel.MaxZoom = 8;
+                    mapPanel.ZoomStep = 1;
+                    break;
+                case GameType.RedAlert:
+                    mapPanel.MaxZoom = 16;
+                    mapPanel.ZoomStep = 2;
+                    break;
+            }
+
+            mapToolStripButton.Checked = ActiveToolType == ToolType.Map;
+            smudgeToolStripButton.Checked = ActiveToolType == ToolType.Smudge;
+            overlayToolStripButton.Checked = ActiveToolType == ToolType.Overlay;
+            terrainToolStripButton.Checked = ActiveToolType == ToolType.Terrain;
+            infantryToolStripButton.Checked = ActiveToolType == ToolType.Infantry;
+            unitToolStripButton.Checked = ActiveToolType == ToolType.Unit;
+            buildingToolStripButton.Checked = ActiveToolType == ToolType.Building;
+            resourcesToolStripButton.Checked = ActiveToolType == ToolType.Resources;
+            wallsToolStripButton.Checked = ActiveToolType == ToolType.Wall;
+            waypointsToolStripButton.Checked = ActiveToolType == ToolType.Waypoint;
+            cellTriggersToolStripButton.Checked = ActiveToolType == ToolType.CellTrigger;
+
+            Focus();
+
+            UpdateVisibleLayers();
+            mapPanel.Invalidate();
+        }
+
+        private void clampActiveToolForm()
+        {
+            if (activeToolForm == null)
+            {
+                return;
+            }
+
+            Rectangle bounds = activeToolForm.DesktopBounds;
+            Rectangle workingArea = Screen.FromControl(this).WorkingArea;
+            if (bounds.Right > workingArea.Right)
+            {
+                bounds.X = workingArea.Right - bounds.Width;
+            }
+            if (bounds.X < workingArea.Left)
+            {
+                bounds.X = workingArea.Left;
+            }
+            if (bounds.Bottom > workingArea.Bottom)
+            {
+                bounds.Y = workingArea.Bottom - bounds.Height;
+            }
+            if (bounds.Y < workingArea.Top)
+            {
+                bounds.Y = workingArea.Top;
+            }
+            activeToolForm.DesktopBounds = bounds;
+        }
+
+        private void ActiveToolForm_ResizeEnd(object sender, EventArgs e)
+        {
+            clampActiveToolForm();
+        }
+
+        private void Triggers_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
+        {
+            RefreshAvailableTools();
+        }
+
+        private void mainToolStripButton_Click(object sender, EventArgs e)
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+
+            if (sender == mapToolStripButton)
+            {
+                ActiveToolType = ToolType.Map;
+            }
+            else if (sender == smudgeToolStripButton)
+            {
+                ActiveToolType = ToolType.Smudge;
+            }
+            else if (sender == overlayToolStripButton)
+            {
+                ActiveToolType = ToolType.Overlay;
+            }
+            else if (sender == terrainToolStripButton)
+            {
+                ActiveToolType = ToolType.Terrain;
+            }
+            else if (sender == infantryToolStripButton)
+            {
+                ActiveToolType = ToolType.Infantry;
+            }
+            else if (sender == unitToolStripButton)
+            {
+                ActiveToolType = ToolType.Unit;
+            }
+            else if (sender == buildingToolStripButton)
+            {
+                ActiveToolType = ToolType.Building;
+            }
+            else if (sender == resourcesToolStripButton)
+            {
+                ActiveToolType = ToolType.Resources;
+            }
+            else if (sender == wallsToolStripButton)
+            {
+                ActiveToolType = ToolType.Wall;
+            }
+            else if (sender == waypointsToolStripButton)
+            {
+                ActiveToolType = ToolType.Waypoint;
+            }
+            else if (sender == cellTriggersToolStripButton)
+            {
+                ActiveToolType = ToolType.CellTrigger;
+            }
+        }
+
+        private void UpdateVisibleLayers()
+        {
+            MapLayerFlag layers = MapLayerFlag.All;
+            if (!viewLayersBoundariesMenuItem.Checked)
+            {
+                layers &= ~MapLayerFlag.Boundaries;
+            }
+            if (!viewLayersOverlayMenuItem.Checked)
+            {
+                layers &= ~MapLayerFlag.OverlayAll;
+            }
+            if (!viewLayersTerrainMenuItem.Checked)
+            {
+                layers &= ~MapLayerFlag.Terrain;
+            }
+            if (!viewLayersWaypointsMenuItem.Checked)
+            {
+                layers &= ~MapLayerFlag.Waypoints;
+            }
+            if (!viewLayersCellTriggersMenuItem.Checked)
+            {
+                layers &= ~MapLayerFlag.CellTriggers;
+            }
+            if (!viewLayersObjectTriggersMenuItem.Checked)
+            {
+                layers &= ~MapLayerFlag.TechnoTriggers;
+            }
+            ActiveLayers = layers;
+        }
+
+        private void viewLayersMenuItem_CheckedChanged(object sender, EventArgs e)
+        {
+            UpdateVisibleLayers();
+        }
+
+        private void toolTabControl_Selected(object sender, TabControlEventArgs e)
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+        }
+
+        private void developerGenerateMapPreviewMenuItem_Click(object sender, EventArgs e)
+        {
+#if DEVELOPER
+            if ((plugin == null) || string.IsNullOrEmpty(filename))
+            {
+                return;
+            }
+
+            plugin.Map.GenerateMapPreview().Save(Path.ChangeExtension(filename, ".tga"));
+#endif
+        }
+
+        private void developerGoToINIMenuItem_Click(object sender, EventArgs e)
+        {
+#if DEVELOPER
+            if ((plugin == null) || string.IsNullOrEmpty(filename))
+            {
+                return;
+            }
+
+            var path = Path.ChangeExtension(filename, ".mpr");
+            if (!File.Exists(path))
+            {
+                path = Path.ChangeExtension(filename, ".ini");
+            }
+
+            try
+            {
+                Process.Start(path);
+            }
+            catch (Win32Exception)
+            {
+                Process.Start("notepad.exe", path);
+            }
+            catch (Exception) { }
+#endif
+        }
+
+        private void developerGenerateMapPreviewDirectoryMenuItem_Click(object sender, EventArgs e)
+        {
+#if DEVELOPER
+            FolderBrowserDialog fbd = new FolderBrowserDialog
+            {
+                ShowNewFolderButton = false
+            };
+            if (fbd.ShowDialog() == DialogResult.OK)
+            {
+                var extensions = new string[] { ".ini", ".mpr" };
+                foreach (var file in Directory.EnumerateFiles(fbd.SelectedPath).Where(file => extensions.Contains(Path.GetExtension(file).ToLower())))
+                {
+                    GameType gameType = GameType.None;
+
+                    var ini = new INI();
+                    using (var reader = new StreamReader(file))
+                    {
+                        ini.Parse(reader);
+                    }
+                    gameType = ini.Sections.Contains("MapPack") ? GameType.RedAlert : GameType.TiberianDawn;
+
+                    if (gameType == GameType.None)
+                    {
+                        continue;
+                    }
+
+                    IGamePlugin plugin = null;
+                    switch (gameType)
+                    {
+                        case GameType.TiberianDawn:
+                            {
+                                plugin = new TiberianDawn.GamePlugin(false);
+                            }
+                            break;
+                        case GameType.RedAlert:
+                            {
+                                plugin = new RedAlert.GamePlugin(false);
+                            }
+                            break;
+                    }
+
+                    plugin.Load(file, FileType.INI);
+                    plugin.Map.GenerateMapPreview().Save(Path.ChangeExtension(file, ".tga"));
+                    plugin.Dispose();
+                }
+            }
+#endif
+        }
+
+        private void developerDebugShowOverlapCellsMenuItem_CheckedChanged(object sender, EventArgs e)
+        {
+#if DEVELOPER
+            Globals.Developer.ShowOverlapCells = developerDebugShowOverlapCellsMenuItem.Checked;
+#endif
+        }
+
+        private void filePublishMenuItem_Click(object sender, EventArgs e)
+        {
+            if (plugin == null)
+            {
+                return;
+            }
+
+            if (!PromptSaveMap())
+            {
+                return;
+            }
+
+            if (plugin.Dirty)
+            {
+                MessageBox.Show("Map must be saved before publishing.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+
+            if (new FileInfo(filename).Length > Globals.MaxMapSize)
+            {
+                return;
+            }
+
+            using (var sd = new SteamDialog(plugin))
+            {
+                sd.ShowDialog();
+            }
+
+            fileSaveMenuItem.PerformClick();
+        }
+
+        private void mainToolStrip_MouseMove(object sender, MouseEventArgs e)
+        {
+            mainToolStrip.Focus();
+        }
+
+        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            e.Cancel = !PromptSaveMap();
+        }
+
+        private bool PromptSaveMap()
+        {
+            bool cancel = false;
+            if (plugin?.Dirty ?? false)
+            {
+                var message = string.IsNullOrEmpty(filename) ? "Save new map?" : string.Format("Save map '{0}'?", filename);
+                var result = MessageBox.Show(message, "Save", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
+                switch (result)
+                {
+                    case DialogResult.Yes:
+                        {
+                            if (string.IsNullOrEmpty(filename))
+                            {
+                                fileSaveAsMenuItem.PerformClick();
+                            }
+                            else
+                            {
+                                fileSaveMenuItem.PerformClick();
+                            }
+                        }
+                        break;
+                    case DialogResult.No:
+                        break;
+                    case DialogResult.Cancel:
+                        cancel = true;
+                        break;
+                }
+            }
+            return !cancel;
+        }
+    }
+}

+ 6856 - 0
CnCTDRAMapEditor/MainForm.resx

@@ -0,0 +1,6856 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="mainMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="mainStatusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>152, 17</value>
+  </metadata>
+  <metadata name="mouseToolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>289, 17</value>
+  </metadata>
+  <metadata name="mainToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>418, 17</value>
+  </metadata>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="mapToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="smudgeToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="overlayToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="terrainToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="infantryToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="unitToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="buildingToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="resourcesToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="wallsToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="waypointsToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="cellTriggersToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+        YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+        0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+        bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+        VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+        c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+        Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+        mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+        kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+        TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+        1v9Ebpz/RG+f/0qIzv9LitH/OGOS/ywzP/8sM0P/JSsy/yQqO/8hKDj/HyYt/iUsNu0WGrf/CAre/yUs
+        b/8ICtT/Fhqi/zlae/9VkdX/VI3N/0lsk/9FZYf/UX+y/1F/sv9FZoj/RWiO/1OMzf9Pi9D/OFp//y40
+        QP8tM0L/Jiwz/yYsPf8kKjj/HyYs8SYtMMkfJJ3/BQbp/yMpe/8RFLb/DA3K/zRGaf9SgbT/S2J8/0ZP
+        W/9FYX//UHaf/05znP9FYX//Rk9b/0xiff9RgLX/NEdb/zI3Rf8vNUH/Jyw1/yguP/8mLDn/ISguzict
+        LIkpL3X/Bwjo/xkcp/8hJoH/BAXl/yMpi/8/S1T/SE1W/0lYav9kls3/cKnn/3Os6v9lmND/SVhr/0hO
+        Vv89SVb/Nz5J/zg+Tf8vNTz/KzA7/yowQf8nLTb/IyowjyguMDovNU3oFhnM/wkL2/8oLW7/Exa8/wgK
+        2f8zN3b/RE1T/16Gr/94sOz/fLTu/3y18P97tPD/X4iz/0FKUv8+Q0v/QUZU/zo/S/8tMjj/MDVE/y0z
+        Qf8oLjXqJSwzPy85RQYvNTeeLzSN/wgJ6P8VF7T/LTJu/xAS0f8KC9n/MjeU/1Rnh/9pjKz/dJ7F/3Wf
+        xf9pi6z/UmWL/0VLcf9JTln/Q0hV/zM4P/8yN0P/MzhH/zA1P/8pLzWiLTZBBy81OwAuNDgxOT5P4CYp
+        vP8GBuj/Gx2h/zQ4dP8dH8f/Bgfm/xcXzP8xM67/P0Oi/z9Dov8uMK7/EhPP/xoczf9MUWn/OD1B/zY6
+        RP86Pk3/NjtH/y80OuMrMTg1KzE4ADhASgAQAAAANDk7ZD9EZfQkJsz/Bgfn/xcZr/83OnX/PUCe/ygp
+        0P8UFeP/DQ7m/w0O5v8VFuL/KCrM/zo9lP8+Qmf/SE1Z/0BEUv8+Q0//NjtC9S81O2j///8AMzpEAAAA
+        AAA4P0gANDxIBTk+QHdJTm/0MTTI/wsM6P8KC9L/HiCb/zw+hP9XWZX/YmSl/19iov9RVI7/Nzl9/xgZ
+        lv8QEc7/TlKg/0hNVf88QUj1Mzg+ezY9RwY2PUUAAAAAAAAAAAAAAAAAQEZPAD1FUQVARUdjT1Rm4UtP
+        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
+        KioaIiTfISt2/wUH6P8EBer/JC6L/yQtbP8FB+P/BAbo/yIri/85Q0//RE9d/zhkmP82esv/OX3O/zZ5
+        yP82ecb/NHfE/zN2wf83ZJb/RVFf/zU+Sf8jLDr/ISk9/yApO/8hKDD/Hycy/x4mOv8cIzj/HCUv/xkh
+        J+IcJCwwGB8mbR4mLvsXHbD/AQLv/w8Tz/8tOFj/EBW4/wEB8P8ZH6n/LzxL/0VOWP9NU1z/RlNi/zds
+        qv84e8n/O37L/z2Azf86fcr/O3Gu/0hUZP9OU1z/RU1Y/yo2Q/8kLDv/Iis//yMqOP8gJy3/HiY4/x0l
+        Of8dJTT/GiIp/BskK3UZICStIStG/w0Q1P8CAu7/Hiaf/yUuZf8FBuT/CArb/yw4ZP8yXYr/PVyB/0hP
+        WP9MUVn/PVp+/zh1uv88eL3/PHi8/zh0t/8/XoH/TFFZ/0ZMVv83Vnj/L1uK/yQtOf8kLD7/Iyw9/yIp
+        L/8fJjT/HiY6/x4mN/8dJS3/GyMqtRsiJNkiK2P/Bwjk/wUG6P8mMHT/GiCN/wEC8P8VGq//Kz5T/zl1
+        vP9Af8n/OGCP/zxPZP80QlH/Lklk/zBKZ/8vSWX/Lkhj/zRBUf85TGD/M1uH/z19xf86ecD/JzlN/yQr
+        Ov8kLD//JCs1/yAmL/8gJzv/Hyc6/x8nMf8cIyrfHCQl8SEpe/8EBer/CQve/yo0X/8SFq3/AQLv/x4k
+        hv8sSmj/PX7I/0aG0P9Bgcv/PXKu/zFKZf8+drX/RH2+/0F6uf8+drP/MElk/ztup/8+fsb/QoPM/0KE
+        zv8sS2z/Jy04/ycvQv8mLTn/IScu/yEpO/8fJzr/ICgz/xwjKfceJCb7HyeH/wME7P8MDtf/KzVZ/w4S
+        vP8CA+v/Iilx/zJWe/9Cgcn/S4nQ/0WDyf9DeLT/NVBs/0iEyf9PjdT/SYbK/0eBw/81Tmr/P3Os/0SD
+        yf9Hhs//R4nS/zBXgP8qMDr/KzNF/ykwPf8iKS//Iyo8/yEoO/8hKTT/HSQq/x8lJ/sgJ4n/AwTs/wwO
+        1f8rNFj/DhG+/wID6v8jKm7/NFl9/0aDyv9QjdL/SobL/0h7tf86VG//UozO/1eT2P9SjdH/TofH/zlT
+        bv9HerT/SYbL/0qIzv9KitH/MliC/ysxO/8tNEb/KjE+/yMpL/8kKzz/ISg7/yIpNP8dJCr/ICco8SQr
+        gv8EBer/Cwzb/yszWv8RFbT/AQLs/yEnff80U2//S4bK/1aR1P9RjND/UIO7/z5Wcf9YkdH/XJfa/1uW
+        2f9Wj8//PFVv/01/uP9RjdL/SoXI/0yJzv80VHb/LTM9/y40Rf8rMT3/JCkv/yYtPv8jKTz/Iik0/x4k
+        KvYhJynYKTBv/wcI5f8HCOP/KC9o/xkemP8AAe//GR2f/zNHV/9QiMj/XJfZ/1GBt/9KaIf/PUta/0Fd
+        fP9EYYH/Q2CA/0Ngf/88Sln/RmOB/1KDuv9WkNP/TYbH/zFFWv8wNUH/LzVG/ywyO/8kKjH/KC4//yUr
+        Pf8kKzT/HiQq3iIpLKssNFX/DhHZ/wME6v8hJov/Iypv/wME6P8MDsz/MDlU/0hzov9TeaP/RVFe/0hN
+        Vf9EVmr/T3mn/1eDsf9Tfqz/TXel/0NWa/9JTlb/SFNg/1F3of9Kdqj/LzdB/zM5R/8yOEf/KzE4/yYs
+        Nv8pL0H/Jiw9/yUsM/8gJy2zJSwyaywzPvscIL//AgPs/xUXvf8sM1H/DhHK/wEC6f8jKIz/N0VP/0ZP
+        Wv9JT1j/Rk1W/1N4oP9ro+H/cann/3St6v9tpuT/VXuk/0VMVv9JT1j/Rk9b/zRCUP83PEf/OD5N/zU7
+        SP8pLjP/LDE+/yowQf8oLjz/JSsx/CQrMnMrMzspKS8x3S0zj/8GBuj/CAni/ygtbP8jKIT/AwTp/wkL
+        1v80OWz/QEZI/0ZNVv9OZoH/bqTd/3Oq5f92ref/eLDr/3Wt6P9vpeD/TGaD/0ZMVv89Q0n/PEFI/z5E
+        Uv87QU//NDpB/ykuNf8wNUX/LDFB/ysxPP8kKjDhJy84LkBQYQIpLzOWNTxX/xcZ0/8DBOr/FRe6/zA2
+        T/8ZHbf/AAHs/xASzP89QXL/QkxT/1+Is/93run/fbXw/4K79P+Bu/P/f7jy/3qy7P9ijbn/P0pS/0BE
+        TP9FSlj/QkdW/zxBTP8rMTX/MTZC/zE2Rv8uNEL/LDI5/yYsM5wxPkwEMDc/AC41PTcwNjnoNTuZ/wgI
+        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
+        xf8CA+3/AwTs/wYI4v8uPH3/KzY8/xcdrv8BAu//AgPt/wYI4f8pNIH/MDxH/z5HVf9DUWH/M2GX/zZ6
+        y/83fM3/O3/R/zd8zf8zdsP/M3bD/zJ1wf8ydMH/MnXA/zBzvv80ZZn/RFNj/0BJVf8pMz7/Iis4/yEp
+        PP8hKT3/ICg8/yIqN/8gJir/Hycx/x4nOv8dJTr/HCQ4/xsjM/8eJy7/GCAm/xwkK34SGR4AGyQsDhkh
+        J7waIST/KTZ2/wYI5f8DBOv/AgPt/xkhuf8yPkX/Iitx/wUG5/8CA+3/AwTq/yMslP8xPUT/PkdS/01U
+        Xv9NU1z/RFBf/zZnn/81esn/NXjG/zd7yv86fcr/O33K/zl9y/83esX/N3rG/zZpof9FUmH/TVNc/01U
+        Xv9ASVT/KTI7/yMrOv8hKj3/ISk9/yApO/8kKzL/HyYq/x8oOP8dJTr/HCQ5/xsjNv8eJzH/GCAl/xoj
+        KcQeJzATGyMqOBceJOkhKzD/HSWn/wIC7f8DBOv/BAbm/y05gf8rNTz/Ehe8/wEC7/8BAu7/FBm8/zE9
+        TP8pN0X/Rk5Z/01TXf9MU13/TVJc/z9TbP83dLr/OHzJ/zl8yf88f8z/PoHO/zx/zP86fMb/O3nA/0NZ
+        dP9NUlv/TFNd/01TXf9FTVf/KThH/yYvOP8kLT7/JCw//yIrPv8jKzj/ICYq/yAnMv8eJjr/HSY6/xwk
+        Of8dJTP/HCQr/xohKO4eJy9BHCQrcBcdIvwoNEf/EBXL/wIC7P8CA+z/EBTO/zNAU/8jLGL/Bgfk/wID
+        7f8EBuP/LDZ1/zJBSf8vYZr/OFR0/0pQWP9NUlz/TVJc/0hPXP84Y5b/On7M/zl7xv8/gc3/P4HN/zl6
+        w/87fcj/Omeb/0lRXf9MUlz/TVNd/0VLU/8vSWX/MmWd/yUzP/8kLDf/JCw//yQsP/8jKz3/Iyow/x8m
+        K/8fJzj/HiY6/x4mOv8dJTX/Hygv/xkgJv4eJy98HCQrpRgfIv8rN2b/CArg/wMD6/8CAuz/Hyar/y45
+        Of8aIZj/AQLu/wEC7v8SF73/LzlD/zJPcP85fMr/PnzF/zVUd/9ASVP/Sk9X/0tRW/82TWn/NGCR/zVg
+        j/84ZJP/OGOU/zRejf81YZH/OFBr/0tRWv9ITlb/PEVO/y5MbP87esD/OX7L/ytLbf8jKS//JCs8/yQs
+        P/8jKz7/Ji44/x8lKP8gJzb/HiY6/x8mOv8eJTj/ISoz/xohJ/8eJi2vHSQrzRwjJf8oMoL/BAXp/wME
+        6v8DBOn/KTOI/ykyOP8RFcH/AQLu/wEC7P8iK47/KTI2/y5clP88fsv/RYfU/zx7xf80Y5n/M05s/zVB
+        T/8tOEP/KjxO/ys9T/8rPE7/KjtM/yk6S/8qO03/LThD/zI+S/8vSmb/L12Q/zp6wf9DhtD/PYHN/zNl
+        nf8jKzL/JS06/yQsP/8lLD//Ji48/yEnKv8gJzL/ICc7/yAoO/8eJjn/Iio1/xwjKf8dJSzWGyMp5iAo
+        Kv8kLZj/AgPr/wME6v8GCOL/Lzlt/yYuR/8KDdj/AQLt/wQG4/8rNWn/JTRB/zVws/8+f8r/SYnS/0GA
+        yf9Agcv/QoLK/zFPcP8wSWP/PXm8/0B8v/9Df8L/QXy+/z55u/8+erz/MUpm/zBLaf9Bgcn/PHvC/0GC
+        yv9Dhc7/Q4XQ/zx5vP8kM0H/Jy03/ycuQP8nLkH/Ji49/yMpLf8gJi//ISg7/yAoO/8fJjr/ISk1/x0k
+        Kv8cJCruHCIp9CIqLv8gKKj/AgPs/wME6v8KDdr/Mj1d/yMrV/8HCeL/AQLt/wgK1f8uN1L/JzxT/zp4
+        v/9Af8j/TIzU/0OByv9Dgcn/SYjR/zVTdf80TGf/RIPL/0iFy/9Pjtb/R4TJ/0WBxf9Fgsb/NE5q/zFM
+        af9Dg8n/P33C/0B/x/8/gMj/R4jR/z9/xv8nPlX/KC82/yoyQ/8pMUP/KC9A/yUsMf8hJy3/Iyo8/yEp
+        PP8gJzr/ISk2/x4lLP8cIyr8GyIo+yQsMf8dI67/AgPs/wMD6v8MD9X/Mj1V/yIpYf8FBuX/AQLt/wsO
+        y/8uN0f/K0Vh/z99xP9CgMf/T47V/0WCyP9Fgsf/SYfO/zVScv82Tmn/SofN/02L0f9PjtX/SYXJ/0eD
+        xv9IhMf/NlBt/zJMaf9Gg8j/RYLH/0iHzv9KitL/S4vT/0GCy/8qRmT/KS82/y00Rf8rM0T/KTFB/yct
+        NP8hJyz/JCs9/yIpPP8gJzv/ISk3/yAnLf8cIyn/HCIo+yUsMf8dI67/AgPs/wMD6v8ND9X/MjxT/yIp
+        Zf8EBub/AQLt/wwPyv8vOEX/LEZi/0F9w/9HhMr/UpDV/0qGzP9JhMn/TInO/zhUdP86U23/Uo/U/1OP
+        0/9Wk9j/UY3Q/06Iy/9Pisz/OlRw/zZRbf9MidD/SIXK/0iGzf9Ni9L/TIzT/0B+xf8rSGX/KjA2/y42
+        Rv8sM0X/KjFC/ycuNP8gJiv/JSs9/yIpPP8gJzr/ISk3/yAnLf8cIyn/HiUr8yUtMf8gJ67/AgPr/wMD
+        6v8MDtb/MTpU/yMrXv8FB+P/AQLs/woMz/8wOE3/LERb/0J8v/9IhMj/VpHU/0+Kzf9Lhcn/VZHV/zxY
+        d/87U2z/VZHV/1mU1/9altr/WJXZ/1SOz/9Ri8z/OlNu/zxWc/9Vktf/S4bK/0WAxP9Hg8j/T4zR/0WC
+        yP8rRV7/KzA3/y82Rv8tNEX/KjFB/yctM/8hJy3/Jy0//yQqPf8hKDv/Iik2/yAnLf8dJCv8ICYt5SUs
+        Lv8mLqL/AwPq/wQE6f8JC9//MDhh/ycvUP8ICt3/AQLs/wUH2/8vN13/KztI/0N7uf9Oic3/WpbY/1ON
+        z/9Ri87/WJXY/z9bef8/Vm//W5bZ/1qV2f9emdz/Xpre/1eS1f9bl9r/Pldz/zhSbf9Wk9f/VpHV/06I
+        yv9Khcf/TYnP/0aAwf8rPU7/LzQ8/y82Rv8tM0T/LDJC/yguM/8iJy7/Jy4//yUsPv8iKTv/JCo3/x8l
+        K/8eJSvtIikwzCMpK/8uNpL/BATp/wQE6P8GB+X/LDN2/yoxPv8OEc3/AQLr/wID5v8pMHn/LDY5/0Nz
+        qP9SjdH/XZja/1iS1P9Vjcz/UoCx/0BUaP87S1z/Sm6W/0xwmP9Ocpr/TXGZ/0twl/9Qdp7/PU9g/zlK
+        XP9Kdqf/WJHS/1WQ0/9Vj9L/TYnN/0J1rf8pMzz/MjdC/zA2Rv8uNEX/LTNB/yYsMP8kKTL/KC5A/yYs
+        Pv8kKjz/Ji04/x4kKv8fJi3UJS00oyAlJ/81Pnj/CAnj/wQF6P8DBOn/JSqW/ywzMv8YHa3/AQLs/wEC
+        7P8aH6P/Mjk6/zlaf/9Yk9f/ZJ/g/097rf9DV23/RU1W/0lPV/85Q07/MUJU/zRFV/81Rlj/NEVX/zND
+        Vf8wQFL/NkFM/0lQWP9HUFn/SV1y/056q/9cl9n/WJPW/zldg/8rMTX/MjhG/zE3R/8wNkf/LzVA/yMo
+        K/8nLDf/KS9A/yctP/8kKjz/KTA5/x4kKf8hKTCtKDA4bR8lKfs4QV7/ERPW/wME6f8DBOr/GRy9/y41
+        OP8lK37/AwTp/wIC6/8JC9D/Nj1a/y08Sf9RhcD/VHqk/0NNWf9ITVb/SU9Z/0hNVf9EYH//XZXR/2Sb
+        1/9ro9//Y5rW/1+V0P9cks//RGKD/0dNVf9JT1n/SU5X/0ZPW/9Qd6H/VYzJ/y09Tf8yNj7/NDpJ/zM5
+        Sf8yOEf/MTc+/yEmKv8qMD7/Ki9B/yctP/8lKzv/KjE5/x4kKv0kLTV5KzM8NiEnLegzO0P/Iie9/wID
+        6f8EBej/DA3c/y40XP8tNEv/DQ/S/wEC6v8BAun/IieW/zY+P/80SWD/RVBb/0pPWP9JT1n/SU9Z/0NL
+        Vv9UgLD/aKDe/2uj4P9wqOb/c6vn/2+n4/9rouD/V4S1/0FLVv9KT1n/SU9Z/0lPWP9GT1v/Nk1k/y80
+        Ov84Pkr/Nz1M/zY7S/80Okf/LTM3/yQpLv8uNEP/KjBB/ygtP/8nLTr/KC40/yEnLe0nMDk/LjhCDSct
+        NLkpLjD/Nj6W/wUG5/8FBef/BAXp/yQpmf8uNTL/Iiea/wIC6v8CA+n/BwnW/zg+bf80Ojr/QkhQ/0lQ
+        Wf9JT1n/RkxU/0hif/9sot7/bqTg/22k3/9yqeX/e7Pv/3Kq5v9vpuP/b6bi/0Zjgf9FSlL/SU9Z/0lP
+        Wf9ESlL/MDQ4/ztASf88QlH/O0FQ/zk/Tf83PUb/JSot/yswOv8vNUX/LDJC/yguPv8sMjz/JCku/yUr
+        MsIoMTsRLDM5ACwzO3AjKCv/QEhn/xMW1/8EBOj/BAXo/xET0v8uM07/MjhS/w8Sz/8BAur/AQLq/xMV
+        vv9DSmD/OD4//0NJUv9HTVb/RFht/2eZ0P93sOv/dazo/3Go4v97suv/ebLt/3Oq5f94sOv/eLDt/2eb
+        1P9BV23/RUtU/0VLVP80OT7/P0RM/0FHVP8+Q1L/O0FQ/zpATP8yODz/JCgt/zI3Rv8vNUT/LTJC/yow
+        Pv8vNT3/ISYr/ygvN3oqMDUALTU9AC84QScnLTPgNDo+/zI4r/8EBOj/BQbn/wUG6P8jJp3/LzQy/y81
+        g/8GB+P/AgPp/wEC6f8bHbX/S1Fl/z1CQv87SFf/ZZTH/3ix7f92ren/fbXu/3yz7P+Fv/b/hL70/3mx
+        6v+CvPP/frbx/3ew7/9qndH/OkpZ/zY6Pv8/REz/RUpX/0RKWP9ARlT/PEFP/zk/R/8lKiz/LzQ+/zQ5
+        SP8wNUT/LDFC/zA2Qf8rMDb/JSsx5SszPC4pMDkALzdAACs4RwEvNj6PJywv/0hQdf8UFtn/BAXn/wUG
+        5/8MDN3/Ki5o/zY8PP8pLaT/AwTo/wID6P8BAuj/GBq//01Ref9JUFD/Rllq/1+Frf91qN//f7bw/361
+        8P+CuvT/hb/3/3217/9+tfD/dqng/16Fr/9JXm7/SVBQ/0xRVf9HTFj/RktZ/0VKWP9CSFX/QEVP/y40
+        N/8oLTP/NzxL/zQ5SP8wNUX/LjRC/zQ7Q/8lKS7/KzI5mCcxPwMqMjwAAAAAADA3QAAyOkMtKzE34Dg+
+        Qv8+RKv/Bgfm/wYG5v8FBej/FBXI/yswS/8+Q0z/KSyx/wME6P8BAuj/AQLp/wwN1P88P6D/W15x/1JY
+        V/9MWWD/Vm2B/2B+nf9liaz/aIyu/2KCn/9Ua4H/TFhg/1FWVv9TVnT/PD+e/1dcdf9MUVj/R01a/0RJ
+        V/9CSFL/NTo//yYqLv84PUr/NzxL/zQ5SP8xNkX/NTtF/y0yOP8nLTPlLTU+NSw0PAAAAAAAAAAAAC83
+        QAAAABIAMjlBeiouM/1OVWj/KSzN/wQE5/8GBub/BQXo/xkat/8tMUT/REpT/zI1sP8HB+X/AQLo/wEC
+        6P8BAuX/FBbO/z0/r/9cX5P/Zml9/2Zpcf9jZmv/Y2Zr/2RncP9iZX3/VVeU/zQ2sv8PENT/AAHn/zE0
+        rv9ZXmP/SU5Z/0ZLVf84PUL/Jiot/zg9SP87QE7/OD1L/zU6Sf8zOET/Nz1E/ycsMf4uNT2DICs1ASwz
+        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
+        7f8DBO3/AgPw/wkM3/8gKaz/NEN5/ztLX/83RVD/MD1H/y07Rf8rOkb/KjpI/yk6Sf8sO0j/Lz1H/zNA
+        SP87S1X/QFBp/zVDh/8cJL3/Bgfp/xohxP84RlP/Hygu/x0mN/8dJjr/Iis4/x8mK/8dJCj/ISs0/x8o
+        Of8eJzv/HSY6/x0mOv8cJTr/GyM3/x0mMP8fKTD/Fh0j/xskK+IcJS0yGyQsAAAAAAAAAAAAAAAAACMt
+        NQA5RlQCGiIqiRoiKf8XHiP/NUVX/xYdwf8CAu7/AwTs/wME7P8CA+7/DA/U/zdJdv8qNjj/LjpL/xcd
+        tP8BAu7/AwPt/wME7f8DA+//BAXq/xkgt/81Q3X/NURU/yw4SP8nNkj/KEJf/ypQfv8sXJX/LWOl/yxl
+        qf8rZav/L2aq/zFjn/8rU4H/KURh/yo6S/8xP0r/Pk1e/zdEh/86SHH/JS8z/x4mM/8eJzv/Hic7/x0m
+        Ov8hKjj/HyYr/x4kKP8gKTP/Hic6/x0mO/8cJTr/HSU6/xwlOv8cJDT/ISsz/xkgJf8ZISf/GyMrligz
+        PwQhKzQAAAAAAAAAAAAcJCwAHCQsKRoiKd8UGiD/JzQ5/ys4jf8EBen/AwTs/wME7P8DBO3/BAbl/zA+
+        jv8vPUH/LDc//xsiq/8BAu7/AgPt/wMD7f8CAu//CArf/ygzkv84R17/KjZL/yU1Sf8pTXj/Lmaq/zN2
+        x/8yeMz/N3/T/zZ80P8ydsj/NXnM/zyD2f89hd7/NHvQ/y9zwf8sZaX/KU53/yc5TP8zQE3/LztH/yAo
+        Mf8fJzr/ICk9/yApPf8fJzv/HSU5/yIrN/8eJCf/HyYr/x8oNP8dJjr/Hic7/x0mOv8cJTn/HCQ4/xwl
+        MP8eKDD/FBsg/xsjKuYbJCwyGyMrAAAAAAAlLzcACw8SABoiKXkaISj/Fh0i/zNDWv8RFsv/AgPt/wME
+        6/8DBOz/AgPt/x4nsf85SVX/KDEy/yMtkP8DBOv/AgPt/wID7f8CAu//Cw3X/y88fv8zQlD/KDNH/ydA
+        XP8varD/NXnP/zN3y/81ecr/O4DT/z+F1/84ftL/M3fH/zuA0/87gdX/PIHW/zZ8zv80ecf/MnfE/zB1
+        w/8vbLD/KUVh/ygzQf8mLzz/Iis3/yApPP8iKj7/ISo+/yAoPf8fJzr/Iys1/x0iJf8gKC//Hic2/x4n
+        O/8eJzv/HCU5/xsjOP8bIjP/ICky/xgeJP8ZISf/GyMqhgAAAAAmMDcAHicvAB4mLhQaIinIFRsg/yYx
+        Nv8rOIz/BAXp/wME6/8DBOv/AgPt/woN1v85SnT/JzEy/ys2Zv8ICt3/AQLu/wID7P8BAu7/CQva/zA8
+        eP8xPUf/LjlK/0ZPW/8/UGT/L1+W/zZ6zP81ecr/OH3O/zuA0/87gNL/NHjJ/zJ0wf8ydcP/MXTA/zJ1
+        wf8xdMH/MnXC/zF0wP8vc7//M2ad/0FTZv9IUVz/MTxJ/yYvOv8iKzf/ISk8/yEpPf8hKj7/ICg9/x8o
+        OP8lLTP/HSIl/yApMv8eJzr/HiY6/x0lOf8cJDn/GyM3/xwlL/8fKC//Fh0j/xwkLNIdJS0bHicuABkg
+        JwAbIipIGiIo9RQaH/8yQU//Fh3B/wID7f8DBOv/AwTr/wID7P8lL6D/M0FG/yk0PP8VG7n/AQLv/wID
+        7P8CA+3/BAbk/yo2hP8zQEf/LTdE/0pSXf9OVF3/TFNd/z5LWv81ZZz/NnvK/zZ6y/82ecj/NnrK/zZ6
+        yP84esT/OHrF/zV6xv80d8L/M3W//zN1vv8zdsD/MmSa/0JRYP9NU13/TlNd/0pSXf8wOkX/Ji84/yEq
+        N/8hKT3/ISk9/yApPP8fJzv/Iyw5/yIoK/8fJir/ICg2/x4nO/8dJTr/HCQ5/xsjOP8aIjL/ICoy/xYd
+        Iv8aIin5HCQrVRggJwAAAAAAGiEojBceJP8cJCj/MD5y/wcJ4f8DBOv/AwTr/wMD7f8KDNf/Okpw/ygx
+        L/8mMHr/BAXo/wID7P8CA+z/AQLt/x4mof84RUv/KzQ9/0hQW/9NU13/TFNd/0xTXf9MVF7/Pk9k/zNs
+        rv82esj/NXjF/zd6x/87fs7/PX/N/z6Azv88gdD/PYPT/zp9x/88f8v/OnW5/0BUaf9NU13/TFNd/0xT
+        Xf9NU13/SVFc/y03QP8oMTn/Iys7/yIrPv8iKj7/ISk9/yApO/8mLjb/HSMl/yEpMv8eJjn/HSU6/x0l
+        Of8cJDj/HCM2/x4nMP8aIij/GB8l/xwlLJoxP0wDHiYtFBoiKMYUGh//KDM3/yMtm/8CAu3/AwTq/wME
+        6/8CAu3/Hiau/zZES/8oMTn/Exi9/wEC7/8CA+z/AQLu/w0Qy/82RFz/JzE4/yc4Sv9FTVf/TVNd/0xS
+        XP9MUl3/TFJc/0pSXf83Vnz/OXvH/zl8yf85fMj/OXzK/zx+y/8/gc7/PIDM/zl7x/84esL/O3zH/z1g
+        if9MUl3/TFJc/0xTXf9MUlz/TVNd/0JKU/8nOEr/JjA4/ycvOv8kLD//JC1A/yQsP/8iKj3/Iys4/yIo
+        K/8fJiv/Hyc3/x4mOv8eJjr/HSU5/xwkOP8cJDD/ICox/xYdIv8dJi3RHykyGxwkKzoaIijqFBof/y89
+        Sv8UGsD/AgLt/wME6v8DBOv/BAXk/zRBhf8qNDT/KDJm/wUH5P8CA+z/AgPs/wID6f8nMYj/NUFD/yk8
+        UP8uZqb/Mkpk/0pRWf9NU13/TFJc/0xSXP9NU13/Pktf/zlvrP86fcr/OXrE/zl6xP9Agcz/P4DL/zt8
+        xf83dr3/O33H/zhxsf9CUWT/TVNc/0xSXP9MUlz/TVNd/0NJUf8oPlT/M2yq/yc8Uf8jKzH/JCw6/yQs
+        P/8kLED/JCxA/yIrO/8mLjP/HSIk/yEpNP8fJjr/HiY6/x4mOv8dJTr/HCQz/yIrM/8XHSL/HSUs8B4n
+        L0YcJCxqGSAn+xkgI/8zQWb/Cgzb/wMD6/8DBOr/AgPs/w0Qzv87SWL/JS4t/x0ln/8BAu7/AgPr/wEC
+        7v8NEMn/NUJW/zE6Pv89ZpT/NnzM/zx4v/84UW3/QkhP/01SXP9NU13/TVNd/0RLWf80XIn/OnzF/zl4
+        v/87eb//QYDI/0B/yP86ecD/OHa7/z1+xv82YZD/Rk5Z/01TXf9NU13/TFJc/z1DSv8rQlr/N3O1/zqB
+        z/8wXY//ISgt/yUtNv8jKz3/Iys+/yQsP/8iKjz/Ji44/x8lJ/8gKC7/HiY4/x4mOv8eJjr/HiY6/x0l
+        N/8iKzT/GiEn/xsjKf0eJy94HSYtmRgfJP8fKCv/Lzt//wUG5/8DA+r/AwTq/wIC7f8cI7H/NEFH/ycw
+        PP8QFcj/AQLu/wID6/8BAu3/HyiZ/zI8Pf8jMEL/NG+0/zp9y/9ChdP/OnnC/y1ReP81Qk7/Q0lQ/0lP
+        V/9HT1z/Lz1N/y9EWf8wRFr/MEVa/zBFWv8wRFr/LkNY/y5CV/8vRFn/MD5O/0dOWv9HTVX/P0VL/zA7
+        Rv8nSW3/N3a8/0KH0/86fsn/NnW6/yY1Rv8jKS7/JCs7/yMrPv8kLD//Iys+/yYuPP8jKi3/HyUp/yAo
+        N/8fJzr/Hyc7/x8nO/8eJjn/ISo0/x4mLf8ZICb/Hicvpx8nLr8XHSP/JjAz/yYwmf8DA+z/AwTq/wME
+        6v8CA+r/KTOX/ys1M/8oMVn/Bwng/wID7P8CA+z/BAXj/y86cP8oLzD/J0Ro/zV2wP8+f8v/SIjU/0KD
+        z/87fMb/NGqo/y5ReP8tQVb/LjY+/yk1Qf8oO07/KTtO/yk7Tv8pOk3/KDpM/yc5S/8oOUv/KDtN/yk1
+        Qv8tNDv/Kz5R/ytNcf8wZZ//OHjA/0KEzf9Dhc//PH/K/zt/yv8rSm3/Iicq/yYuOv8kLD//JSw//yUt
+        QP8lLT3/Ji40/x0iJf8hKTX/ICc7/yEoPP8gJzv/HiY6/yAoNP8iKzP/GB8k/x8oMMseJi3aFhwg/y04
+        Pv8fJ6v/AgLs/wME6v8DBOr/AwTk/zM/gf8mLin/JS14/wME6v8CA+v/AQLt/woMzv82Qlb/IScu/y5Z
+        jv86fMf/Pn/J/0qL1P9Dg8z/P37G/0GBy/9Dg83/OnGv/yoyO/8yU3X/PXzB/z16vv9CgMb/Q4DE/0F9
+        wf8/e8D/PXm7/z99wf80VXn/KC81/z5yrf9Cg8z/O3rA/z59xf9Fhs//Q4bQ/0GDzv9Dh9P/MWGU/yEn
+        K/8nLjf/Ji4//yYuQP8mLkD/JSw9/ygvN/8dIiT/ISkz/yAnO/8hKDv/ICc7/x4mOv8fJzT/Iy00/xcd
+        Iv8eJy7lHycu6hUaH/8yPUb/GyG7/wIC7P8DBOn/AwTr/wcI3v85RnL/JCsn/yEpkP8BAu3/AgPr/wEC
+        7v8SFrb/NkJH/x8oM/80aab/PH3G/z5+yP9MjNX/RITN/z9/yP9Dgsn/SYnQ/z91s/8sNT7/NFR2/0SE
+        zf9Egcf/SIbM/02L0v9Gg8j/RYLH/0OAw/9Fg8n/N1l9/ykwNv87bqb/RITM/z58wf8+fsX/QIHJ/z1+
+        x/9EhtD/RojS/zVtqf8hKzT/KC82/ykxQf8oMEL/KDBC/yYuQP8oMDn/HyQm/yIpMv8hKTv/ISk8/yAo
+        O/8fJjr/HyY0/yUuNv8XHCH/Hycu9h8mLvQWGyD/Mj1L/xYbxv8CA+v/AwTp/wME6/8KDNP/PEln/yMr
+        KP8cI6H/AQLu/wID6v8BAe7/GB6k/zQ+P/8hLz7/O3W4/zx7wv9BgMf/UI/X/0iHzv9BfsX/RYLJ/0yK
+        0v9AdbH/LTU+/zZVdv9Hhs7/RoPJ/06N1f9Sktr/SITI/0aCxf9GgsX/R4TI/zdYfP8qMTf/PG+m/0SD
+        yv9BfcL/QH/G/0KByf9Cg8z/SIjQ/0iJ0v84dLb/JDNC/ykvNf8sM0P/KzNE/yoyRP8oMEL/KTE7/yAl
+        KP8jKjH/Iys9/yIqPf8hKDv/ICc7/yAnNv8lLjb/GB4j/x8nLv4eJSz6Fhsg/zM+T/8TGMf/AgPr/wME
+        6f8DA+v/Cw3R/zxIY/8kLCr/GiCo/wEC7f8CA+r/AQHu/xwilv8zPDr/JDRG/z97v/8+e8H/Q4HH/1KQ
+        2P9Jhsz/Qn/E/0aCx/9Kh8//QHSv/y42Pv83Vnj/TIvS/0uHzP9SkNn/TYvR/0mFyf9JhMf/RoLF/0qG
+        yv86XID/KzI4/zxto/9Hhcr/R4TJ/0aFy/9MjNT/S4vU/0uK0v9JitT/Oni8/yY5TP8pLzT/LTRE/yw0
+        Rf8rM0T/KTFC/yoyPP8iJyr/Iikv/yQrPP8iKj3/Iik8/yAnOv8gJzb/Ji83/xkfJP8eJi3/HyYt+hcc
+        IP8zPk7/ExfG/wID6/8DBOn/AwPr/wwO0/87R2H/JSws/xkerf8BAe3/AgPq/wEB7v8dI5X/Mzw6/yM0
+        Rf9Aer3/QX3D/0iFzP9Uktj/TIjO/0eEyv9Jhcn/S4jM/0F1r/8vNz//PFt9/1WT2f9Nh8r/V5PY/1SR
+        1v9RjND/UIzP/0uFxv9QjM//PmCF/y40Ov9Acaj/TIvT/0mGy/9HhMn/TYzT/06M0v9NjNT/Q4LK/zt2
+        uP8mOUz/Ki80/y82Rf8uNUb/LDNE/yoxQ/8rMjz/Iygr/yEnLf8lKz3/Iyo9/yEoO/8gJzr/Hyc2/yYv
+        N/8ZHyT/HyYu/yAoL/QXHCD/ND9P/xUayP8CA+v/AwTp/wMD6/8MDdH/OkVf/yQsKv8aIKT/AQLt/wID
+        6v8BAe7/GyCY/zU+Pf8mNUT/QXq6/0F9wf9IhMn/VZHU/1KO0/9Ig8j/TIbK/1SQ1P9Kfbf/MTlA/z1b
+        e/9Xldz/VI/T/12a3v9al9z/U4/T/1SP0v9Ri8z/UY3O/zxcf/8xOD7/Snuy/1GP1v9IhMj/RIDE/0WC
+        x/9LiMz/UY7U/0mIz/89eLr/JjhJ/yovNP8vNkX/LzZH/ywzRP8qMUP/KjE7/yIoKv8iKC7/Ji0+/yQr
+        Pf8jKTz/ISc7/yAmNv8nLzf/GR8k/x8nLv4jKzLpFxwg/zZBTf8aH8P/AgPr/wME6f8EBOr/CgvY/zlE
+        Zf8kLCj/HiWc/wEC7f8CA+r/AQLt/xUaqP84QkT/Iy44/z91sP9DfsD/S4bK/1eT1P9VkdT/S4XH/02H
+        yv9Xk9b/TH61/zI5Qf8/XHv/V5PX/1eR0/9ZlNf/WpXX/12Z3/9Zldn/UYrJ/1SP0f89XYD/MDY8/01+
+        tP9Zltr/UYzP/0mDxP9GgMP/RYHF/06Lzv9Oi9D/QHi3/yUyPf8sMjj/LjVE/y82Rv8tNEX/KzFC/ysy
+        O/8iJyn/JCox/ycuP/8lLD7/Iyo8/yEoO/8gJzX/Jy83/xkeI/8hKTD1JCsz2BgdIf82QEb/ICa2/wIC
+        6/8EBOj/BATp/wYH4P84QXX/JCsl/yQsiv8CAuv/AgPq/wEC7f8OEb3/OkRN/yQrL/89a57/SYPH/1CM
+        0P9bl9r/WZPV/06Iyv9TjdD/WJPV/1CCuv80PEP/QV9+/1+b3/9aldf/Wpba/2Gc3v9emt3/WZTY/1iS
+        1P9fneH/QmOG/y40Ov9Gdqr/VpPW/1eU2P9SjM7/T4nL/0qFx/9Mic7/SofM/0Bxpv8kLDL/MTc//zA2
+        Rv8vNUb/LDNE/ysyQv8uNT7/ICUn/yQqMv8nLT//Ji0//yQrPf8iKTz/Iig1/ycuNf8YHSH/ISkx4yQs
+        NL0aHyT/Mjs//ykwqf8DA+r/BATo/wQE6P8EBOb/MjqH/yYsJ/8rM3D/BAbm/wID6f8CA+v/BgjT/zZA
+        Xf8oLi7/Nll//06JzP9Ri8//XJja/1qU1P9Vj9L/WpXX/1mPzP9OeKT/Nj5F/ztSbP9Rf7T/UX+y/1SC
+        tv9VgrX/UoCz/1J/sf9SgLT/XIzA/0Jcdf8wNjv/P2WP/06Ewf9bmd//VZDU/1WP0f9UjtH/TIjN/0qG
+        yv86YYv/JSot/zM6Q/8wNkb/MDZG/y00RP8sMkH/LzU8/x4jJf8nLTf/KC5A/yYtPv8mLD7/JCo8/yQq
+        Nv8nLjX/GR4j/yEpMckmLjaWHSIn/ysyNP81PpX/BATo/wQE6P8EBej/AgPq/ycuof8pMC7/LjdT/woM
+        1/8BAur/AgPp/wID5v8qMnn/Mzo4/yo9UP9Qicr/VpDS/2Od3/9fmdv/UITA/0Vni/9AUWH/Q0xV/0ZO
+        Vf82PEL/MTc8/zI4P/8yOT//MzlA/zQ6Qf81O0L/Mzk//zE3Pf80Oj//Rk5V/0RNVv9DU2L/TnCU/0+E
+        v/9altn/WJLU/1OO0P9LhMb/LURb/ysvM/8yOEP/MDZH/zE3R/8vNUb/LTNA/y00Of8dISP/KTA8/ygv
+        QP8nLT//Jiw+/yQqPP8mLjj/JSwz/xsgJf8iKjKkKDE6ZyIoLvoiKCr/Pkl8/wkK4f8EBOj/BAXo/wME
+        6v8ZHb7/MThA/y01Of8WGrn/AQLs/wID6f8BAuz/Fhql/z5HSv8kLDL/SHes/1mU2P9ppOX/UH2v/zxN
+        Xf9ESlH/SU9Y/0pQWf9LUFn/M0dc/ztgh/89YYj/QmaL/0Jli/9AY4n/PF+E/zpdgv85XYP/Mkdd/0lP
+        V/9KUFr/SlBZ/0lOVv9BUWD/T3qq/2Cc3/9dmdz/Snux/yQtNP8zOT//MzlH/zE3R/8xN0f/MTdH/zA2
+        Qf8qMDT/HiIm/ysxP/8pL0H/KC4//yYtPv8kKjv/KjI7/yIoLf8fJSr9Iyw0dSkxOjclLDLoHSIm/0RP
+        Zv8TFtH/AwTp/wQF6P8EBen/CwzY/zc/Yv8nLSj/Jy6M/wID6v8CA+n/AgPq/wYH1f84QGX/MDU1/zFK
+        ZP9Wjs7/VHyn/0BLVf9ITVX/SU9a/0lPWf9KUFr/Q0lQ/0dslf9noeH/Zp7d/3Ou7f90r+//bKXk/2ih
+        3/9lntz/ZJ7d/0pxnf9BSE7/SlBa/0lPWf9JT1n/Sk9Y/0NNV/9Pd6H/W5XX/zdTcv8nKy3/NTpE/zQ6
+        Sf80Okn/MzlJ/zI4R/8zOUH/JCot/yQpLv8rMUH/KjBB/yguP/8nLD7/JSo5/y42Pv8eIyj/Iikw7yQt
+        N0MqMzwSKTA4wxsfJP8/SE//Jyy3/wID6v8EBef/BQXo/wQE5/8vNZH/Jisn/zM8Wv8KDNf/AQLq/wID
+        6f8BAuv/HCCb/0NMTf8lLTP/PVyA/0FMV/9KUFn/SU9Z/0lPWf9JT1n/SlBZ/zxIVf9Zi8L/Z5/e/2ed
+        2v9tpeP/babk/2+n4/9yqub/aqLf/2ig3f9dj8f/OklY/0pQWP9JT1n/SU9Z/0lPWf9KT1n/QkxW/z5f
+        g/8mMDj/NTpA/zc8Sv83PUz/NjtL/zU7Sv80OUb/MzpA/x4iJP8rMTv/LTND/yswQf8pLkD/Jyw+/yYr
+        OP8uNT3/HCAl/yYtNc4lLjcZGRoZACszO4ggJCn/MDc5/z1Flv8FBub/BAXn/wUF5/8EA+r/Gh3B/zE4
+        QP8wNzf/HySm/wEC7P8CA+j/AgPq/wUG2P83Pm//OkFB/yswNP9JUFj/SU9Z/0lPWf9JT1n/SU9Z/0RK
+        Uf9HaIv/aaDe/2qh3v9rot7/cKfk/3Or5/99tvH/dq/q/26l4v9tpeH/bqbj/0lskf9ARk3/SlBa/0lP
+        Wf9JT1n/SU9Z/0pQWf8sMzb/MDU5/zxCTP87QVD/OkBP/zk+Tv83PEz/NTtE/y0zN/8fIyX/MDVD/y40
+        RP8sMkL/KS9A/ycsPf8qMDr/KS81/x8kKf8oLziWKTVBAioyOgAsND1EJy008yEmKf9LVHH/EhXV/wQE
+        6P8FBef/BQXo/wcI4f80O3n/Jisn/zY+Z/8JC9r/AQLp/wID6P8BAuv/ERO4/0dQX/81Oz3/OD1D/0lQ
+        Wf9IT1j/SE9Z/0dMVP8+Umf/Y5fR/3ev6/9xqOT/baPe/22j3v9xp+P/e7Pv/3Sr5/9xqOT/cajk/3iw
+        7P9kmtX/O1Fo/0VKUf9JUFn/SE9Y/0lQWf88QUj/MDU5/z5ETP89QlD/PUNS/zxBUP86QE//OT9L/zg+
+        RP8hJif/KS41/zE2Rv8vNUX/LTND/yswQf8oLTz/MThA/yElKv8kKjH4KDA5USYuNwAsND0AKzQ9Eiwz
+        O8UeIib/Q0tQ/y82tP8DA+n/BQXn/wUG5/8DBOn/HyK5/y4zOv80Ozr/Jyyd/wID6v8CA+j/AgPo/wEC
+        6P8fIaH/UFhd/zQ6PP86QEb/SVBa/0dMVP89TFz/X4/D/3Wt6f94sOv/eK/q/3Go4v90q+X/gLnx/3uz
+        7/9zquX/dazn/3mx7P97s+//cann/2OWzP83SFr/RElQ/0pQWv89Qkr/LzM3/0JIT/9DSVX/QEZU/z5D
+        Uf88QVD/OkBO/zk/R/8wNjr/HiIk/zM5Rv8xNkb/LzRE/y0yQv8rMEH/KzE8/zI5QP8dISX/KC83ziYv
+        OBgnLzgALTU+AC42PQAuNj90Jisx/yswM/9NVob/Dg/e/wQF5/8FBuf/BQbn/wcI4v8yN3//Jion/z9H
+        Wf8VGMb/AQLr/wID6P8CA+n/AgPk/ycqmf9XX2P/OT9B/zY6P/8/UGL/YpPH/3au6v93rur/dKrl/361
+        7/96ser/gbnx/4fB+P+Gv/X/fLTt/3uz6/+EvvT/gbny/3Ss6P94sfD/Z5vS/z1RZP83Oz//NDg8/0FG
+        Tv9ESVX/REpY/0NJV/8/RFP/O0BP/zpASv84PkT/HyQl/ywxOP81Okn/MjdG/y80RP8tMkL/KzFA/zQ6
+        Q/8pLjP/Iygu/yoyO4AzMjoAKjM7AAAAAAAuNj8ALjZAJS82PdsfIib/TFVd/y8zu/8DBOj/BQbm/wUG
+        5/8FBen/FRfK/zE1TP8uNDH/PUR2/wsN2v8BAun/AgPo/wID6f8CAuP/Jiii/1xibv9GS0r/LzlC/1Z2
+        mP9wotf/ebHt/3qy7v9+tfD/frXu/3qx6/+BufP/iMH2/3uy6/95sOr/g7z1/4C58/93ruv/c6fe/1x/
+        of8zPkf/ODw+/0dMVP9FSlb/Rkxa/0ZMWv9ESlj/QkdW/z9EUP89Q0r/KjAz/yImKv83PEr/NTpJ/zI3
+        Rv8vNUT/LTJD/y0zPv83Pkb/HyMn/ysyOeIqMjstKjE6AAAAAAAAAAAAMjpDAC4/TQExOUKDKC0y/zA1
+        OP9VXor/EBLc/wQF5/8FBub/Bgbm/wUF6P8lKKj/Ki4x/ztBQP85Po3/CAnh/wEC6f8CA+j/AgPo/wEC
+        5v8aG7f/VlqB/2FmZP89QkH/N0NO/1Nvjf9umsj/fK/m/4G48f99tO//hL33/4W+9/+FvvX/e7Ls/3mt
+        5P9umcj/UW6N/zlFUf8+QkH/XmNj/2Npbf9KT1b/SE5a/0ZLWf9FS1j/Q0hW/0JHVP9BRk7/NDs//x4i
+        JP80OUT/OD1L/zY7Sv8zOEf/MDZF/y80Qv84Pkf/KzA1/yQpLv8sNDyQJC05AiszPAAAAAAAAAAAAAAA
+        AAAuNkAALzdAJDI5QdUiJir/TlVa/z9Fs/8FBuf/Bgbm/wYG5v8GBuf/CAjj/ywvif8nKyn/RUtM/zs/
+        l/8JCuH/AQLo/wID5/8CA+f/AQHp/wkK0/83OaL/aGyD/2lta/9MUE3/PEJF/0NPWv9QZXf/WXSP/2B+
+        nP9gf5z/X3uU/05jeP9CT1v/PUNF/0xQTP9mamn/XGGG/ygqrP9HSpT/W2Fh/0lOV/9JTlv/RktZ/0NI
+        Vf9CR1D/OT9E/x4iJP8yNj7/O0BO/zg9S/81Okn/MzhH/zE1Rf8zOEP/OUBH/yAjJ/8tNDveLDM8LSsz
+        OwAAAAAAAAAAAAAAAAAAAAAAMTlCADk9RQAyOUJsLjM5+iouMv9gan//JSjP/wQE5/8GBub/Bgbm/wUF
+        5/8MDNz/LTF2/yktKv9KUVL/Q0eY/w0O3v8AAen/AgPn/wID5/8BAun/AAHm/w4Pzf84Oqz/ZWiY/3l9
+        if92enj/am5p/19iXf9ZW1b/WFtW/19iXf9qbWn/c3d3/3N3iP9ZW5j/Ky2y/wgJ1v8AAOr/ERLQ/15j
+        ff9SV1v/Sk9a/0dMWP9FSlL/PEJH/yEkJv8vMzr/PUJQ/zo/Tf84PUz/NzxK/zM4R/8wNkH/PkRM/ygs
+        Mf8pLjT9LzY/eAABAAAtNDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAvNj8ALTQ9ETU8RLQoLDH/P0VI/15m
+        m/8TFd3/BQXn/wYG5v8GBub/BQbo/w8P2P8tMHP/KS0r/0tRUP9TV47/HiDT/wEC6f8BAuf/AgPn/wID
+        5/8BAun/AADo/wQF3f8VFsv/LS66/0RGsf9WWK7/W16t/1terf9TVa3/P0Cx/ycovf8PEM7/AgPg/wAB
+        6f8CA+j/AgPn/wAB6P8qLLP/YGZt/0tQV/9HTFP/O0BF/yAlJv8vMzn/P0RR/z1BUP87QE7/OD1L/zY6
+        Sf80OEb/O0JK/zQ5P/8kKCz/MThAvSsyOxYsMzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMzpCADM6
+        RAAzOkM4Nz1F4CUoLf9UWl7/Ulmt/woL4/8FBeb/Bgfm/wcH5v8GBuf/DhDc/ysufv8qLS3/RUtI/2No
+        fv8/Qb3/Dg/i/wAA6f8BAuf/AgPn/wID5/8CA+j/AQLp/wAA6f8AAOj/AADk/wAA4/8AAOP/AADl/wAA
+        6P8AAen/AQLp/wID5/8CA+f/AgPn/wEC6P8BAen/GRrV/2Nohv9RVlr/OD1B/yAkJf8zNz7/QUZT/z9E
+        Uv8+Q1H/O0BO/zk+TP82Okj/Oj9I/z9FTP8kJyv/MTc+5i81PkEvNT4ALjQ8AAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAA1PEYA////ADg/SGQ1O0L0KCwv/2BncP9HTLr/CAjk/wUG5v8HB+X/Bwjm/wYH
+        5/8LC+H/JSeZ/yksOf84PDn/Ymlr/2hsn/87Pcz/DxDj/wEB6P8AAOf/AQLn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8BAuf/AADo/wID5/8XGN//RkjA/2ZqjP9VW1//Mzc4/ygr
+        LP89QUj/R0xZ/0JHVf8+QlD/PkJQ/ztATv85PUv/PUJM/0VLUv8mKi7/MTc99zQ7RHAZGycBLzU+AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ7QwAwN0AHOUBIiDI3PfsvMjb/a3N9/0lO
+        w/8JCeT/Bgbl/wcI5f8HCOX/Bwjm/wgI5v8aG77/KCpd/ywvL/9KUE3/cHZ6/3d7pv9YWsn/Li/e/xAR
+        5f8DBOf/AADn/wAA5/8AAOf/AADn/wAA5/8AAOf/AADn/wAB5/8FBuf/FRbk/zU22P9dX7//dHeW/2Vq
+        bP9CR0X/JScp/zU4Wv+GjZr/T1Rc/0ZKV/9ESVf/QEVT/z5CUP88QU7/P0RO/0pQWP8rLzT/LzM5/TY8
+        RZQtNDwKMDc/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjlBADA3
+        PxA6QEifMjY8/jE0OP9wd4P/UVbF/wsL5P8GBuX/Bwjl/wgI5f8ICOX/Bwjo/w0O3P8fIJz/ICFF/y8y
+        Mv9LUEz/b3V0/4WJlv+Eh7T/dHbJ/11e1/9KTN7/QEHi/zY34/81NuP/QEHg/0xO3P9hYtT/dXjD/4OG
+        qv99gov/ZWpp/0JHRP8mKSn/ExQ6/xMUlP8QEdX/cXbC/3R7gP9ESVL/QkZT/z9EUv89Qk//QkdS/05V
+        Xf8vMzj/LTE2/zc+RqoxOEEVMjlCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAA2PEUANDpDFj5FTaY1OT/9MjY5/3V9h/9jacX/FRbg/wUF5f8ICOX/CAjl/wgJ
+        5f8ICeb/CAjo/w0O1v8ZGp3/GBpT/ykrN/9BREL/Wl9a/25zb/98gYD/hIqM/4qPlf+LkJv/i5Cb/4qP
+        lf+Ch4r/d3x8/2VqaP9QVVH/ODs5/yEjMP8RE0v/CwyR/wkK0/8HCOj/Bgbn/x0f1P+Ei6n/VFle/0FF
+        UP8/RFD/RUpT/05UXP8wMzj/MDQ5/zg+RrEvNT0dMjhAACsrNQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALykmADc9RQA0OkIWQUhQnzs/RfsxNTn/bnV6/3mA
+        vf8sLt3/Bgbl/wcI5f8ICeX/CAnl/wkJ5f8JCeb/CAno/woK3/8NDbv/FhaO/ykpb/9CQ2X/WVtq/2tt
+        cv90dnf/dnl5/3N2d/9sbm//XV9k/0pLWv80NVf/HyBk/xESif8LDLr/CQne/wgJ6f8ICeb/CAjl/wgI
+        5f8FBeT/P0LC/3yDjf9FSVD/TFJa/05TW/8tMDT/Mzc9/TtBSakxOEAcNDpDAC83PgAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPENLADk/
+        SBBFS1SIQUZN9DAzN/9bYWT/jZWx/1Za1f8TFOL/BQbl/wcI5P8ICeT/CAnl/wkJ5f8JCeX/CQno/wkJ
+        6P8JCuP/DA3X/xMUyv8eHsP/Jye6/y0tuv8sLLr/JSW3/xsbv/8REsf/DAzW/woK4/8JCuj/CQro/wkJ
+        5f8ICeX/CAnl/wgI5P8HB+T/BATl/xcY2v+Ah7D/a3F4/0dMU/8uMTX/Oz9G9j5ETZMyOEAUNjtEACc0
+        OwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAA7QkoANjxFB0VMVGNFS1LgNTg9/0JFSf+Ah4//iI7I/0NG3f8PEOP/BQXk/wgI
+        5P8JCeT/CQnk/wkJ5P8KCuX/Cgvl/woL5f8JCub/CQrn/wgJ5/8ICef/CAnn/wgJ5/8JCuf/CQrm/woK
+        5f8KCuX/Cgrk/wkK5P8JCuT/CQnk/wcI5P8FBeT/Dw/j/0FE3P9+hb7/dXuG/z1BRv8xNDn/P0RM5UBG
+        T2w3PkYKOkBJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ7QgAWHiIBQEZPN0dNVbRCRkz6NTk9/1tg
+        Y/+Wnav/k5nb/1BT5/8aG+X/Bgbk/wUG5P8ICOT/CQrk/woK5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgrk/woK5P8ICeT/BQbk/wYG5P8XGeT/Sk3g/4SKzP+Lkp//VFlb/zE1
+        OP88QEX7RElRuz1DTD4kKjACMzlBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHSAqAERL
+        UwA3PUURSE9XbE1SWtZBRUv+PkFG/2htcP+iqLT/q7Hg/36C7v9FR+r/HR7m/wsL4/8GBuP/Bgbj/wcI
+        4/8ICeT/CAnk/wkK5P8JCuT/CAnk/wgI5P8HB+T/Bgbj/wYG4/8LC+T/HB3m/0FD6P94e+f/oKbW/5Sb
+        pv9fZGb/ODs//zs+RP5GS1LbQ0lRczY8RBRESVIAJSsxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAMjdBAAYHEQBBSFAjUFZfg1FWXttGSlD9P0JH/1hcYP+Nk5j/s7nJ/7m9
+        6f+doPH/eXrw/1ZX7f88Per/LS7o/yYn5/8fH+f/HR7n/yIj5v8sLej/ODnp/1NU7P9zde//mJvv/7C2
+        4/+rscP/h42S/1VZXf88P0T/QERJ/kpPVuBITlaKPEJKKBUbHgEsMjgAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALzQ8AB0iKQJFS1QkU1lidFZc
+        ZMVRVlzzRUhO/0RHTP9cYGT/fYKF/5yhpf+2usT/vcHU/8XI4v/BxOX/t7rk/7a55P/Awuf/xcjj/7zA
+        1f+yt8L/mZ+k/3h9gP9XW17/QkVK/0NHTf9PVFv1VFpiyVBXX3lBR1AoJCkxAzA2PQAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAHSQvAAAAAABCSVMRU1ljRFlfaIhaX2fDW2Bn6FVZYPpPU1n/TVFW/1ZaXv9ZXWD/X2Jl/2Rn
+        av9kZ2r/XmFl/1VZXP9TV1v/S09U/0xQVv9QVFv7VVph6llfZ8ZZX2iNUVdhSEJJUhMAAAAAHyUrAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0yOgAfIyoBREtTElRaZDdcY2xnY2pzlmVs
+        dL1kanLZZGpy6WZrdPRqcHj6am93+mdsdPRkaXHqZGpy2mdud79iaXKZWmBqak9WXzpBSFEUGyErASgu
+        OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///wAAD//////4AAAB/////+AAAAB/////gAAAAB////8
+        AAAAAD////AAAAAAD///4AAAAAAH///AAAAAAAP//4AAAAAAAf//AAAAAAAA//4AAAAAAAB//AAAAAAA
+        AD/4AAAAAAAAH/gAAAAAAAAf8AAAAAAAAA/wAAAAAAAAB+AAAAAAAAAHwAAAAAAAAAPAAAAAAAAAA8AA
+        AAAAAAADgAAAAAAAAAGAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAA
+        AACAAAAAAAAAAYAAAAAAAAABwAAAAAAAAAPAAAAAAAAAA8AAAAAAAAAD4AAAAAAAAAfwAAAAAAAAD/AA
+        AAAAAAAP+AAAAAAAAB/8AAAAAAAAH/wAAAAAAAA//gAAAAAAAH//AAAAAAAA//+AAAAAAAH//8AAAAAA
+        A///4AAAAAAH///wAAAAAA////wAAAAAP////wAAAAB/////gAAAAf/////wAAAP//////wAAD///ygA
+        AABgAAAAwAAAAAEAIAAAAAAAAJAAABMLAAATCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMz5FAEFO
+        VwAfKDAGISsxHRokKz0aIipmFx8njRYeJbIYISjOFx8m4RYeJfIWHiX9Fh8m/xcfJv8XICf/FyAn/xcf
+        Jv4XHybzFyAn4xghKNAXICe1FyAnkRojKWoZIShAISoxHx0mLQcmNDQAJTEzAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAALTZAADZASQEfJy4SHCUsOhkiKnAYISinGCEo0hchKOsYISj6GiIp/hskKv8dJiz/Hyct/x8o
+        Lf8eJyz/Hycs/x8oLP8gKC3/ISku/x4nLf8gKC7/ICkv/x0nLf8cJSz/GyUs/hkjKvsXISjtGCEp1RYf
+        JqsZIil1HCUsPx4nLhQ2QUYBLzk+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAOkNHAAAAAAAiLDMNGyQsOxghKIIWHybDFh8m7BghKP0dJi3/Hygu/yAp
+        Lv8eJSj/GyEj/xgeH/8UGBn/ERQV/xEUFf8RFBT/ERMU/xATE/8QExP/EhQU/xIUFf8SFBX/EhUW/xUY
+        Gv8ZHiD/HSIl/yAnK/8jKzD/Hygu/x0mLf8aJCv+GCEo7xcfJsgXICaIGyQpQiMtMhD6//8AQEpNAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQvNgAoMzsBHygvHRkiKWQXICe1Fx8m7Bkj
+        Kv4eJy3/Hycs/x4lKP8WGh3/EhUW/w8REv8QEhP/EhUW/xYbHf8bICL/HiQn/yEoLP8mLTH/KDAz/ygx
+        M/8nMTP/KTE0/ycvMv8iKS3/HyUp/xwhJP8YHB7/ExUW/xASE/8QEhP/EhQW/xcbHf8dJCf/ICgt/x8o
+        Lv8ZIin+Fh8m7xYfJbwYIShrHSUsIh8oLQIYIicAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        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
+        1P8CA+z/AQLy/wID8P8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8CA/D/AQLy/wID
+        7f8KDtX/Himq/zZJfP8+VWL/NklS/yc1P/8YISf/EBUa/xcfJf8gKzT/HCYu/xYfJeYYICZ7HygxFBEZ
+        HQA2QU8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAMDhCAAACCQAdJi4lGCAopBcgJ/cdKDD/GiQr/xAWGv8TGiD/Iy85/zVH
+        UP8/VmL/MUN//xggtv8GCOP/AQLx/wID8P8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8CA/D/AQLx/wYI4v8YILT/MUJ+/z5UYf81SFL/JTI8/xUc
+        Iv8QFhr/GiQs/x8qM/8YISj6Fx8msB0lLS4AAAAALThAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApMzgARFJVARsjKkEWHiXIGSIp/h0o
+        MP8UHCH/DhQY/xslLf8vQEn/PFJa/zRGd/8ZI7X/BQfl/wIC8f8DBO//AwTt/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO//AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wMD
+        7/8CAvH/BQfk/xkhtf81SHn/PlRc/zFCTf8fKjL/EBYb/xQcIf8fKjP/GyUs/xYeJdIaIypOLDQ/Aycw
+        OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMs
+        NQAqND0EGCIpWRYeJN8aJCv/HCYu/xEWG/8TGh//JTM8/zhMU/85Tmr/Hyqi/wYJ3/8BAvH/AwTu/wME
+        7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTv/wID8f8BAvL/AQLy/wEB
+        8/8BAfP/AQHw/wEC6/8CAun/AQHt/wEB8v8BAfP/AQHy/wEC8f8CA/D/AwTv/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTu/wIC8f8HCt7/ICyf/z1Saf8yQ0//ISw1/xUd
+        I/8QFhv/HSgw/x0nL/8WHiXoGCEoaCs0OwcfJy4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAISsyACYwNwcaIyptFh4l6xwmLv8ZIin/DhMX/xggJ/8uPkn/PlNe/y9A
+        g/8OE8v/AQHw/wID7/8DBO3/AwTt/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO//AgPw/wIC
+        8P8DBO7/Bgji/w4S1f8WHcH/HSe5/yc0pv8tPKn/Lz+l/zFBlf8yQ4//L0Ca/y08p/8pNqb/Hyq2/xYd
+        wv8OE9b/Bgji/wME7f8BAvH/AgPx/wME7/8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME
+        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
+        mf9EW2v/OUtZ/yQwQ/8oNkX/PFBY/z5UdP8lMaD/Cw/U/wID7v8CA/H/AwXv/wQF7v8EBe7/BAXu/wQG
+        7v8EBu7/BAbu/wQG7v8FBu7/BQbu/wUG7v8FBu7/BQbu/wUG7v8FBu7/BAbu/wQG7v8EBu7/BAbu/wQF
+        7v8EBe7/AwTw/wID8f8EBej/ExvD/zNFkf9EXGz/M0VM/x8rNf8lMUD/LTtI/xwlLP8dJi//GyQ4/xwl
+        Ov8cJTr/GyU6/xskOf8aIjj/GSI3/xkhN/8ZIjj/GyM3/xskLf8fKTH/ICsz/w4TF/8bJCv/GiMq/xce
+        JbAgKjIUHicvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAApMz0Ai6XAABskK2oYISj2HScv/w8VGf8ZIin/NUdP/zZIdf8LD9T/AgLw/wME7P8DBOz/AwTt/wME
+        7f8DBO3/AwTt/wIC8P8LDtT/M0SI/0VcZf8uPEz/Iy5A/zRGTv9CWW3/KzqX/wwQ0v8CAvD/AgTw/wMF
+        7v8DBe7/BAXu/wQF7v8EBe7/BAbu/wQG7v8FBu7/BQfu/wUH7v8FB+7/BQfu/wUH7v8FCO7/BQju/wUH
+        7v8FB+7/BQfu/wUH7v8FBu7/BAbu/wQG7v8EBu7/BAXu/wQF7v8EBe7/AgPx/wMF6f8VHLz/N0qH/0JZ
+        av8jLjj/GyQv/yMuOv8dJy7/HCUw/xskOP8cJTr/HCU6/xwmOv8cJTr/HCQ5/xsjOf8aIzj/GiI4/xoj
+        Nf8bIyv/ISw0/x0mLf8PFBj/HCYt/xcfJfsYISh8Lz5GAyMvNgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAD1CUgAaJCwAHigwMhghKNweKDD/FBog/xUcIf8xQkz/O09o/xMZ
+        xf8CAvD/AwTs/wME7P8DBOz/AwTt/wME7f8DBO3/AgLw/w8Uxv85THv/QFVe/yczQP8kMDz/PVNb/zhM
+        f/8UG8H/AgPs/wID8P8DBe3/AwXu/wMF7v8EBe7/BAXu/wQF7v8EBu7/BAbu/wQG7/8EBvD/BAXy/wMF
+        8v8EBfP/BAXz/wQF8v8EBfL/BAXz/wQF8/8DBfL/BAXx/wQG8P8FB+7/BQbu/wQG7v8EBu7/BAXu/wQF
+        7v8EBe7/BAXt/wMF7v8BAvT/GiO+/0dgc/8xP0v/HCQs/xggKP8iLDb/Hygw/x0mMP8cJTf/HSY7/xwm
+        Ov8dJjv/HSY7/x0nO/8cJTr/GiM4/xoiOP8bIzT/HCUs/yUwOf8YICf/ERcc/xwmLf8XHiTmGyMqQBYc
+        IgAlMDkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIsNgAlMDoMGSIqphwm
+        Lf8ZISj/EBUZ/yo5Q/8/U2D/HSau/wIC7/8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8CAvH/ERfC/z5R
+        dP8/U1z/LjlD/zpJUf9PZnP/KjiZ/wgK3f8CA/H/AwXu/wMF7f8DBe7/AwXu/wQF7v8EBe7/BAXu/wQF
+        7/8DBPH/AwTx/wYI5/8MENr/Fh3G/yAruf8qN6r/LTuu/y48qf8uPar/LDqs/yc0qv8dJ7z/FBnM/wsO
+        3/8FBu3/AwTy/wQF8f8EBu7/BAbu/wQF7v8EBe7/BAXu/wME7/8KDeH/PlGI/zRGTv8dJi3/JzE8/yIr
+        Nf8WHSL/JC43/yErM/8fKTP/Hic6/x0nO/8dJzv/HSY6/xwmOv8dJjv/HSY7/xskOf8bIzn/GyQx/xwl
+        Lf8nMz3/Ehgc/xcfJf8cJSz/GCAntSIrNBMfKDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAALjo/AA4UHQAdJi5bGiIq9B4oMP8PFBj/Hykx/ztPVv8rOZP/BAXq/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wIC8P8QFcP/PlNz/ztNVv8jKzL/SFZZ/4efs/8/Ssz/Bgfr/wUG7/8EBe3/AwTt/wME
+        7f8DBO3/AwTt/wMF7f8DBPD/AgPw/wgK4/8WHcH/KDSb/zhHfP9AUmn/RFZh/0NVXP9GWFz/RVZc/0NV
+        XP9DVlz/RFZb/0VYXv9FV1//R1lm/0FScf81Q4j/Iy2s/xEW0f8GB+r/AwTx/wQF7v8EBe3/BAXt/wME
+        7/8sNp//QVJU/x8oL/8eJzD/HSU1/yQtOv8nMDf/GBwe/yEoLP8lLzb/ICo0/x8oOv8eJzz/HSc7/xwl
+        Ov8dJjv/HSc7/xwmOv8bIzn/GiI3/xoiLf8gKjL/Ii01/w8UGP8dJi3/GiIq+RskLG0AAAAAKDM8AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHykyACErNBoZIinHHScv/xQbIP8WHSP/NkdR/zdK
+        c/8LD9j/AgPu/wME7P8DBOz/AwTs/wME7P8DBOz/AgPw/wwQzf88T3b/PE9X/yAoLf8rNjb/PEti/x8l
+        w/8FBe//BQbu/wMF7f8DBO3/AwTt/wME7f8DBO3/AgTv/wIE8P8MD9n/Iiyh/zlKdf9DVV//QVJa/ztK
+        Wf8zQVP/LzxO/y47Sv8rOET/KDM9/ygzPv8oMz3/KDQ+/yw5Rf8xPk3/MkBR/zdFVP9CVGD/SFph/0ZZ
+        bP82RIX/HCS4/wcK5v8CA/H/AgLy/xgdxf9GWGX/KDM4/x0mLf8dJjX/HSU7/xwlOf8hKzn/Jy83/xgc
+        Hf8eJCf/Iy00/yApM/8fKDv/Hic8/x0mO/8dJjr/HSY7/x0mOv8dJjv/GyQ5/xoiNf8aIyr/JTA5/xsk
+        Kv8SGR3/Higv/xkiKNQgKjMlHicwAGF8fwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtNz8AAAAAABwl
+        LHIaIyr8GyUs/w8UGP8oNj//QFRh/xoit/8BAvD/AwTr/wME7P8DBOz/AwTs/wME7P8CA+//BwnZ/zZH
+        f/9AU1z/Hygu/yo0NP84R2H/ERW+/wEB7/8DBO3/AwTt/wME7f8DBO3/AwTt/wME7v8CAvL/CAvc/yQu
+        n/89Tmv/QFFX/zhIW/8vPVf/KjZK/yYxPf8nMzz/JjVA/yc6TP8qQ1v/KUZn/ylJbf8pSW//KUdp/ypD
+        Xf8oPVD/JjZC/yczPP8oMz7/LjpM/zhHXf9BUl7/SFtj/ztKf/8aILv/Cw7c/z1Mgf81Q0T/HSUs/x4n
+        Mf8eJzr/HiY7/x4nO/8dJjn/ICk2/ygxOv8WGhz/ICcq/yIsM/8fKDP/Hic7/x4nPP8dJjr/HCU6/x0l
+        Ov8dJTr/HSY6/xwlOv8bJDL/HSYt/ygzPP8RFhr/GiIp/xskKv8bJCyFRVNkAiYxPAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAeKC8AICkyIRggJ9EdJy//Ehcc/xkhKP85S1L/LjyJ/wQF6f8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wME7f8DBOX/KzmO/0VaY/8jLDL/JzAx/zlJXv8SF7z/AQHx/wID7f8DA+3/AwPt/wMD
+        7f8DBO3/AgPv/wME7P8YH7T/OUlv/0FSWf8yQVb/KDRO/yQvP/8lMTn/JThJ/ytMc/8qWpX/Lmeu/y9t
+        uv8uccP/LnHE/y1xwf8tccP/LXHF/zJ2y/82d8n/M2+4/ytcl/8rTnX/JzxQ/yYyO/8nMj7/LzxR/0BR
+        X/9IWmj/QVF2/0FRWP8gKC//Hycu/x4mN/8fJzv/Hic7/x4nO/8eJzv/HSY6/yApN/8oMDn/Fhoc/x8m
+        Kv8iKzP/Hyg0/x8oPP8eJzv/HSY6/xwlOv8cJTr/HCU6/x0lOv8cJTn/HCUu/yEsNP8gKTD/EBUZ/x0m
+        Lf8ZISneICkyLB8nMAAAAAAAAAAAAAAAAAAAAAAAAAAAACMsNgAAAAAAGyMqcxghJ/0YICf/DxQY/yw6
+        Q/88T2T/ERfI/wIC7/8DBOv/AwTs/wME7P8DBOz/AwTs/wEC7v8dJqj/R1xo/yk1Pf8gKCr/OklW/xUb
+        tv8BAfH/AgPt/wID7f8CA+3/AwPt/wMD7f8CA/D/CArd/yg0j/9BU13/OEZb/ygzVP8iLDv/JDE6/yhE
+        Y/8rW5j/MHC+/zR60/8vdsr/MnrM/zZ90P82fM7/MnXG/zBzxf8wc8P/NnrL/z2D2P8/heD/OIDX/zJ4
+        zf8xeMr/LWy3/ytdl/8pRmT/JTQ//yQvOv8yP1X/RVVm/yk0O/8fJy//Hyg2/x8nO/8hKT3/ISo+/x8o
+        PP8eJjr/HSY6/x0kOP8hKTX/Jy82/xYZGv8iKS//ICoy/x0mNf8dJjv/HSY7/x4nPP8dJjr/HSY6/xwl
+        Of8cJTn/HCU1/xwkK/8kMDn/ERcb/xggJv8bIyv/GyMrhVRnfQEjLDYAAAAAAAAAAAAAAAAAAAAAAB8p
+        MQAhKzMYGSAnyh0mLv8QFhr/GiIp/zpMU/8oNJb/AwTs/wME6/8DBOv/AwTr/wME7P8DBOz/AgPv/w0R
+        y/9CV3T/N0ZQ/xshJf85SEv/Hyef/wEC7/8CA+3/AgPt/wID7f8CA+3/AwPt/wIC8f8MD8//M0F2/z9R
+        Vf8wPFr/Ii1J/yEtOP8oRGD/LWKi/zN2zf8zeM//MXbG/zZ7zf81ecz/O4DS/zyC1/87gdf/NXnM/zR4
+        xv85ftD/QYje/0CG2/8+g9n/PYPZ/zR6zP8xdsX/MXbF/y90w/8vcsD/LWSk/yhIaP8jLzn/JC8//yYw
+        Qv8kLTb/ISo2/yAoPP8gKDz/ISo+/yIrP/8hKj7/Hyc8/x4mO/8dJTj/Iyw2/yQqL/8WGhv/JC0z/x8o
+        Mf8dJjj/HSY6/x4nPP8eJzv/HSU6/xskOP8bIzj/GyM3/xsjLv8hKzP/HScu/w8UGP8dJSz/GSAn1iAp
+        MiIeJy8AAAAAAAAAAAAAAAAAAAAAABggJgAbIytZGSEo+BsjKv8PExf/KjdA/zpMZP8PE87/AgLu/wME
+        6/8DBOv/AwTr/wME6/8DBOz/BAXk/zE/iP9EWGH/GyIn/zE8O/8qNYP/AwTo/wID7f8CA+z/AgPt/wID
+        7f8DA+3/AgHw/w8TxP84SG3/PE1V/yk1T/8jLkD/KTZC/ylRff8xd8r/NHvP/zh70P80d8z/MnXD/zZ6
+        zf88gtb/QITU/z+G2P86gtf/MXXG/zR4x/88gNP/OoDT/zp/0v88gdX/O4DV/zR6y/80ecX/N3zL/zFz
+        v/8xdMH/MXfG/zJ3yP8tWIn/KzlE/yYyQP8nMkL/Ji84/yEpNf8gKTz/ISo+/yIqPv8iKz//ISo+/yAp
+        Pf8fJzz/HiY3/ycwOP8gJCj/Gh8h/yMsM/8eJzL/HiY6/x4nO/8eJzv/HSY7/xwlOf8bJDj/GiI4/xsi
+        M/8cJSv/JTA5/xIWG/8aISj/GyMq/BsjLGsKDxgAN0BFAAAAAAAAAAAAIiszACcxOwgZICeqGyQr/xIX
+        HP8ZICf/OktT/yo3j/8DBOv/AwPr/wME6/8DBOv/AwTr/wME6/8CAu7/GB+w/0lebf8oMzv/Iysr/zZE
+        Yv8LDdT/AQLw/wID7P8CA+z/AgPt/wID7P8BAfD/DhLI/zlIZf86SE//KDNJ/yYxQf9ET1z/SVVk/zRJ
+        Yv8tYJz/NHjL/zd6y/80d8j/NHrL/zl8zf86ftL/PYLW/zt/0v82esz/MXTD/zF0wf8ydsX/MHPB/zBy
+        v/8ydcL/MXXD/zBzwf8ydsP/M3jG/zF0v/8wc8D/MHXD/zJqqP83UGf/SVRg/0dRXv8rNkP/JzFA/ycw
+        Ov8hKjb/ISk9/yEpPf8hKT3/ISk9/yEqPv8gKT3/HiY7/x8nNf8rNDr/GR0f/x8mKv8gKTH/Hic3/x4m
+        O/8eJjr/HSU6/x0lOf8dJTn/GyM3/xsjN/8bIy3/ISsz/x0mLf8SFxz/Hicv/xoiKLskLjYQIiszAAAA
+        AAA9SFAAHiYuAB8nMDEYICfmGyQq/w4TFv8mMjr/PVBi/xMYx/8CAu7/AwTr/wME6/8DBOv/AwTr/wMD
+        7f8GCNr/OUl4/z1OVv8YHiD/N0VJ/xkfrv8BAfD/AgPs/wID7P8CA+z/AgPs/wEC8P8KDNL/NkRv/zxL
+        Uf8mLz7/KDNC/0hSX/9OVF7/TVRd/0lSXv8yQVD/L2CY/zl+0v84fMz/NnzM/zqA0v86f9H/OX7P/zd8
+        zf81ecj/NHbB/zR1vv80dsD/MnXA/zN2wf8xc7v/MnO+/zJ0vf8xc73/MHK8/zByvP8wc7//LmKa/ztO
+        X/9LU1z/TVNd/05UXv9LVGD/KjY//yUvO/8kLjb/ICk1/yApPP8hKT3/ISk9/yEqPv8hKj7/Hyc7/x8n
+        Ov8jKzb/LjQ5/xYaG/8iLDH/Hicx/x8nO/8eJjv/HSU5/x0lOf8cJDn/GyM4/xoiOP8bIzP/HCQr/yUw
+        Ov8QFRn/HCQr/xoiKe8eJi5BHCUsACQuOAAfKTEADBEYABoiKnMaIin+Fx0j/xIXHP80REr/MUB+/wUH
+        5/8DBOv/AwTr/wME6/8DBOv/AwTr/wEC7/8bIqf/SV1l/yIqMP8pMzD/LTl3/wQF5v8CA+3/AgPs/wID
+        7P8CA+z/AgLu/wUG4f8tOnv/Pk5Q/yo0Qf8lLzr/SFJf/05UXv9NU13/TFNd/01UXf9IUl3/NEVX/zZq
+        pv81esj/NHjH/zV5yP80d8X/NXfF/zd7y/83esj/N3rH/zl7xv87fcn/N3vH/zZ8y/81eMX/NXfD/zJ0
+        vf8zdb7/NXfA/zR3wv8xaaX/OExe/0xVX/9OU13/TVNd/01TXf9OVF7/SlRf/yo0Pv8pMjz/JS01/yEp
+        N/8hKT3/ISk9/yAoPP8hKDz/ICg7/x8nO/8fJzf/KDE5/x8kJv8cIiT/Iiwy/x8nN/8fJzv/HiY6/x0l
+        Ov8dJjr/GyM4/xsjOP8bIjb/GiEq/yUwOf8WHiP/FBsg/xwkK/8bJCuHAAAAACErNAAjKzMAJC43DBgg
+        J7YcJCv/EBUZ/x4mLf87TFT/Hiar/wEC7/8DBOr/AwTr/wME6/8DBOv/AwTt/wUG3v84SHr/Pk9W/xsg
+        Iv83RVD/ERXB/wEB8P8CA+z/AgPs/wID7P8CA+z/AQLu/yAplf9AUVL/LjhC/yUuOP9GUFz/TVRd/0xT
+        Xf9MU13/TFNd/0xTXf9NVF7/SlVh/zZLYv8zcLb/NXrJ/zZ5x/81d8X/NXjF/zZ5x/87f87/O3/O/z6A
+        zf8+gMz/PIDO/zt/zf89gtH/PYDO/zp7wv85e8f/PYHO/zl3v/83Um3/S1Rf/0xTXf9MU13/TVNd/01T
+        Xf9MU13/TVRe/0hRXf8pMzz/LDU+/yQtNf8hKTr/Iis+/yIqPf8hKT3/ISo9/yApPP8gKDz/Iio2/y01
+        Ov8WGhv/JCwy/x8oMv8eJjr/HSU5/x0kOf8dJTr/HCQ5/xsjOP8cJDj/HCQx/x8oL/8gKTD/DxQY/x0m
+        Lf8bIyrHIy43FCMtNgAdJS0AHiYuLxgfJuQaIij/DhMW/yk1Pf84SGX/Cw/V/wIC7P8DBOr/AwTr/wME
+        6/8DBOv/AQLv/xUbsv9KXWn/JCwz/ygyLv8qNX7/AwPr/wID7P8CA+z/AgPs/wID7P8BAfD/DxS9/z5O
+        W/84Q0r/ISkw/zE8Rv9OVWD/TFJc/0xTXf9MU13/TFNd/0xTXf9MUl3/TVRe/0JOXf8wU3v/N3vJ/zh7
+        x/81eMb/OXzI/zd6xv87fs7/O3/N/z1+y/8/gtD/PYLR/z6E1P8/h9n/On7M/zx/yP8+gMr/QIXV/zdg
+        jv9IU1//TVNd/0xTXf9MU13/TFNd/0xTXf9MU13/TFJc/05VYP8zPkf/Iywz/y44QP8lLjj/JC1A/yQt
+        P/8kLED/Iys//yIqPv8iKj3/Hyc4/ycwOP8gJij/HCIk/yIrMv8eJjb/HiU6/x4nO/8dJjr/HSU5/xwk
+        OP8cJDj/HCQ1/xsjKv8lMDn/ERUZ/xsjKv8bJCvvICkyPx8oMQAZICcAGyMrYhohKPsXHSL/Ehcc/zRD
+        SP8tO4L/AwTq/wMD6v8DA+r/AwTr/wME6/8DBOv/AgPo/y46h/9EVl3/Fx0f/zZCSf8TF7v/AQHw/wID
+        7P8CA+z/AgPs/wID7f8EBeP/Ljp2/z1LTv8kLDT/IC46/yU6Uv8+R1D/TlRe/0xSXP9MUlz/TFJc/0xS
+        XP9MUlz/TFJb/05WY/85SFz/Nm6r/zp9y/85fMn/PH/M/zl7x/84fMr/OXzJ/z1/y/9Ag9D/PX/J/zx9
+        x/82d8H/Nne//zh4wP85esT/OXS3/z5RZ/9OVV//TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TlRf/zhA
+        Sf8hNkv/IzJA/yQsM/8pMjn/JCw6/yQtQP8lLUD/JC1A/yQtQP8jKz7/ICk8/yIqNf8qMzf/Fhka/yQs
+        Mv8gKDT/HiY6/x4mOv8eJjr/HiY6/x0lOv8cJDj/GyQ3/xsjLP8mMTr/Fx4j/xYdIv8dJi3/HicvdRUd
+        IwA2Q1ADGiEomBwkKv8SFxz/GiEn/zhITf8eJ6f/AQHv/wMD6v8DA+r/AwTr/wME6/8CA+3/Cg3M/0VX
+        cf8wPEP/ICcm/zA8bf8FBuT/AgPs/wID7P8CA+z/AgPs/wEB8P8WHKv/QFBT/y04QP8dJSv/LFB6/y1o
+        rv8oOkz/Q0tT/01TXv9MUlz/TFJc/0xSXP9MUlz/TFJc/05UXv9DTV7/MlJ3/z6Bzv85e8f/OnvF/zl6
+        xP83eMP/OnvF/0CBy/89f8n/PX/K/zx9xv82dr7/N3e+/zx9xf87fsn/M1mD/0lTYf9NU1z/TFJc/0xS
+        XP9MUlz/TFJc/0xSXP9OVF//PUVN/x8uPP8ybbD/MVqG/x8nLf8mMDf/JC01/yMsPf8kLED/JC1A/yUt
+        QP8kLD//Iyw//yEpOf8pMzn/HSIj/x4lKP8iKzP/Hyc5/x4mOv8eJjr/HiY6/x4mOv8eJjr/HCQ4/xwk
+        MP8iKzL/Hygv/xEXG/8eJy7/HCQsqyg1QwciLDUVGiIpxBwjKv8PExf/JS82/zpLXf8QFcn/AgHt/wMD
+        6v8DBOr/AwTq/wME6v8BAu7/GyKk/0xfaP8cIyj/Lzs5/x8mn/8BAfD/AgPr/wID7P8CA+z/AgPt/wQF
+        4P8vPG7/O0lM/zY/RP8+Tl7/Mm2z/zd9zv8yZ6f/Okpb/0tSWf9NU13/TFJc/0xSXP9MUlz/TFJc/01S
+        W/9KU2P/MD9S/zt3uf86fMj/OnzI/zd3wP85ecH/P3/J/0aH1P9ChND/O3zF/zh5wv83drv/OXi+/0GD
+        zv88e8T/MkVc/01VYP9MUlv/TFJc/0xSXP9MUlz/TFJd/01UXv88Q0n/ICw2/yxelf89gs7/OnnA/yg6
+        TP8eJCf/JS41/yQsOv8kLD//Iys+/yQsP/8kLUD/JCw//yIpPP8kLDX/Ji4x/xccHf8kLDP/HiY1/x4m
+        Ov8eJjr/HiU6/x4mOv8eJjr/HSU6/x0kNP8eJi7/JTA4/xEVGf8eJy7/HCUt1SMtOB8gKDIyGyIq4xoi
+        KP8QFBf/LzxD/zZFcf8ICeH/AwLr/wMD6v8DBOr/AwTq/wME6v8CA+b/LzuG/0FRV/8WHB3/NkNR/w0R
+        zv8BAu7/AgPr/wID6/8CA+v/AQLv/xIWsf8/T1T/KzQ6/y81OP9FapL/M3fE/zd9y/9AhNb/PXW6/yo/
+        U/86QEX/TFJc/01TXf9MUlz/TFJc/0xSW/9NVGH/Mz1N/zZqpP86fcn/O33I/zp6wv86esP/Pn/I/0GC
+        y/9Bgs3/Pn/K/zp6w/84eL//OnvE/z+By/84bqj/NUFQ/05VYP9MUlv/TFJc/0xSXP9OVF7/SlFa/zI4
+        PP8gMUD/N3Gx/z+G1f85fsv/N37N/zBaif8gJCn/JCwx/yUtNv8jKz3/Iys+/yMrPv8kLD//Iys+/yEp
+        PP8jKzf/LTY7/xcbHP8jKi//Hycy/x4lOf8eJTn/HiY6/x4mOv8eJjr/HiU6/x0lOP8eJi7/KDQ9/xIX
+        HP8bIyn/HSYt7SAqMkAfKDBWGyMq9RgfJf8TGBz/NUNJ/y46iP8EBer/AwPq/wMD6v8DBOr/AwTq/wME
+        7P8ICtP/QFBx/zA7QP8eJSL/Lztw/wUG5f8CA+z/AgPr/wID6/8CA+v/AgLq/ycxgP8+TEz/HiQo/yYw
+        Qf8yaqz/OHvK/zt+zP9Ags//RIjZ/zVzvP8lQ2P/Ljg+/0JIT/9MUlz/TlRe/01TXf9OVWH/OkNV/y1C
+        Vv8wTGf/MUtm/zFLZv8xTGf/M05p/zJNaP8zTWj/M05q/zBLZv8vSGP/MUxn/zFMaP8uRFr/O0RS/09W
+        Yv9OVF7/TVRe/0lRWv87Qkf/Ji4y/yA9Wv8xbrH/Qorc/0GF0f87gMv/M3fC/zZ0uP8oNkX/HSIl/yYt
+        NP8jKjr/JCs+/yMrPv8lLUD/JCw//yMrPv8kLDv/KzQ8/x0iJP8eIyf/Iioz/x8mOf8fJjr/Hyc7/x8n
+        O/8fJzv/HiY6/x4mOf8eJi//KDI7/xcdI/8ZHyX/HiYt+x8oMWoeJy9+Hicu/RQaHv8XHSP/PEtQ/yMs
+        ov8CAu3/AwTq/wME6v8DBOr/AwTq/wID7v8QFLv/SVtq/x8lKf8qNDH/IyyW/wEC7v8CA+v/AgPr/wID
+        6/8BAu3/BwnU/zhGXv81QET/Gh4i/ypDZf8yc77/NnfC/z2Azf9DhND/QoPQ/z+Azf84ecT/LWGa/yU7
+        Uv8rNTr/NTs//zxDSf9DTFb/Nj9M/yYqLf8qLTD/Ki4x/yovMv8qLjH/KCwu/ygrLv8oKy7/Jyos/yYp
+        LP8nKiz/KSwv/ygrLv8nKy//Nj5K/z5HUf82PUP/LjQ3/yQsMP8gNUr/KlqN/zN0u/87fcf/Q4PM/0CB
+        yv9Ag87/On3I/zt/yv8tSmv/HSEj/ycvNP8lLTj/JCw//yMqPf8kKz7/JCw//yQsP/8kLD7/JzA4/yYs
+        MP8YHB//JC00/x8nN/8fJzv/ICg7/yAoO/8fJzv/Hyc6/x4mOv8eJjH/JzE5/x8nLf8TGBz/Hygw/x4n
+        MJAfJy6hHygv/xMYHP8dJSv/PExX/xkfuv8CAu3/AwTp/wME6v8DBOr/AwTq/wIC7v8dJKT/R1he/xYb
+        Hf8yPj7/Fhy2/wEB7/8CA+v/AgPr/wID6/8BAfD/Ehet/z9OUf8pMTb/HCEq/y5ZjP82d8L/OHnE/0GC
+        zv9KitT/SYrY/0GBy/88fMX/Pn/K/zt5wf8yZaD/KUxy/yY8Uv8lLDP/KTA2/yY4Sf8nP1b/Jj5V/yc+
+        Vf8oP1b/Jz5W/yg+Vv8oPlX/Jz1T/yc9VP8nPVP/Jz1U/yg/Vv8nOkz/KS81/yUrMP8lOU3/Kkxw/y5g
+        mP82dLn/OXvD/zp6wv9BhM7/SIrT/0KF0P86fcn/PH/L/zp/y/8vXpH/ISYr/yMqLv8nLzf/JS0+/yUs
+        P/8lLD//Ji1A/yUtQP8lLT//JS04/yoyN/8XGhz/JCwx/x8mNf8gJzv/ISk8/yEpPP8gJzv/HyY6/x4m
+        Ov8eJjT/JC01/yMtNP8SFxv/ICkx/x0mLrUeJS2+HSUr/xIXGv8kLTT/PExd/xIWxv8CAuz/AwTp/wME
+        6v8DBOr/AwTq/wEC6f8qM5D/QlFU/xUZGf80QFL/DRDN/wEC7v8CA+v/AgPr/wID6/8BAe3/HyeL/0BN
+        TP8hJir/ISs+/zJpqv84ecT/PX3H/z+AzP9Njdb/SIjU/0KByf8/fsb/PX3H/0CByv9EhM//QILN/zt1
+        tP8oMDj/KjA0/zdmmP8+f8j/PHrA/z19xf9Dg83/QoHI/0SCyP9CgMb/P33C/z99xf89e7//PXzB/z9/
+        x/85aZ3/Ki80/yctMv87b6r/TJDc/z5/x/86eLz/OnrA/z18xP9Ehc3/R4jQ/0SG0P8/gMv/QoXP/0SI
+        0/80cbT/JTI//x8kJ/8oLzf/Ji09/ycuQP8nLkD/Ji5A/yYuQP8lLT//JCs3/yw0Ov8XGxz/Iyou/yAn
+        NP8gJzv/ISg7/yAoO/8gKDv/Hyc6/x4lOv8fJzb/Iisy/yYwOP8RFhr/HiYt/x4mLs8eJi7RHSUr/w8T
+        Fv8qMzr/Pk1n/w0Q1/8CA+v/AwTp/wME6v8DBOr/AwTq/wID5P80P4H/OkdK/xkdHP8zPmL/Bwjg/wID
+        7P8CA+v/AgPr/wID6/8CA+j/KzVv/zxISf8aHyH/JTlU/zZ0uv88fMb/PX7J/zp7xf9MjNP/R4fR/0KB
+        yv9Af8f/P3/I/0ODy/9Jh8z/QYHJ/zpyr/8qMjv/LDE1/zZjlf9Cg8z/Qn/E/0J/xP9Hhs3/R4bM/0mH
+        zv9Fg8j/RoTL/0SBx/9BfcD/QoDF/0ODyf87ap3/KjA0/yctMv85aqD/SIrT/0F/xf87er7/PHrA/0KC
+        y/9Gh8//Q4bQ/z+By/9EiNX/RYbN/0eK1P83d77/KT9V/xwgIf8pMDf/KC88/ycuQf8nL0H/Jy9B/ycu
+        Qf8lLUD/JCs5/ys0Ov8cISP/ICYp/yIpNP8gKDv/ISk8/yAoO/8gJzr/Hyc6/x4lOf8eJjb/ISkw/ygy
+        O/8QFBj/HiYs/x4nLuMfJy7gHiUs/w8TFv8uOD7/O0lu/woM3v8CA+r/AwTp/wME6f8DBOr/AwTq/wUG
+        4P9ATnv/Mj1A/xwiH/8wO2//BQbn/wID6/8CA+v/AgPr/wID7f8EBdb/NEBe/zdCRf8YGx7/Kkht/zh4
+        wP88e8P/PHzF/0CAyf9Pj9j/S4rT/0KDzf8/fsf/P3/J/0SCyf9LitD/SYnS/z50sP8qMjr/LTI3/zhj
+        kv9EhtH/RYPK/0WCx/9Fgcb/To3U/06N0/9EgcT/RoTJ/0SBxf9Df8P/RYHF/0aDyP89bJ7/KzE1/ygu
+        M/82Zpr/Q4PL/0WFzP9Af8X/PHm9/z5+x/8/fsX/O3zE/zx7wf9DhM//SInQ/0aI0v85eL//LE5z/xse
+        Hv8qMjj/KjI9/yoxRP8pMUP/KTBC/ygwQv8oL0L/Ji49/yoyOf8hJyj/HSIk/yUtN/8hKTv/Iio9/yEp
+        PP8hKDv/Hyc6/x8mOv8eJjf/Hycu/yo1Pv8SFhr/HSUr/x4nLvQeJS3rHiUs/xEUGP8vOj//N0R8/wgK
+        5P8DBOr/AwTp/wME6f8DBOn/AwPs/wcIz/9IV3b/KjM3/yEoJf8pM4T/AgPr/wID6v8CA+v/AgPr/wEC
+        7v8ICsv/OUZa/zE6Pv8ZHR//L1WA/z1+x/88e8L/O3nA/0ODzP9Qj9f/T43V/0WEy/9Bf8X/QH7F/0WD
+        yf9Ni9P/SYfP/z90sP8qMjr/LzQ5/zpllP9HiNH/Q4HH/0WCx/9Nic//Vpjh/1ST2f9Hg8j/R4TI/0WA
+        xP9Fgsf/RoLF/0aEyP88a53/LDE2/ykuM/85aZ7/RobN/0OCyf9BfsP/PXu+/0CByv9Cgcj/QYDI/z+A
+        yv9Gh9H/SYrT/0WFzf86e8P/LleE/x0hIv8pMDb/LDQ+/yszRP8rMkT/KjJE/yoxQ/8oMEL/Jy4+/yky
+        Of8kKi3/GR0f/ycwOf8jKjz/Iyo9/yIqPP8hKTz/ICc7/yAnO/8gJzn/ICgw/yo0Pf8TGBz/HSUr/x4m
+        Lf4eJS3zHSQr/xEUGf8wOz//Mz+A/wUH5f8DBOr/AwTp/wME6f8DBOn/AwPs/wgJyP9IV3H/JS4x/yUt
+        Kf8nL4b/AQLs/wID6v8CA+r/AgPq/wEC7/8LDrv/O0lO/y42O/8aHyP/N2KU/z9/yf89e8L/PXrA/0KA
+        xv9SkNn/UI/X/0iFzP9Cf8X/QX/F/0mGy/9MitH/SIbO/zxvqP8rMzr/LzQ5/zhij/9Li9P/SYjQ/0qH
+        zv9OjNT/UJLe/02M1P9Gg8f/SYTG/0iDxf9GgcT/R4LE/0mFyf87apz/LTI3/ykuNP85aZ3/RoTI/0N/
+        w/9Df8T/QX7C/0ODzP9Ghc3/SIfO/0mK1f9Ih83/T47V/0uN2P86e8X/M2KT/x8lKf8oLjT/LTU//ywz
+        Rf8sM0X/KzNF/ysyRP8pMUP/KDBA/yoyOv8nLjH/GB0e/ygwOP8kKz3/Iyo9/yIpPP8iKTz/ICc7/yAn
+        Ov8gJzr/ICgw/yo0Pf8UGR3/HSQr/x4mLf8fJi34HCMp/xEVGv8zP0T/ND9//wUG5f8DBOr/AwTp/wME
+        6f8DBOn/AwPs/wkKyv9MW3X/JCsu/ycvK/8lLY7/AQLt/wID6v8CA+r/AgPq/wEC7/8NELb/PUpL/y42
+        O/8YHSH/Omea/0GByv8+esD/PnvB/0SDyf9UlN3/TovQ/0eDyP9Cf8T/Qn7D/0aCxv9Ihs3/SYfO/0By
+        q/8rMzr/MDU5/ztmlf9Pj9j/SITI/0yHy/9Uktr/UY/Y/0uGy/9Khsv/SITI/0iEx/9Ggsb/R4LE/0uI
+        zP9BcKT/LjQ5/yovNf84Z5r/RoTH/0qHzf9Jhsr/SIXL/0eFzP9Pj9j/S4zU/02N1f9Li9T/S4vU/0iJ
+        0/87e8P/NWee/x4kKP8oLjP/LjZA/y00Rf8tNEb/LDRF/yszRP8qMUP/KTBB/yoxOf8oLjL/GB0d/ycv
+        N/8jKjz/Iyk8/yMqPf8iKTz/ISg7/yAnOv8fJzn/ICcw/yw2P/8VGh7/HCMp/x4mLf8fJy74HSMo/xIW
+        Gf80P0T/Mz19/wQG5P8DBOn/AwTp/wME6f8DBOn/AwPs/woMy/9MW3X/ISgq/yoyLv8jK5f/AQHu/wID
+        6v8CA+r/AgPq/wEC7/8OEbf/PktM/y42PP8XHB//OWaX/0KByv9BfcP/Q4DG/0mHzf9Wlt//T4zP/0mF
+        y/9Ih8//RoLH/0mEx/9Khsv/SYbL/z9xqv8sNDv/MTY7/z5qmv9ZmOH/TIfL/0uGyP9VkdX/VJHW/1WS
+        2P9SjdD/Uo7S/0+Kzf9Jg8X/SoTF/1GN0P9Hd6v/LzU5/ysxNv86aZz/SIXL/0yL1P9Mic7/SYXJ/0iG
+        y/9Sktr/T43T/0uJz/9Mjdb/RYbP/0CAyP87er7/Nmec/x0jJ/8pLzT/LzdA/y41Rv8tNEb/LTRG/ysz
+        RP8qMkP/KjFB/yoxOf8pMDT/Fxsc/yYuNf8kKzz/Iyo9/yIpPP8hKDv/ISc6/yAnOv8gJzn/ICcv/yw2
+        Pv8VGh7/HCMp/x8nL/8gJy7zHiQr/xIVGf8yPEH/ND9+/wUG5P8DBOn/AwTp/wME6f8EBOn/AwPs/wkK
+        yf9MWnP/ICcp/yozMP8kLI3/AQLs/wID6v8CA+r/AgPq/wEC7/8NELX/PUlK/zA4Pf8aHyH/OmaW/0B9
+        w/8/e77/QX7D/0uHzv9Uktb/VZLX/06Kz/9IhMr/R4PI/0+Kzf9Ri83/TYnP/0J0rv8tNDv/Mzg8/0Fs
+        mf9dnOP/UIvQ/1GLzv9bmN3/Xpvi/1KP1v9Oicz/VZHV/1GMzv9Mhsj/U43P/1GN0f9DcKP/Mjg8/y0y
+        N/9Ec6b/UI3U/06M1P9Hg8j/Q4DF/0OAxP9EhM3/SobK/1GP1v9Tktj/TYzS/0OByP89er7/N2aZ/x8m
+        Kf8pLzP/MDdB/y41Rv8uNUb/LTRF/ywzRP8rMkP/KTBB/yoxOf8qMjX/Fhsb/ycuNv8lLD3/JCs+/yMq
+        Pf8iKTz/ISg6/yAnOv8fJjn/ICcw/yw1Pv8VGh7/HCMq/x8nL/8gKDDqHyYr/xEVGP8zPUL/OESD/wYI
+        5f8DBOn/AwTp/wQE6f8EBOn/BAPs/wgJyP9JVm//Iikr/ygwLf8mLoP/AgLr/wID6v8CA+r/AgPq/wEC
+        7/8LDbv/PEhO/zI7P/8bICL/OmWV/0OAxf9BfcD/RH/D/0qGy/9UkNP/V5TW/1KO0v9JhMj/R4HE/02H
+        yv9Uj9T/Wpfb/0l7s/8tNDv/Mzg9/z9olf9ameH/VZHW/1SQ1P9em97/XZne/12a3v9Sj9P/VpHV/1SO
+        0P9PiMn/VY/Q/0+Ly/8/bJv/Mzk+/y40Of9Gdar/VZHX/1GP1/9Lh8n/RoLF/0WAw/9EgMb/R4PI/0mF
+        yv9PjdP/UY/V/0iHzv8/fcP/N2SW/x4kJ/8oLjP/LzZA/y82R/8vN0f/LTRF/ysyQ/8rMkP/KS8//ygv
+        N/8oLzP/Fxsc/ygvN/8mLT7/JSw+/yQrPf8jKjz/Iik8/yEoO/8fJjn/ISgw/yw2Pv8VGR3/HSUr/yAn
+        L/0jKzPfISgu/xEUGP8yPEH/PEl9/wkK4/8DA+n/AwTo/wME6f8EBOn/BATr/wcI0v9GU3P/JS0u/yYu
+        K/8qMoL/AgPr/wID6v8CA+r/AgPq/wEC7f8GCMr/OERY/zdARP8aHR7/NFd8/0OAxP9CfL3/RYDD/0qG
+        zP9WktP/VpLT/1OP0v9Mh8n/SIPF/0yHy/9TjtH/W5fZ/0h4rv8uNTv/NDg9/0Jqlf9Wktj/VI/T/1eR
+        0v9emd3/Uo3Q/1yW2f9bmN//XJnf/1uW2P9Qicn/UYrK/1OO0P9BbZ3/Mjc8/y4zOP9Id6r/YZ7i/1KO
+        0v9Ois//SoTG/0eBw/9Ff8L/RYHG/0aCxf9Lh8n/U4/T/0qHzP9Cgcj/NVyH/x0gIP8sMzn/LjU//y40
+        Rf8vNkb/LjRF/ywzRP8rMUP/KS8+/yoxN/8oLzL/GBwd/ykwOf8nLT//Ji0//yUrPv8jKjz/Iig7/yEo
+        O/8fJjf/ISgv/y03P/8UGBz/HyYs/yAoMPIkLDXQISgt/xAUF/8yPEL/Qk9w/wsN3f8DA+n/BATo/wQE
+        6f8EBOn/BATp/wUG4P9BTXr/KjMz/yMqKP8xO2z/BQbl/wID6v8CA+r/AgPq/wID7P8EBdb/Mjxb/z1I
+        S/8bHR7/MUxo/0N+wf9Dfb7/SILG/0+Kz/9aldb/Xpnc/1eS1v9Nh8f/SoTF/1OO0v9YlNb/WZXX/0h5
+        r/8vNjz/Njo//0ZumP9gm93/V5HT/1iS0/9YlNf/V5LU/2Cb3f9fmt7/Xpvg/1WR1f9Sisr/UorJ/12a
+        4f9GcqP/MTY6/ywyNv9Cb6D/Xpzf/1qV2P9altv/VI7P/0uFxf9IgcL/RoHD/0WAw/9LiM7/VpXb/0mG
+        yf9FgsX/NVV1/xseHv8xOD7/LzVA/y40Rf8vNkb/LjVG/y00Rf8sM0T/KzJA/y00O/8oLjH/GBwd/yow
+        Ov8nLT//Jy4//yYsPv8kKz3/Iik7/yEnOv8hJzj/Iikw/yw1Pf8SFRj/HyYs/yEqMuEkLDS8Iykw/xIW
+        Gf8tNjz/RVNq/w8S1P8CA+r/BATo/wQE6P8EBOj/BAXp/wID5P87RIr/Mjs7/x0jIf81QGP/Bwjf/wIC
+        6v8CA+r/AgPq/wID6v8BAuf/KDBs/0JNTf8hJSf/KDlI/0R8vP9JhMf/TIbH/1OR2P9altn/Xpnb/1aQ
+        0P9Picr/T4jL/1WP0f9Vjs//WZTW/05/tf8wNz3/NzxA/0Rsmf9joOT/WpPV/1qU1v9aldr/W5XV/2Wf
+        3/9dmNr/WpTV/1mT1f9YktX/XJXV/2Oh5/9Kd6f/MDY6/ywyNv8+apv/VI/R/1GMzv9Xldv/VpHT/1ON
+        z/9TjtH/UIrM/0uFx/9IhMn/S4jO/0aBxP9HgcL/LUJW/x8jJP80O0L/MThE/zA3R/8vNUX/LTNE/ysx
+        Qv8qMEL/LDNA/y83Pv8kKSv/Gh4f/ykvOv8mLD7/Ji0+/yYtP/8lKz7/JCo8/yMpPP8iKDf/JCsy/yoz
+        O/8RFRj/ICct/yEoMc0kLTWdJCsy/xUZHP8oLzX/SVZm/xcaxv8CAuv/BATo/wQE6P8EBOj/BAXo/wID
+        6P8vNpX/PEZG/xkeHv85RFT/DxLL/wEC7P8CA+n/AgPp/wID6f8AAez/HSKH/0RQTf8qMDP/ISow/0N1
+        r/9Ois3/TYfI/1GM0P9altr/XJbX/1mS0/9Vj9D/VpHV/1uV1f9bldf/Y5/i/1GCtf8wNz7/OT1C/z9l
+        j/9altr/W5PU/1qS0v9fmNn/X5na/16X1P9ZktL/XpfY/1iPzP9Zk9P/YZze/2yp6f9Qfaj/MDQ4/ysw
+        NP8+aZj/U43P/1KNz/9ZmN//Wpba/1ON0P9UjtD/VpDR/1KN0f9NitD/TonN/0mFyP9Hfbv/JTE6/yUq
+        LP82PUT/MThG/zA2R/8wNkb/MDdH/ywyQ/8sMkP/LTQ+/zE4Pv8fJCb/HiIl/ykwPP8oLkD/Jy0//yYs
+        Pv8mLD7/JCs9/yMqPP8iKDb/Jy41/ygwOP8SFhn/Iikw/yAoMbIkKzV7JSwz/RYZHf8iKC3/TFpj/yEn
+        uv8CAuv/BATo/wQE6P8EBej/BAXo/wID7P8eIqf/RlFU/xMXGP87RUX/GB2y/wEB7v8CA+n/AgPp/wID
+        6f8BAu7/DxKr/0FMT/82PkL/GRwc/zpgif9Oicz/T4nL/1KM0P9ineH/YJrc/1uU1f9Vjs//V5LX/1mR
+        zv9Md6f/RmOC/z1QYv85QEb/PEJI/zVCUf88UGT/PlFl/z1QZP8+UWX/P1No/0BTaP8+UWb/QVVr/0BU
+        aP8+UGX/PlJm/0JWa/85SVj/Nz1D/zlARf82SFf/PFh0/0Rtmv9cltf/YJ3k/1CJy/9UjtH/W5XW/1WQ
+        0/9Oic3/SYPG/0mFyv89aJf/HSEj/y40Of8zOUH/MDVF/y81Rv8vNUX/LzZG/y0zRP8sMkP/LTM8/zE4
+        Pf8ZHR7/Iygs/yoxP/8oL0D/Jy0//yctPv8mLT7/JSs9/yQqPP8iKDX/KzM7/yUsM/8TFxr/Iyox/x8n
+        MI0nMDlTJi009BsfJP8aHiP/SFRY/y42pP8DA+r/BATo/wQF6P8EBej/BAXo/wME6/8RFL7/S1hk/xUY
+        Gf82QD7/JCuP/wIC7f8CA+n/AgPp/wID6f8CA+v/BgfS/zZAWP9BS03/HCAh/y1CVv9Ris3/VY/S/1eQ
+        0/9jnt//ZJ7d/1+Z2/9Ti8v/Rm6c/zhKW/87Q0f/QUdL/0hOVP9MU1v/SE9Y/zA0N/8vMTP/MTM1/zI0
+        Nv8yNTb/MjQ2/zI0Nv8zNjj/MzU4/zQ2Of8zNTf/MDIz/y8xMv8uMTP/Q0pS/05WX/9LUVj/SU9T/0RM
+        UP9DVWT/S3Od/0+Gxf9bmN3/XZjZ/1aP0P9WkNP/U43P/0mDx/8yTGb/HB8f/zQ7Qf8xN0H/MDZG/zE3
+        R/8xN0j/MTdI/zA2Rv8uNEP/LTM6/zA3PP8VGBn/Jy0y/yowP/8pL0D/KC9A/yctP/8mLD7/JSs9/yQq
+        PP8jKTP/MDlB/x8lKv8XHCD/Iioy+iApMWYqMz0wJzA34SEnLP8UGBv/QUxQ/zxGiv8GB+f/BATn/wQF
+        6P8EBej/BAXo/wQF6f8HCNX/R1F1/x4jI/8sNDL/Mjxt/wUG4/8CA+r/AgPp/wID6f8CA+n/AQLo/yIo
+        eP9HUlD/Ki8z/yAoLv9LfbT/VZDT/1uV2P9rpuX/ZqLl/1OHwf84Tmb/OkBF/0dNU/9LUlv/SlBa/0pP
+        Wv9MUlz/Q0lR/yI0Rv8pRF//K0dj/ylCXf8qRF7/LUdg/yxFYP8rRmL/KkNc/ylBXP8oQFv/KEFc/ydB
+        XP8jN0v/O0FI/05UXv9JT1n/Sk9a/0xRW/9MUVj/REtQ/zlOYv9Qg7z/YZ3h/16Y2v9cltn/XZja/0l8
+        tf8kLzf/Jios/zg+Rf8zOUb/MjhI/zE2Rv8xN0f/MTdH/zE3R/8vNUL/LzU8/ywzNv8VGBn/KjE5/yow
+        Qf8pL0D/KC5A/yctP/8nLT//JSs9/yQqPP8kKzP/MzxF/xgdIf8dIif/Iysy6yIsND0sND4SJy83wSQr
+        MP8TFxr/OkRK/0hUef8MDdz/AwTo/wQF6P8EBej/BAXo/wQF6P8CA+X/Nj6Q/zA4N/8eIyT/PUhS/w8S
+        yf8BAez/AgPp/wID6f8CA+n/AQLt/w4RsP9CTFH/PkdM/xodHf85VnT/UYvN/1iS1f9uquv/VYO2/zdF
+        U/8/RUn/SlBZ/0pQWv9JT1n/SU9Z/0lPWf9MUlz/O0NJ/0Rvn/9gm9z/ZaHh/2Kc3f9vq+z/dLDt/2um
+        5f9rpeX/ZZ/d/2Ob2/9gmdj/XpfW/1+Z2f9Leq7/MztD/05VXf9JT1n/SU9Z/0lPWf9JT1n/S1Fa/0hO
+        U/87SFP/T3qq/2mp7/9emNn/WJPW/zxdgf8bHR3/Mjg+/zU7Q/80OUn/MzlI/zI4SP8yN0f/MTdH/zE3
+        SP8xOEL/MzpA/yQpLP8aHiD/LDI9/yowQf8rMUH/KS9A/yctP/8nLT7/Jiw+/yUqOv8nLjX/ND1G/xQY
+        G/8hKC3/JCw00iQuNxw8R1ECJy83kycuNf8VGBv/LjU8/1Jea/8ZHcf/AgLq/wQF5/8EBej/BAXo/wQF
+        6P8DA+v/HyOu/0dSVf8TFhf/PkhF/yEnmf8BAe3/AgPp/wID6f8CA+n/AgPq/wID3/8sM2r/SVRU/ykt
+        Mf8gKC//SXmu/1eR0v9XgrD/OkVN/0dNUv9KUFr/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9MUVr/LzpF/1aI
+        wf9pod//YpnV/2Wb2P9tpuP/erXy/3Ot6/9spOH/Z57c/2ee2v9lnNn/ZJzZ/2Oa2P9aj8n/Lj1L/0pQ
+        Vv9JT1r/SU9Z/0lPWf9JT1n/SU9Z/0pQWv9KUFf/PUdO/0x2pP9dmNr/UYbB/yczPv8jJij/NTtA/zM4
+        RP80Okr/NDpJ/zQ6Sv80Okn/MzlJ/zI3Rv8xNz7/NTxC/xkdHv8iJyv/LDJA/yswQf8qMEH/KS9A/ygu
+        P/8nLT7/Jis9/yQqN/8tNDz/LjY+/xMXGv8lLDP/JCw1pyo2QAYoMDoAKTE6XCkwOPobHyP/ICUq/1Fd
+        Yf8wNqj/AgLr/wQF5/8EBef/BAXo/wUF6P8FBer/CgvP/0pUcf8XGxr/MTk3/zU+av8GB+H/AgPq/wID
+        6f8CA+n/AgPp/wEC7f8RE6f/RlBT/0FKTv8ZHBz/NlBs/0p4rv82QUz/S1FW/0pRW/9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0pQWv9ESE3/NE9q/2ae3f9ooN//ZJvX/2ee2v9qot//bafm/2uk4v9qod7/b6bj/3Ss
+        6P9qot7/Z5/d/2Sb1/9nn93/OVh6/z9DR/9MUlz/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1r/S1BY/zhC
+        Sv9Idaj/PV1//xsdHf81OkD/NjtD/zY8S/83PUz/NjxL/zU7S/81O0v/NDpJ/zM5Rv80OkD/MDc7/xQX
+        F/8sMjj/LjRE/ywyQ/8rMEH/KS9A/yguP/8oLT7/JSs8/yQpNP8zO0P/JCsw/xgcIP8nLzb+JS02cCIq
+        NAArND4AKzM9KioxOuEhJiv/Fhod/0dSVf9GT43/Bwjl/wQF5/8EBef/BAXn/wUF5/8FBef/AgLn/zc+
+        lP8yOTb/HiMl/0FLTv8XG7b/AQHt/wID6P8CA+n/AgPp/wID6v8CAuH/KzFv/05ZVv8wNjr/HSMo/zFA
+        Tv9FTFH/S1Fb/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0tRWf81Pkb/Tnyv/2mi4f9nn93/Zp7a/2uh
+        3f9yqub/babj/3Cn4/99tfD/dq7q/3Os5/9rot//bqXi/22k4f9ro9//V4i+/y44Qv9LUVj/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/Sk9Z/0pPVv80Qk//HiYr/yswM/89Q0r/OT9L/zk/Tv85Pk3/Nz5M/zY8
+        S/82O0v/NTpK/zQ6Q/82PUP/JCos/xkdHv8xN0H/LzRF/y0zQ/8sMkL/KjBB/ykvQP8oLT7/Jis8/ycs
+        M/82Pkf/GR0h/x8kKf8oLzfsJi84OigwOQAvNz8AMTpECiszO7ApLzX/FBYZ/zY+RP9UX3X/FRjR/wID
+        6f8EBef/BQXn/wUF5/8FBef/AwPr/xgbuv9JU1r/ExcX/zxFQ/8wOHn/BAXn/wIC6f8CA+j/AgPo/wID
+        6P8BAu3/Cwy7/0RLWf9LVFf/JCgq/zE1OP9MU1z/SE9Y/0lPWf9JT1n/SU9Z/0lPWf9JT1j/SlBa/0FG
+        S/88WXj/aKDe/2qh3f9rod3/baTg/2yi3f9vpuL/cKjm/3au6v9/uPP/fLXw/3ev6/9vpuL/bqXi/2yk
+        4f9vpuL/cKnm/z5egv85PUH/S1Jb/0lPWP9JT1n/SU9Z/0lPWf9JT1n/SU9Y/0tSXP81Oj7/ICQl/z1D
+        Sf87QEn/PEFQ/zxBUP87QE//O0BP/zk/Tv83PU3/NjxJ/zQ6Qf82PUL/Fxob/yUqLv8wNUT/MDVF/y40
+        RP8tMkP/KzBB/yguP/8nLT7/Jis5/ywyOf8zO0P/FBca/yctM/8mLjbCKTI7EikxOQAtNj8AJi83ACoz
+        O2wsMzv9Gh4i/yQoLf9XYmj/MTet/wIC6v8EBef/BQXn/wUF5/8FBef/BQbo/wQF3/9BSYX/JSon/yYs
+        Lv9BS1P/Fhq7/wEB7f8CA+j/AgPo/wID6P8CA+j/AQHq/xsekP9RWln/RU1S/yImKP87QEb/SlFa/0hP
+        WP9IT1j/SE9Y/0hPWP9JT1n/SU1T/zJDU/9ekcr/baTi/3qy7f9xqOT/a6Ld/2yj3v9to97/baPe/3Go
+        4/98tfD/ebLu/3Or5/9zqub/b6fj/2yi3v94sOz/dKzq/1+U0f8tQVX/Q0dL/0pRWv9IT1j/SE9Y/0lP
+        WP9IT1j/SlFa/z9FTf8iJij/Oj9F/z1DS/88QU7/PUNS/z1DUv88QlH/O0FQ/zo/Tv85P07/OD5H/zg/
+        Rf8rMTT/FRkZ/y81Pf8wNUb/MDVF/y81Rf8tM0P/LDFC/yovQP8oLj//Jiw2/zU9RP8nLTP/Fxse/yox
+        Of8nLziBGRojACYvOAAAAAAAKzQ9ACs0PSwsNDzhJSou/xcaHf9IUVb/TVaI/wkL4f8EBOf/BQXn/wUF
+        5/8FBuf/BQbn/wME6/8eIrT/R09T/xMWF/8+R0X/NT11/wYH4/8CAun/AgPo/wID6P8CA+j/AgPq/wID
+        3v8sMXf/WGFe/0BHS/8gIyb/QEVM/0pRWv9ITlj/SE5Y/0hPWf9KTlX/MjtG/1F+r/9vp+P/cKfj/4G7
+        9f91ren/baPe/2+l4P9vpd//b6Xg/3Sr5/96su//d6/q/2yj3v9wp+L/c6rm/3u07/9+t/L/b6Xi/2yj
+        4v9Yir//KTVA/0ZLUP9KUFr/SE5Y/0hPWP9JUFr/Q0lR/yQoKv87QEX/RUtT/z9FUP8/RFP/P0VT/z1C
+        Uf87QVD/OkBP/ztAT/86P0z/OD5F/zg/RP8YGxv/JCks/zQ5R/8xNkb/MDVF/y80RP8uM0P/LDFB/yow
+        Qf8pLz7/KzE4/zpCS/8ZHCD/ISYr/ygwOOsmLjg7Jy84ACUuNwAAAAAALTU+AC43QQYrMzykLDM5/xYZ
+        HP8zOUD/XWh0/yInxf8CA+r/BQXn/wUG5/8FBuf/BQbn/wUG6P8GB9z/Q0qD/yMnJf8oLS//R1FR/yEl
+        qP8BAu3/AgPo/wID6P8CA+j/AgPo/wEC6/8FBs//O0Bs/15nZP9AR0v/Iycp/z9FTP9KUFv/SU9Z/0lN
+        VP8xOkL/Tnaj/3Oq5/94r+r/dq7r/3au6f97s+3/dq3o/3Go4v9zqeT/frfu/4nD+f99tvH/dq7p/3Or
+        5v92rej/eK/q/3ev6/9/uPP/dKvo/3Kq5/94svD/UX2t/ygyPf9DR0v/SlBa/0pQWv9DSVH/JCgr/zQ5
+        Pv9ES1H/Q0lU/0RJWP9BR1X/P0RT/z1CUf88QlD/PEFQ/zpATv85Pkb/OT9F/ysxM/8UGBj/MzhA/zQ6
+        Sf8xNkb/LzVE/y4zQ/8tMkL/LDJC/yowQf8pLjr/MzpB/zM6Qf8UFxr/KS81/ycvN7QoMToNKDA6AAAA
+        AAAAAAAAAAAAACw1PQAsND1TLzc/9SAkKP8eISX/VV5i/0lSmf8ICOb/BQXm/wUG5/8FBuf/BQbn/wUG
+        5/8DBOr/Gh28/0dOWP8UFhb/PUVF/0JLY/8RE8//AQHr/wID6P8CA+j/AgPo/wID6P8BAuz/CQrE/0JH
+        av9kbGr/Q0tO/yMnKf88QUf/SU5V/zdFVf9Peqn/dq7q/3Ws5/94sOz/dKvm/3Ko4/96sev/gLny/3Sq
+        5f9+te//kMv9/4bB9/+Cu/P/gLjy/3uy7f92reb/icX2/3627/+Du/P/erLt/3Go5P91ru3/e7Ty/1OD
+        t/8uQlX/QUdM/0FGTf8nKi3/ODxB/0VKUf9CR1H/Q0hV/0RJV/9DSVf/QUZV/z1DUf87QE7/OkBP/ztA
+        Sv85P0X/Nj1C/xYaGv8mKy7/NTpI/zQ5Sf8yOEf/MTZF/y4zQ/8tMkL/LDJC/ywxQf8sMTr/PkZP/yIm
+        K/8dICX/LDM7+icwOWQmLDYAMjpBAAAAAAAAAAAAAAAAAC42PwAtNT8ULzc/wy4zOv8VFxr/OT9G/19q
+        ef8fIsn/AwPp/wUG5v8FBub/BQbn/wUG5/8GBuf/BATk/zk+lP8sMS7/HyMl/0hRTv84PoH/Bwjk/wEC
+        6f8CA+j/AgPo/wID6P8CA+j/AQLs/wkKwv9DSHH/aXFt/01UWP8oLC7/JCYo/0hmh/91rOf/dq3p/3Op
+        5P95sOr/dazn/3iv6v98s+3/h8D2/3mv6f99tO7/grv1/4C48/+Oyfn/jsj4/3mw6v90quT/g730/4vF
+        +/+CuvP/frbw/3Oq5/90rev/frfy/3+48P9Wepv/IiYo/ycqLP9ARUv/SE1V/0NIUv9GS1n/R01b/0ZM
+        Wv9GS1n/Q0hW/0BGVP89Q1H/O0BM/zo/Rv87Qkj/Iykq/xcbHP80OkT/NjtK/zU6Sf8yN0f/MTZF/y80
+        RP8uM0P/LDFC/ysxPf81O0P/OUBI/xUYG/8pLzX/KzI70CkxOx0qMjsAAAAAAAAAAAAAAAAAAAAAAC01
+        PgAsNj4ALjY/aTI5QfsgIyf/ISQp/11nbP9JUJ7/Bwfl/wUG5v8FBub/BQbm/wUG5/8GBuf/BQXp/w0O
+        0f9GTW//Gh0a/zA2Of9NVlX/LjKd/wMD6v8CA+j/AgPo/wID6P8CA+j/AgPo/wEC6/8HCMv/Oz97/291
+        cv9dZGb/MTY5/yEjJP9AUWH/Z465/3Wq5P95se3/erLw/3qx7P95sOz/grr0/3yy7P95sOr/ebDq/4S8
+        9f+HwPf/e7Lt/3iu6f93rej/gLjy/4G58v+BuPL/e7Lt/3Ss6f91rOn/bprD/0RZa/8hJSb/LzM0/0VL
+        UP9KT1f/RUlU/0RJV/9FS1n/Rkxa/0ZMWv9FSlj/Q0lX/0JIV/9ARVP/PkNK/z1ESv8xODv/EhUV/y80
+        Ov84PUz/NjxL/zU6Sf8yN0f/MDVF/y80RP8uM0P/LDFB/y0yOv9ASFH/JSou/xwfI/8vNj3+KjE7ewYG
+        GwArMzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAxOUMAMDlCGzA4QcouMzr/Fxkc/0BGTf9ncn//JirF/wID
+        6f8FBub/BQbm/wUG5v8GBub/Bgbm/wQD6f8gIrT/QklO/xYYGP8+RUf/TlZd/yQntP8CAuv/AgPn/wID
+        6P8CA+j/AgPo/wID5/8BAuv/AwTZ/ystj/9pbnT/cnp3/05VV/8pLC3/Jior/0JSYv9ihav/d6nf/3y0
+        7v9+tvH/f7fy/3617/97sev/e7Lt/4fA9v+Jwvb/f7bv/4O88v94rur/eK/q/3uz7/98s+//dafd/2CF
+        rP9EVmn/Jisu/yYpKP9QVVb/dXt6/1hfY/9ITVT/SU9Z/0hNW/9GS1n/RUtZ/0VLWf9DSFb/QUdV/0JH
+        Vf9ARk7/P0VL/zpBRv8XGxv/Iycr/zg9Sv83PUv/OD1M/zU6Sf8zOEf/MjdG/zA1RP8vNET/LzM//zg+
+        R/87Qkr/Fhkc/ykuNP8sMzvYKTE6JioyOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1PEMAJi87AC82
+        QGg0O0P5Iycr/yAjJ/9cZmr/Vl+X/wsN4f8EBef/BQbm/wYG5v8GBub/Bgbm/wYG5/8EBOX/MTSc/zM3
+        Nf8cHyD/Rk1P/1JZZf8iJbv/AQLr/wID5/8CA+f/AgPn/wID5/8CA+f/AgPp/wAB5v8TFLD/UFR//36D
+        gP90e3r/SlBS/ysuLv8lJib/OUJJ/1Npfv9pi63/fKnW/4Cz5P99sur/gLfx/4O89f+Cu/T/g7v0/43G
+        9P96ruH/dqPU/2qNsv9TaH//Nz9H/yMlJf8qLSz/T1RV/3d9ev9uc3v/UVV9/3B2d/9MUlj/Sk9X/0lP
+        W/9HTFr/RUtY/0VKWP9DSFb/QkdU/0JIUf9BRk3/PURK/x4iJP8aHh//Oj9K/zk+TP83O0r/NjxK/zY7
+        Sv80OUj/MjdG/zA1Rf8wNUP/Mjc//0RMVf8iJir/HiEl/zA3Pv0qMTp8KT5CACoyOgAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAALzdAAC42PxUxOUG9MzlA/xkcH/84PkX/bXd+/zk/uf8DBOj/BQbm/wYG
+        5v8GBub/Bgbm/wYG5v8GBuj/Bwjd/zxAh/8nKiX/Iyco/01UVf9VW2z/JCa//wIC6/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID6P8BAev/AwTX/yMlnv9fYoH/h4yJ/4KHhf9hZ2j/QERG/yosLP8qKyv/MjY3/z1F
+        TP9KV2X/UmN0/1Zpev9Ya3v/VGZ3/09daf89Rk7/MDM2/yosK/8rLCz/QUVF/2Rqaf+DiIP/fICE/0lM
+        h/8SE7T/BgbR/1VZhv9qcW7/SE5U/0pPWP9LUF3/SE1a/0VLWf9DSFb/Q0hS/0BGTP8+RUv/JCgr/xUY
+        Gf83PET/PEBP/zo/Tv85Pk3/NztK/zQ5SP80OEf/MjdG/zE1Rf8wND7/PkVN/zc+Rf8XGRz/LTI4/y01
+        Pc0sNDwfLTQ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANDpDAC00PQAvNj9RNTxE8Sou
+        M/8cHyL/VV1j/2x2kP8eIdT/AwTo/wYG5v8GBub/Bgbm/wYG5v8GBub/BQXo/w0O1P89Q3f/ISQe/yku
+        MP9PV1j/XGJv/yotvP8CA+r/AQLo/wID5/8CA+f/AgPn/wID5/8CA+f/AgPp/wAB6f8FBdH/JSaj/1lb
+        jP+Hi5D/lJmT/4uRjv90enn/X2Rl/01RU/8+QEH/Nzk4/zAxMP8vMTD/Njg3/z1AQP9PUlP/YGVl/3V7
+        ef+Nko3/j5OP/3V4if9FR4//Fhez/wEC3v8BAur/AAHr/xkavf9vc3r/W2Fk/0pQVv9LUFr/SU5c/0ZL
+        Wf9GS1T/RElP/0BHTP8pLjD/FBYX/zU5QP89QlD/Oj9O/zk+Tf85PUz/OD1M/zY7Sv80OUj/MTZF/zA1
+        Qf83PUT/Rk5W/x4hJP8jKCz/MThA9yszO2InMjoALDE6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAC81PgAtNDwJMDdAnDc9Rf8fIiX/Ki4z/2t1ev9bY6X/DA3h/wUF5v8GBub/Bgbm/wYG
+        5v8GBub/Bgbm/wUF6f8QEc//Q0dy/x8hHP8pLTD/UFhZ/2Nocf85PLH/Bwjm/wAB6f8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+n/AAHp/wEC2/8REr3/MTKi/1pclP96fZb/kZSZ/5qem/+gpJ//oKWh/6Ck
+        oP+fo5//oKSg/52hnf+VmZf/i46Z/25xkv9KTJb/IySp/wkJyP8AAOL/AQLq/wID6P8CA+f/AgPn/wEB
+        5v84Opv/c3hz/05UWv9LUVj/R0xY/0dMVP9FSVD/P0ZM/yovMf8UFhb/Mzc9/z9EUv88QU//PEFP/zo/
+        Tf84PUv/NzxL/zc8S/81Okn/MTZE/zI3P/9HTlf/LDE2/xsdIP8zOUD/LjU+rC01Pg8tNT4AAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC41RAAxOD8AMDc/KjQ7Q9Q1OkD/GRwe/0BF
+        TP92gIf/RUu2/wYG5v8FBeb/Bgbm/wYG5v8GBub/Bgfm/wcH5v8FBej/ERLM/z9Cc/8iJR//Jiss/01U
+        V/9obm3/UlWi/xYW2/8AAer/AQLn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID6P8BAur/AADp/wEB
+        4P8FBs//DxC9/x4ft/8uL6n/NTes/zc5p/84Oqf/NDar/ykqqv8ZGrj/CwvB/wME1v8AAOP/AAHq/wEC
+        6v8CA+f/AgPn/wID5/8CA+f/AgPn/wEC6f8ICdb/V1uE/2Vsa/9ITlT/Sk9V/0RKUP8/Rkv/Jywt/xMX
+        Fv80OD7/QUZT/z1CUP88QU//PUJQ/ztATv85PUz/NjtJ/zU5SP80OUf/MzhA/0NKUv88Qkn/Fxkb/y4z
+        OP8yOUHfLDI6NywyOwAxNjwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAzOkIAKjM/ADE4QV45QEnyLTI3/xseIf9TWmH/eYOP/zM3xv8DA+j/Bgbl/wYG5f8GB+b/Bgfm/wcH
+        5v8HB+b/BQbp/xET1f8/Q33/JCYh/yMmJv9IT1P/Z21q/2xxj/8yNMf/Bgfm/wAB6P8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+n/AQLr/wAB6/8AAOn/AADo/wAA6P8AAOf/AADo/wAA
+        6f8AAev/AQLr/wID6P8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wEC5/8AAO3/Jym3/3Z7
+        ff9UWV7/RUpS/0BGS/8iJyf/FRgY/zg8Qv9CR1X/P0RS/z9EUv9ARVL/PUJQ/zs/Tv86P03/ODxL/zU5
+        SP80OEL/QEZO/0lQWP8dICL/Jiou/zQ6QvctMzxuM0FHAS82PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANj1HADY9Rwk1PEWSPEJL/iUpLP8kJyr/Ymlv/3F6
+        lv8jJdH/AwPo/wYG5f8GB+X/Bgfm/wcH5v8HB+b/Bwjl/wYH6P8MDdr/NTiP/zI0M/8dIB3/PkRI/19m
+        Zv95foL/YmWt/yQl1/8DA+j/AAHo/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8BAuf/AADp/wsL5P82OMj/a2+X/2lucf9NU1n/O0FE/xseHv8cHyD/P0NL/0dMWf9BRlT/P0NR/z1C
+        UP8/Q1H/PEFP/ztATv85Pkz/OT1M/zc7Rv87QEf/TVRc/yYpLf8hJCf/OUBH/zE3QKMsMjsPLjQ9AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ7
+        RAA0O0MbNz5HuTxCSv8hIyf/LDA1/212e/9udp7/HR/U/wMD5v8GB+X/Bwfl/wcH5f8HB+X/Bwjm/wcI
+        5f8HB+f/CAjj/ykrqP82OUn/HB4Y/y8zNf9SWV3/cXd2/4OHlf9hZLr/JifX/wYG5/8AAOj/AQHn/wID
+        5v8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8BAuf/AAHn/wAA6P8ODuP/OjvO/3BzqP97f4H/X2Rm/0ZNUv8uMjT/FxkZ/you
+        MP9JTVX/SE1a/0ZLWP9ESVf/P0RS/z5CUP8/Q1H/PUFP/zs/Tf85PUz/OD1J/z5DS/9SWWL/LzM3/xse
+        If83PUT/NDtEyDA3QCYwNz8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAADpBSAAyOUIANDtDMzg/SNQ6P0X/HiAj/zk9Qv94gYb/cXmm/x0f
+        2v8DBOb/Bwfl/wcH5f8HCOX/Bwjl/wcI5f8ICOX/CAjm/wUG5/8YGcj/OTt2/yYoJf8iJSL/QEZJ/1xj
+        Z/98gX//jpKc/3Z4vf9ERdL/GBni/wQE5/8AAOf/AAHn/wEC5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPm/wEC5v8BAub/AADn/wEB5/8ICeX/IyTc/1JTyv9/ga3/hoqL/2ht
+        bf9NVFn/O0BE/yEjIf8bHR3/foSM/3+HkP9JTlX/R0xX/0VKWP9FSlf/QkdV/z9DUf89QU//PUJQ/ztA
+        Tv86P0r/P0RM/1RbZP83PEL/Gh0f/zU5QP82PEXeLzY+QSswOgAzO0MAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5QEYAKzI7ADI5
+        QUs6QUnjOT1D/xweIP87P0T/fYaL/3Z/rv8gItj/BAPm/wcH5f8HCOX/Bwjl/wcI5f8ICOX/CAjl/wgJ
+        5f8GB+j/DAzf/yUmpP8uMEz/IyUd/ygqKP9ESk7/XmVo/3qAfv+Xm5v/mJu3/3t9yv9OUNj/Kivg/xMT
+        5f8GB+b/AAHm/wAA5/8AAOf/AADn/wAA5/8AAOf/AADn/wAA5/8AAOf/AQLm/woK5v8XGOP/Njfd/1tc
+        0/+Chb//l5uo/4mNiv9pbm//T1Zb/0FHSv8qLSv/FhgS/yMkQf8ZGpv/X2TB/7K8wv9cYmr/RktS/0ZK
+        V/9ESVb/Q0dV/0FFU/8/Q1H/P0NR/z1BTf9CSE//WGBp/zxARv8aGx7/Mzc9/zpBSesyOEFaMzM6ADQ6
+        QgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAANjxEADc/RAE0OkJdPENL6zg8Qv8dHyL/PEBG/32Gi/9/h7H/JijZ/wMD
+        5v8HB+X/Bwjl/wcI5f8HCOX/CAjl/wgI5f8ICeX/CAnm/wcH6P8TE9T/JyiP/x4fN/8hIx3/LTAs/0JH
+        Sf9WXWL/a3J1/4SKif+eoqH/p6q4/6Kkxv+MjdL/eHrZ/2Rm3P9ZW+D/UFHi/0FC4f9BQeH/Tk/h/1pb
+        3f9patv/e33W/5OVzf+hpL//oqWr/5KXlP93fHz/X2Vq/05UWv8+Q0X/KCwn/xQVEf8NDij/DxB8/w8P
+        0v8GBur/Dw/W/4WMuP+UnKL/SE1T/0VKUv9BRlP/P0RR/z5CUP89QlD/PkJN/0NJUf9ZYWn/P0RL/xsd
+        IP8yNTr/OT9H8TE3P242P0UENDxDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg9RwA4PkcENjxFZkFI
+        UOw6PkT/HiAj/zs/Rf+EjJH/i5S1/zg81f8FBuX/Bgfl/wcI5f8ICOX/CAjl/wgI5f8ICOX/CAnl/wkJ
+        5f8ICOf/Bwfo/w8Q0f8nKZr/HB5F/xobHP8qKyX/PUA+/05TVf9XXWL/Ymlt/292eP+Bh4f/kZWT/56i
+        n/+nqqj/qq6v/6uus/+rrrP/qq6v/6Sopv+coJ3/jJGR/3yBgv9obnL/XGJo/1BWW/9HTE7/Nzs5/yIk
+        Hv8SExT/Dg83/w4Ogv8KC83/CAnp/wcI5/8ICOX/BAXm/ykrw/+gqLb/bnR8/0FGS/9DSFL/QUVT/z5D
+        UP89QUz/RUpS/1tia/89QUf/HB4h/zM3Pf87QUnzMTc/dzA3PgcwNz4AAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAA4PUUAOD5FBDY8RGZCSFHrP0RK/yIkJ/85PkP/foaM/5iis/9RVc3/Cwzj/wUF
+        5f8ICOT/CAjl/wgJ5f8ICeX/CAnl/wgJ5f8JCeX/CQnl/wgJ5/8HCOn/Cgva/xITrv8WF2r/HB06/yss
+        Lv9BQjr/UFJM/11gXf9gY2P/X2Rn/11jZ/9cYmb/XWRp/2BmbP9fZWv/XmRp/1xiaP9ZX2P/WF1g/1db
+        XP9QU1H/QkM+/zM0LP8eHyH/FBUy/w8QZP8NDab/Cgra/wgJ6/8ICej/CAnl/wgI5f8ICOX/CAjl/wUF
+        4v9UWbT/m6On/05TWv9BRkz/QUVR/0FGT/9MUlr/WmFp/zg8QP8dHyL/NztB/z1DS/EyOEB2MTg/CDI4
+        QQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANz1FADU6QAQ5P0hdRUtU40NI
+        T/8kJir/LjI2/3F4f/+dpq//cXfJ/x8h3/8EBOX/Bwfk/wgJ5P8ICeX/CAnl/wgJ5f8JCeX/CQnl/wkK
+        5f8JCuX/CQnm/wgI6f8ICef/CwvU/xARsP8bHIj/Kyxu/0FBYP9YWGb/bW1t/35+ef+GhoD/iYqD/4mK
+        g/+FhoD/gYJ7/3h4cf9ra2X/WVlY/0NDUf8xMU//ISFg/xYWgv8PD63/CwvT/wkK5/8JCer/CQnm/wgJ
+        5f8ICeX/CAnl/wgI5f8ICOX/CAjk/wYH5v8PENL/foSq/4aOlP9DR03/QUVM/1VbZP9bYmr/LzI2/x4h
+        I/85PUP/PURM6zQ6QmwzOkEHNDpCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAD1CTAA6P0gCPENLSkVMVdRJT1b/LTA0/yYoLP9dYmn/nKSq/5qiyP9GStj/Cgrj/wQF
+        5f8ICeT/CAnk/wgJ5P8ICeX/CAnl/wgJ5f8JCeX/CAnl/wkJ5f8JCuX/CQrm/wkJ6f8JCen/CQrj/wsL
+        1/8QEMf/GBi6/yMktP8tLaX/MzOj/zk5p/84Oaf/MjOi/ykqoP8gILD/Fha2/w8Pxf8LDNf/CQrj/wkK
+        6f8JCun/CQrm/wkK5f8JCeX/CQnl/wgJ5f8ICeX/CAnl/wgI5f8ICOT/CAjk/wcI5P8CAub/LzG//5qi
+        rv9obnf/X2dw/1RaYf8nKi3/Jyot/0JHT/8/RU7eNTtDWDY6QwQ2PEQAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFS1IAKjM8ADxDSzNESlO6TVNc/TY5
+        Pv8iJCf/Q0dN/4ePlf+nr7r/eH7N/ywt3/8GB+T/BQbk/wgJ5P8ICeT/CAnk/wgJ5P8ICeT/CQnl/wkJ
+        5f8JCuX/CQrl/woK5f8KC+X/Cgvl/woL5v8JCuf/CQno/wgI6P8HCOf/Bwfn/wcH5/8HB+f/Bwfn/wgI
+        6P8ICen/CQrp/wkK5/8KCub/Cgrl/woK5f8KCuX/CQrl/wkK5f8JCuX/CQnl/wgJ5P8ICeT/CAjk/wgI
+        5P8ICOT/BQbl/wYG5f8oKtz/cHbC/5aeqf91e4X/QkZM/yAjJf8vMjb/RkxT/j9FTsQ6QEk/Nz9FATpA
+        SAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAPUZPAD1DSgA+RUwbQEdPkktRWvJGSlD/KCot/ywuMv9ma3L/n6is/6uzyv9qb9b/ISPg/wYG
+        4/8GBuT/CQnk/wkJ5P8JCeT/CQnk/wkJ5P8JCeT/CQrk/woK5f8KCuX/Cgvk/woL5f8KC+T/Cgvl/woL
+        5f8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+X/Cgvk/woL5P8KC+T/Cgvl/woK5f8KCuT/CQrk/wkK
+        5P8JCuT/CQnk/wgJ5P8ICeT/CAjk/wUF5P8GBuT/ISPg/2hs1f+gqL//k5uf/2Bmbf8sLjL/IiQn/z5C
+        SP9GS1T2PUNLnzpASSIyNj8AQ0lRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9Q0sAPEJJCTxCS15GTFTVT1Rb/zo9
+        Qv8jJSn/P0JI/32Ei/+vt7z/srra/3N44f8qLOP/Bwjj/wQE4/8ICOT/CQrk/wkJ5P8JCeT/CQnk/wkK
+        5P8KCuT/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgrk/woK5P8KCuT/Cgrk/wkK5P8JCuT/CQnk/wcI5P8DBOT/Bwjj/ygq4f9obNf/o6rJ/6Or
+        sP9yeH7/PEBF/yEjJv8xNDj/Sk9W/0RKUt06P0hqNDpCDTU8QwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAOT1FADs8RAE3PEQqQUdPnFFXX/FOU1n/MjU5/yYpLP9PU1n/j5ad/8LK0P/Dy+b/jpPr/0lM
+        6P8WF+T/BAXj/wQF4/8HCOT/CQnk/wkK5P8KCuT/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woK5P8KCuT/Cgrk/woK5P8KCuT/CQrk/wcI5P8EBeP/BAXj/xQV
+        4/9DRuT/g4fe/7O60/+ss7j/gYiO/0hLUf8lJyr/LC8y/0ZLUf9LUFj0P0VNpjU7QzI8Rk0BOUBJAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wA7Q0sAPUVNCD9GTlBJT1i9Vlxk+U5T
+        Wf8zNjr/KSwv/05RV/+Mkpr/vsbL/9Xc6v+9wvT/gYXu/0pM6f8eIOT/Cwzj/wUF4v8GBuP/Bwfj/wkJ
+        5P8JCuT/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KCuT/Cgrk/woK5P8JCeT/CAfj/wYG
+        4/8FBeP/Cwzj/x0e5f9ERef/foHp/7K46f/J0d7/sbm9/3+GjP9JTVL/KCsu/ywuMv9FSU7/T1Rc+0VL
+        Usc5P0dbNjtCDDI3PgBCSFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAQEdTADM5NAA9Q0oVQUdQaFFXYMpaYGj6UVVc/zc6Pv8qLTD/PUBF/21yev+psLf/z9fe/97k
+        8v/M0Pj/o6X1/3V17v9PUOr/Kyvm/xoa5P8PD+P/CAni/wYH4v8GB+L/BQbj/wUG4/8FBuP/BQbi/wYG
+        4v8GB+L/Bwfi/wwM4/8YGeT/KCnl/0hJ6f9wcu3/n6Pz/8TJ9P/U2uv/xczT/6Cnrv9pb3b/PkFG/ygr
+        Lv8vMjb/SUxS/1NZYPxJT1fSPEJKcjc8QxszPzYANz1DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABCR00ASEpOAD1CShtDSVFoUlhhw15j
+        a/ZaX2X/RUlO/zAyNv8vMTX/SEtR/3B2fP+mrbP/ydDU/+Hn7P/j6PT/3N75/8rM+v+xs/f/mJnz/46P
+        8v+EhPH/b3Dv/2lq7/9nae//aGnu/3l68P+NjvL/lZby/6qs9f/FyPj/2Nz4/9zi8v/a4Of/v8bN/5yi
+        qv9tcnn/SExS/y8yNv8uMDP/QUVK/1VaYf9ZX2f4TFNbyj1DS3M3PUUgOD1FATk/RgAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAEVLUgBNUlcAPkNLFEVLU1JPVV6kXGJr4mNocPxYXWP/RUhN/zI1Of8wMzf/P0JG/1RY
+        Xv9vdXv/l5yi/7G2uv++w8f/1dvg/+Dk5v/h5en/3+Lp/9rd5P/a3eT/3+Lq/+Xp7v/h5uj/193h/7/F
+        yv+ssrf/lZuh/3B1fP9PVFn/PD9D/y0vMv8wMjX/QkZK/1VaYP9hZ2/9XGNs5k5UXatFS1NZQEZPGDhB
+        RAE+RUwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEJJUgBCSFEHREpTLExS
+        W21WXGWxXWNr4WRqcvpkaXD/XWJo/0tOU/9AQkb/NTg7/zc6Pf9CRUj/Sk1R/1FUWP9YXGD/XWFm/2Jl
+        av9iZWv/XmFn/1hcYP9NUFT/RUlN/z9CRv80Nzv/MjU4/zw/Q/9GSU7/Vlpg/15jav9kaXL7XmVu5Vdd
+        ZrZJUFlzQklRMT9GTglBSFIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAQUhQAEhOWgA7QkoKRUtUKkpQWFxYX2iTXmRuwWlveOFvdX70bHJ6/W1z
+        ev9qbnT/Y2dt/1ZZXv9XWV7/Wl1i/1teY/9aXWL/WFth/1RYXf9TV1z/XmJo/2dsc/9udHv/bHJ6/Wxy
+        e/VmbHXjWWBpxFNZYphIT1dhQkhRLzk/SAwyMz4AOD1HAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADY8
+        QwAnLTQDQEdPEkZNVS9NVF1TVVxle1hfaJ1YX2e8Y2pz0Glwed9rcnzqbnV/83B3gfhwd4H4b3aA8210
+        fetqcXrgY2pz0Vpha71bYmugVl1nfk1UXVZFTFUyQkhRFSwzOQNjansAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAD/////8AAAD///////////AAAAAP/////////8AAAAAD/////////gAAAAAAf///////+AAAAAAAH/
+        //////8AAAAAAAB///////wAAAAAAAA///////AAAAAAAAAP/////+AAAAAAAAAH/////8AAAAAAAAAD
+        /////wAAAAAAAAAA/////gAAAAAAAAAAf////AAAAAAAAAAAP///+AAAAAAAAAAAH///8AAAAAAAAAAA
+        D///4AAAAAAAAAAAB///4AAAAAAAAAAAA///wAAAAAAAAAAAA///gAAAAAAAAAAAAf//AAAAAAAAAAAA
+        AP//AAAAAAAAAAAAAH/+AAAAAAAAAAAAAH/8AAAAAAAAAAAAAD/8AAAAAAAAAAAAAD/4AAAAAAAAAAAA
+        AB/4AAAAAAAAAAAAAA/wAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAfgAAAAAAAAAAAA
+        AAfAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
+        AAGAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AACAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAPAAAAAAAAAAAAA
+        AAPAAAAAAAAAAAAAAAPgAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAfwAAAAAAAAAAAAAA/wAAAAAAAAAAAA
+        AA/4AAAAAAAAAAAAAB/4AAAAAAAAAAAAAB/8AAAAAAAAAAAAAD/8AAAAAAAAAAAAAD/+AAAAAAAAAAAA
+        AH//AAAAAAAAAAAAAH//AAAAAAAAAAAAAP//gAAAAAAAAAAAAf//wAAAAAAAAAAAA///4AAAAAAAAAAA
+        B///4AAAAAAAAAAAB///8AAAAAAAAAAAD///+AAAAAAAAAAAH////AAAAAAAAAAAP////gAAAAAAAAAA
+        f////4AAAAAAAAAA/////8AAAAAAAAAD/////+AAAAAAAAAH//////AAAAAAAAAP//////wAAAAAAAA/
+        //////8AAAAAAAD////////AAAAAAAH////////wAAAAAAf////////8AAAAAD//////////gAAAAf//
+        ////////8AAAD/////8oAAAAgAAAAAABAAABACAAAAAAAAAAAQATCwAAEwsAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAPUpOAFBfYgApNDoIGiUrFiEpMDIcJCxVFx8ndxcgJpkZIym1GiIpyxYfJd4XICbwFx8m/BYe
+        Jf8WHiX/Fh4l/xYeJf8XHyf/FyAn/xcgJ/0XHybxFyAn4BojKs4aIyq4GSIpnRcgJ3sbJCpZISowNxoi
+        KBgmLjUKSFJUATlCRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAACQrNgAkKTcAIy00CCQtNB8bJCxHGiMqdhokK6QXISjIFh8m5RUd
+        JfEVHSX6FR4l/xcfJv8YISj/GCEn/xghKP8YIin/GSIp/xwkK/8cJSz/HSYt/x0mLf8aIyr/GSIp/xki
+        Kf8ZIin/GSIp/xcgJ/8WHyb/Fh8m+xYfJvIWHyboFh8mzBokK6kaIip7GSIoTCApMCMiLDQJRk1TATA4
+        PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAISkzAC41QQEiKzMMGyMrMh0l
+        LGgYISikFyAn1BcgJ/EXICf9FyEo/xkiKf8bJCv/Hygv/yApMP8hKjD/ISov/yIqLv8iKi3/Iiot/yIq
+        Lf8eJSj/Iigr/x4kJv8dIyb/Iyks/yAnKv8iKS3/Iyou/yMrL/8jLDH/Iisw/yMsMv8iKzL/Iiw0/x0n
+        Lv8ZIyr/GCIq/xYfJv4WHibzFyAo2RkiKqocJSxwGyQrNyQtNA8gKjUBHygyAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAC2v7UAAAAEADQ+QwcdJi0qHCUsaBggJ64WHybhFR0k+hUeJf8YISj/Higw/yIrMv8jLTL/JC0x/yAn
+        Kf8aHyH/Fxwd/xQZGf8RExT/DQ8P/wsNDv8LDg3/Cw4N/wsNDf8LDQ3/Cw0N/wsNDf8LDQ3/DA0N/wwN
+        Dv8MDg7/DA0O/w4PEP8RExT/FRka/xcbHf8cICP/ISgr/ycvM/8mLjT/ICkv/x8pMf8bJSz/FyAo/xUe
+        JfsXHyblFh8mtRojKXEdJywxMTxBCQAAAAB3hoQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4QkkAZXJ6ACIrMhIcJixLGSIpmBYeJtoWHiX5FyAn/xsl
+        K/8fKC//Iywy/yQsMP8bICP/Fhoc/xASE/8NDg//CwwN/wwNDf8OEhL/ERUW/xQWGP8YHB3/GB4g/x4k
+        Jv8jKSv/Iyot/yYtMP8lLTD/JS0x/yYuMf8kKy7/Iyks/x8lKP8aHyL/GBwe/xUYGv8TFhf/EBIT/wwN
+        Dv8MDQ7/Dg8Q/xESE/8WGhv/HCEk/yIqLv8lLjT/ISox/xwmLf8WHyb/FR4k+xUeJOAYISehGyQrUyEq
+        MRZndXwBOkVMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuOEIATVZjASMt
+        NBsbJCtiGSIpuBYfJvAXHyb/GSIp/x4nLv8hKjD/HiUo/xwgIv8QExX/DQ8Q/wsMDf8OERH/ExYX/xcb
+        Hf8gJyr/JS0x/ygxNv8uOT7/MTxC/zdDSf82Q0j/OEVK/ztITP88SU3/O0hK/zpHSP85R0f/O0lK/z1K
+        TP89S0//OUdL/zhFSf86Rkv/NEBF/zA6QP8pMjb/Ji0x/yEnKv8YHR//EhUW/xASE/8MDQ3/DQ8P/xEU
+        FP8aHiD/HyYp/yIrMf8gKTH/GSMq/xYeJf8VHSTzFx8mwRghJ28gKS8iMjxDAiYwNgAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAvOEEAVV5oAR8pMB4ZIiluFyAnyBYfJfgXICf/HCUs/yEqMP8gJyz/GR0f/xAS
+        Ev8MDAz/DA4O/xASE/8ZHh//ISgq/ykxNv8xO0D/Mz5E/zdER/89TEz/QlFO/0FQTv9AT1H/QFBS/0BP
+        Vf8+TFT/PEpQ/zhFUv80QmH/NEFu/zRAcv80QG7/NUJg/zpHUf8/TVT/QVBY/0JRVP9CUVP/QlFQ/0NS
+        T/8/TU7/OUZJ/zZBR/8zPkP/KjM3/yIpK/8aHyH/ERQU/w4PD/8NDQ7/EBIT/xkdH/8hKCv/Iisx/x0m
+        LP8XHyb/FR0k+hcfJtIYISd6HictJEBHTwIuNT0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKjIAPlNcACIrMxYaJCpoFyAnyRUd
+        I/kXICb/HSgw/yIsM/8dJCj/ExgZ/w0PEf8MDxD/ERQW/xsiJv8jLDH/LDc+/zNBSf88TFL/QVJU/0JU
+        Vv9CVFX/O0pa/zI/bP8pNHz/ICmJ/xkgpv8TF6z/DRHJ/wsO0v8KDc//CArQ/wYI2v8FB+L/BQbk/wUG
+        4v8GCNn/CQrP/wwP0f8NEc//EhWu/xgdqP8gKI7/KzV9/zI+bf87Sl//Q1RW/0JUVv9BU1X/PU5T/zRC
+        Sv8wO0P/JS0y/xsiJv8SFhn/DQ8Q/w0PEP8TFxn/HSUp/yMtNP8fKjP/GCIp/xQdI/sWHiXRGSIpcx4p
+        MR05TE8AIi41AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAIioxACcvNQkcJSxOGCAnuRYeJfYXICf/Higx/yIuOP8cJi7/Ehgd/w0SFf8PFRn/Fx8l/yIv
+        Of8sO0j/NEdT/zxSW/9BWV7/Q1xi/zxScv8xQ4b/Hyug/xQcuv8LEM7/BAbf/wID7v8CAvH/AQL0/wEB
+        9P8CAvP/AgPy/wID8v8CA/L/AgTx/wIE8f8CA/H/AgPx/wID8f8CA/H/AgPy/wID8/8BAvT/AQH0/wEC
+        8v8DA+7/BAbe/wsP0f8UG7z/Hyqc/y9Af/86T3D/Qlph/0JZX/87UFn/MUNO/yo5Rf8iLzn/GSIp/w8U
+        Gv8LEBT/ERcb/xskK/8iLjf/Hikx/xcgJ/8UHSP5FyAmxBwlLFwoMjkPAAAAAHSBiAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALTg/AGl2fQEeJy4sGSIplhYeJesWHiT/HCYu/yIu
+        OP8aJCv/EBcb/wwRFf8QFhv/GiQq/yc0P/8wQk3/OU5a/0NcYv9EXWr/OU11/yY0k/8XILT/CgzS/wQF
+        6/8BAvH/AQLy/wID8v8CA/D/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DA/D/AgPy/wIC8v8BAvD/AwXr/wgM
+        0f8VHLP/JTOR/zhNcf9BWGT/Qlpe/zlPWf8zRVL/KDVB/x0nL/8RFxv/DBAU/xAWGv8ZIyr/Iy85/x4p
+        Mf8XHyb/Fx8m8hghKKMcJSw2N0JKAyUvNwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtsbSAAoR
+        GAAkKzQNHCQsYxcgJ9MWHyb+GiQs/yIuN/8dJy//Ehgd/wwQE/8QFhr/HCYu/yk4Q/8zRVL/PFJb/0Nc
+        Y/89VG//KTmK/xYeuP8GCOD/AgLv/wEB8/8CA/H/AwTv/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AQPx/wEB8/8CAu//Bgjc/xQcuP8pOIv/PlRv/0Ze
+        Zv9AVl//M0VS/yk3Qv8eKTD/Ehke/wwSFf8SGB3/Hykx/yMvOP8dJy//Fx8m/xYfJtwaIilyHycuFAAA
+        AABATVIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0pMQAgS2AAHicuKRkhKJ0WHiX0GCAo/yAsNf8gLDX/FRwi/w0R
+        FP8PFBj/HScv/yg2Qf8yRFD/PlVd/0JZZP81R3j/HSii/woO1f8CAuz/AQHz/wID8P8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8CA/D/AQH0/wIC7P8KDdT/Himg/zdLeP9DW2b/P1Ve/zRGUv8qOEP/Hikx/xEX
+        HP8NEhX/Fh0i/yEtNv8iLjj/GSIp/xUdI/cXICatHicuNTY/UAIlLjkAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkLTUALDU8BR0m
+        LlAYICjMFh4l/RslLf8hLTb/GSMq/w4TF/8OEhf/GSEo/yYzPf8zRVL/QFdf/0JaZP8xQ3r/GCKv/wYI
+        4P8BAfP/AgLy/wME7/8DBO3/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTu/wIC
+        8v8BAfP/Bgjd/xggrf8xQ3n/Qllj/z9VXv8zRFH/KDdC/xokK/8OFBj/DhMX/xkhKf8jLzn/HSgw/xYe
+        Jf8WHiXYHCQtYCw1PAglLjYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAHycvACEpMQ8aIyp2FR4l5hcfJv8eKTL/Hioy/xIZHv8LDxP/Exof/yIu
+        OP8vQU3/O1BY/0JYX/81SHr/GCGy/wUH4v8BAvP/AgPx/wME7f8DBO3/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8CA/H/AQLz/wUH4P8YIK7/NEZ6/0Na
+        Yv89U13/MUJP/yUyPf8VHSP/DBEU/xIZHv8fKzP/IS02/xgiKP8VHSTvGSIqhyMuNRgeKC0AJC86AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALjtAAA4THAAhKzEdGSEomBUd
+        I/YYISf/ISw1/xojKv8OExf/DhMX/xkiKf8pOET/NkpU/0FYXP83S23/HCaj/wYJ4P8BAvP/AgPw/wME
+        7f8DBO3/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7/8DBO//AwTv/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7f8DBO3/AgPw/wEC8v8GCOD/HCak/zpOa/9CWmD/N0pX/y08SP8eKTH/DxQZ/w0S
+        Fv8aIyr/IzA5/xskLP8VHST5GCAnqx8oMCkAAAgAKDQ9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAC43QAAAAAAAHigwKxcfJrIVHSP8GiMq/yEtNv8WHSP/DBEU/xIYHf8iLzj/MEFO/z1T
+        W/8/VWX/JTKQ/wkN1v8AAfL/AQPw/wME7f8DBO3/AwTt/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTv/wID7/8CA/L/AQLz/wEC9P8BAfX/AAD1/wAA
+        9P8AAPH/AADt/wAB6/8AAO3/AADx/wAA9f8AAPb/AQH0/wEC8/8CA/H/AgPv/wME7/8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7f8DBO3/AwTt/wID
+        8P8BAfL/Cg7S/yY0jP9CWWj/N0tZ/yMwOv8kMDn/FRsi/wwQFP8VHSL/IzA5/x0oL/8WHST/Fh8mxB4m
+        LTiJm54AKjM6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmMTkAY3x+AB8oMDoXICfEFB0k/hwm
+        L/8fKjL/ERgc/wwQE/8XHiT/KTdC/zdJVf9DWmH/Nkh1/xMauP8CAu7/AQHy/wID7v8DBO3/AwTt/wME
+        7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8CA/D/AgLz/wEB
+        8v8CA+7/BQbr/wcK1f8NEc3/FBrD/x0msv8hLLr/Iy+3/yQxqv8nNJf/KTeQ/yYzmf8jL6z/ISy4/x4n
+        tP8WHb7/DhPN/wcK1v8FBuv/AgPv/wEB8f8CAvP/AgPw/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7f8DBO3/AwTt/wME7v8BAvX/Hymn/0NaZP8pOEP/FyAm/x4p
+        Mf8oNUD/GyUs/w0RFf8QFxv/Hysz/x8qMv8WHiX/Fx4m0SApMElLVl4CLzlAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAJS83AExWYwEfKC9CGCEn0BYeJf8eKjL/HCYu/w8UGP8NERX/GiMq/ys6Rv88UVr/Qlln/yY0
+        kP8IC9n/AAHz/wID7/8DBO3/AwTt/wME7f8DBO3/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wID8f8BAfL/AgPu/wcJ3P8SGMb/HSex/yo5l/86ToP/RFt//0lhfv9LZHf/Tmhs/09p
+        bf9OaW3/Tmlv/01nbv9MZ27/Tmlw/05obf9NaGz/UGtu/05od/9KY37/RFp+/ztPhP8rOZj/HSiu/xEY
+        x/8HCdz/AgPu/wEB8v8CA/H/AwTv/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7f8DBO3/AQHz/w8Vzv8/VXD/OEtV/xoiKv8aJCv/GiMq/xwnLv8nNED/ISw2/w8TGP8OExb/GyQs/x8r
+        M/8WHyb/GCEo2yAqMlM1REwDKDQ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIsNABJV2MBHCUtRBggJ9QXHyX/ICsz/x0n
+        L/8NEhb/DhQY/x8qM/8uP0v/PlRZ/ztQav8aI6//AgTs/wEC8v8CA+3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AgPw/wEB8/8CA+//Cw7U/xkitf8rOZP/PlOB/0hh
+        cf9MZ23/SGFp/0RbZP88UVv/NUdR/zJDT/8uPUv/LDtI/yw6SP8rOUf/KjhF/yk4RP8rOkf/LDtJ/y08
+        Sf8uPUv/MUJP/zZIUv89U1z/RFxj/0hhaf9MZm3/SGFy/z5TgP8tO5D/GSG2/wsO1/8CA+3/AQHz/wID
+        8f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTt/wID8P8FBun/MEGF/0JYXP8fKjL/GiMq/xoj
+        LP8aIzD/GyQs/xskK/8kMDr/JDE7/xEXG/8MERT/GSMq/yEtNf8YICf/GCEo3x0nL1YyPkMDJC82AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAoMDoA9fP/AB0mLkEXHybTFh8l/yAsNf8bJSv/DREV/w8VGv8iLjf/M0VR/0FYXv81R3P/DxXE/wEC
+        8f8CA+7/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO7/AwTt/wME7f8DBO7/AgLx/wEB
+        8f8GCOP/FRu5/yw8lv9CWXj/TGZv/0lia/9BV2D/NUZT/y07SP8mMz//JTFA/yUxP/8kLzz/JTA8/yUx
+        Pf8lMT3/JDA8/yUyP/8lMT7/IzA8/yUxPv8kMD3/KDM+/yQwO/8lMj7/JTE9/yUxPv8lMT3/JzM//y08
+        SP80RlL/QFVe/0pja/9PaXb/Rl6A/y8/mP8VG7j/BQfh/wEB8/8CAvH/AwTu/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AQHz/x8pq/9FXWX/KjlB/xggJ/8dJi3/GiIy/xkiN/8aIzT/GyQt/xkiKP8gLDX/JTM8/xIZ
+        Hv8LDxP/GSEo/yArNP8XICb/FyAm3x8pMFNOWmMCLTc/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDxDAAAAAAAhKjI4GCAnzhYeJP8gKzT/GiMq/wwQ
+        FP8SGR3/JTI8/zRGUf9BV17/LDuE/wkN1/8BAfL/AgPt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO7/AgLx/wEB8f8ICtn/ICuo/z9Uhf9NZ3X/S2Vs/z9UYP8vP0v/JzNA/yUw
+        P/8jLjz/Ii05/yg1Qv8uPkn/MUNO/zhMWf89U1z/Q1tj/0dgaP9IYmj/SmVq/0tlav9JZGj/R2Fl/0Zf
+        ZP9GXmb/P1Ze/ztQWv81SFP/LDxH/yg2QP8nM0D/Ii05/yQvO/8mMUD/KDRC/zJDUP9AVmL/T2lx/05o
+        dv87T4H/Hyqu/wgK2v8BAfD/AgLy/wME7f8DBO3/AwTt/wEC8/8PFNL/QFVx/zlMVP8ZISj/GiMq/xsj
+        L/8ZIjf/GSI4/xkhN/8ZITT/GiQu/xojKf8fKTL/KDQ//xQbIP8MEBP/GCAm/yEsNP8XHyX/GCAm2yAp
+        MUl8k5UAKzY9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADE6
+        QAATHSUAHigvKhggJ8IWHiT/Hyoz/xskK/8MEBP/Ehgd/yg2Qf84S1b/QVdg/yYykf8FBuH/AQHy/wID
+        7f8DBO3/AwTt/wIE7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AgPw/wEC8P8KDdX/Ii2h/z5U
+        e/9OaXD/Rl5m/zdJVf8qN0j/JDBB/yIuPf8nM0D/KzlF/zZJVP8/Vlz/RV5l/0lkb/9IYnH/Qllt/zxR
+        hP80R4L/Lj+N/y4+nP8sO5//Kjmc/yo5mv8pOJz/LDyY/zBChP82SoT/O1B5/0RdbP9KZXP/SGNt/0Rd
+        ZP88UVv/MUNP/yYzPv8hLDn/Ii07/yUxQP8tPE3/OExZ/0dfaP9MZ2//P1R5/yEsnv8JDNP/AQLx/wID
+        8P8CA+//BQfp/zNEj/9FXGL/ICoz/xkhJ/8aIyz/GSI2/xskOv8aIzj/GSI3/xkiOP8ZITb/GSIu/xkh
+        KP8eKDD/JzU//xYdJP8MEBT/GSIo/yMuNv8WHiX/FiAl0h0mLjgLFRgAKjM9AAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHigwACErMxwYISiwFR0j/x8pMv8bJS3/DRIV/xIZ
+        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
+        7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8FBu7/BQbu/wUG7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG
+        7v8EBu7/BAXu/wQF7v8EBe7/BAXu/wME7/8CA/P/AQLv/wcJ3P8bJav/O1CA/05qdf9EXWb/KDdA/xsk
+        MP8hLTr/LDpL/z5SYv8vPkr/GiMq/x0nLv8bJDT/HCU7/xwlO/8cJTr/GyQ5/xojOP8aIzj/GiM4/xki
+        N/8ZITb/GSE3/xkiOP8aIjf/HCQw/xsjKv8hLDX/JTI8/w4UGP8OFBj/ICsz/xwkK/8VHCPuGyQrYD1G
+        WAEiKzQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ+uvQAaIysAISozJRgfJscXHiX/ISw1/xQbIf8MEBT/HCUs/zND
+        T/9AVVz/KDaK/wQF5f8CA/D/AwTs/wME7P8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AgPx/wME
+        6P8fKaD/RVxt/0dfZv8yQlH/JS9G/x8qOP8wQU3/Rl5m/0Zeb/8pOJH/DRHK/wIC7v8BAvT/AwTv/wMF
+        7f8DBe7/BAXu/wQF7v8EBe7/BAXu/wQG7v8EBu7/BAbu/wQG7v8FBu7/BQbu/wUH7v8FB+7/BQfu/wUH
+        7v8FB+7/BQfu/wUH7v8FB+7/BQbu/wUG7v8FBu7/BAbu/wQG7v8EBu7/BAbu/wQF7v8EBe7/BAXu/wQF
+        7v8EBe7/AwTx/wEB8/8FB+D/GiOr/ztPfP9LZm//O1Fa/yEtNv8aIi3/JjFA/yApNP8cJiz/HScv/xsk
+        M/8bJDj/GyQ5/xskOf8cJTr/HCU6/xskOf8bIzn/GiM4/xoiN/8aIjf/GSE3/xoiOP8bJDj/HCUv/xki
+        KP8jLzj/IS01/w0RFP8SGB3/ISw0/xYeJP8WHiXYHykxNhQcJAA3REsAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICozACUv
+        OQwbJCyXFh4l/SAqM/8YICb/CxAT/xggJv8uPkr/P1Va/zFBgf8HCd//AgLx/wME7P8DBOz/AwTs/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTs/wIC8v8GCN3/KTeM/0tjbf9CWGP/KzhK/yApP/8mMj//PlNc/0lj
+        bv8zRYX/Ehi9/wID7P8CAvP/AwXu/wMF7f8DBe7/AwXu/wQF7v8EBe7/BAXu/wQF7v8EBu7/BAbu/wQG
+        7v8FBu7/BQbu/wUH7v8FB+7/BQfu/wUH7v8FB+7/BQju/wUI7v8FCO7/BQju/wUH7v8FB+7/BQfu/wUH
+        7v8FB+7/BQbu/wQG7v8EBu7/BAbu/wQG7v8EBe7/BAXu/wQF7v8EBe7/BAXt/wME8f8BAvP/BgnZ/x8r
+        n/9BWH3/SmV1/yo5Q/8SGB7/JC49/yUwPf8cJi3/HSYt/xwlMf8bJDn/GyQ6/xwlOv8cJTr/HSY7/x0m
+        O/8cJTr/HCQ5/xwkOf8aIzn/GiI3/xohOP8aIzb/HCUu/xojKf8mMjz/Hicu/wwQE/8WHSP/Hyoy/xUc
+        Iv8YICesIi00FR4oMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAACYxOgAAAAAAHigwXBgfJvEdJi7/Hikx/w0RFf8UGyD/LDtH/z1S
+        Wv85THH/DRLQ/wEC8v8DBOz/AwTs/wME7P8DBOz/AwTt/wME7f8DBO3/AwTt/wME7P8BAvL/CQzQ/zBA
+        gf9MZGv/O05b/ygzQf8eJzT/LT5J/0hhZ/9AVnL/HCWq/wQF5P8BAvP/AwTv/wMF7f8DBe3/AwXu/wMF
+        7v8EBe7/BAXu/wQF7v8EBe7/BAbu/wQG7v8EBu7/BQbu/wUH7v8FB+7/BAbv/wQG8P8FBvH/BQbx/wUG
+        8f8EB/H/BAbx/wUH8f8FB/H/BQfx/wUH8P8FB+//BQfu/wUH7v8FB+7/BQbu/wUG7v8EBu7/BAbu/wQG
+        7v8EBe7/BAXu/wQF7v8EBe7/BAXt/wMF7f8CBPL/AgPv/yw7mv9MZ3T/OUpZ/yApMv8QFhr/HSUv/ycy
+        Pf8dJi3/HCUs/xwlMf8bJDf/HCU7/x0mO/8cJTr/HCY6/x0mO/8dJzz/HSY7/xskOf8bIzj/GiI3/xkh
+        OP8bIzT/HCUt/xwlLf8qNkH/GB8m/wwQFP8bJCv/HCUt/xUcIfgbIypyN0JOAiMsNAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHigxACEr
+        NScYIinNGSEo/yArNP8RFxv/DxQY/yczPv87Tlj/P1Rm/xUcu/8BAfH/AwTs/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTt/wME7P8DBOz/AQLz/wsPyv82SHX/SmJp/zdIVv8iLDn/GiUu/zRHUv9IYmn/Lz+F/wwR
+        yv8BAvH/AwTw/wMF7f8DBe3/AwXt/wMF7v8DBe7/BAXu/wQF7v8EBe7/BAXu/wQG7v8EBu7/BAbv/wQF
+        8P8DBPP/AgP1/wID8v8GCOz/CAvp/wwQ4v8OEuX/DhPk/w8T2/8PFNz/DhPk/w0R4/8LD+P/Bwnq/wQG
+        7f8CA/X/AwT0/wQF8f8EBu//BQfu/wUH7v8EBu7/BAbu/wQG7v8EBe7/BAXu/wQF7v8EBe3/AwXt/wEC
+        8/8VHcj/SGJ8/zpOWf8dJS3/LDdD/ygzP/8TGh7/Fh0j/ycyPv8kLjf/Higv/x8oM/8dJjn/HSY7/x0m
+        O/8dJzv/HSY7/x0mOv8dJzv/HSc8/x0mO/8bJDn/GiM4/xsjOf8cJTT/GyQr/x8oMf8rOEP/Ehcb/w4T
+        F/8fKjL/GSEo/xceJdwdJy82ExwmAEVOTwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAACUvNwAuOEAHHCYujRcgJv0hLTX/Fx8k/wwQE/8dKDD/NkhU/0NZ
+        Yv8gK6T/AgPv/wME7f8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wEB9P8MD8n/OUt0/0pi
+        av82RVL/Mz1F/z1JUf9uhYz/b4mW/ys4o/8EBuL/AwTz/wQF7v8DBe3/AwXt/wMF7f8DBO7/AwXu/wQF
+        7v8EBe7/BAXu/wQF7f8EBu7/AwXw/wID8/8DA/D/Bwnm/xAVyv8cJbL/KTSd/zREjP88T4T/Rltw/0pg
+        df9KYHX/SmFz/0phdf9KYHX/SF1w/0NXcv84Sor/MT+R/yYwpv8ZH73/Cw7a/wUG7f8CBPL/AwXy/wUG
+        7v8EBu7/BAbu/wQF7v8EBe7/BAXu/wQF7f8CBPD/CQvj/z1Nhv9HXGH/Iiw1/x0lLP8dJi7/JC05/y04
+        Rf8ZHyL/FRod/yYvNv8iLDP/ICsy/x8qNf8eJzv/Hic8/x0nO/8dJjr/HCY6/xwlOv8dJTr/HSc7/x0m
+        O/8bJTn/GyM4/xojOP8aIy//GiMp/yYyPP8lMTr/DREU/xUcIf8hLDT/GCAn/xojK6MmMDkPIiszAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtOT0AGSEqACAq
+        MkUYICjnHSYv/x4oMP8NERX/FRwh/y49Sf8/VVv/MECH/wUH5v8CA+7/AwTs/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wME7P8BAvP/Cw7L/zhJdP9KY2r/MkFM/yAmK/8oLzT/douO/5KrxP87Rc//Bgfv/wUG
+        8P8FB+3/BATt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wMF7f8EBe7/AwPx/wID8P8ICuL/Fx67/yk1
+        lf87THT/RVdl/0hcXf9IXFn/RFZX/0BSVf9CUlz/Q1Jf/z9OWv8/T17/P1Be/z9PW/9BUV//Q1Rg/0RV
+        WP9IW1r/TmFe/0pdZP9EVmz/NkSE/yIrrf8QFNH/BQbr/wMD8v8DBfD/BAXt/wQF7f8EBe3/BAXu/wID
+        8f8oMqH/TmBe/yw3Pv8cJCr/Hygw/x4mNf8cIzb/Iio3/y44Qf8gJir/EBIS/yYtMv8nMTn/ICsz/yAq
+        NP8fKDv/Hig9/x4nPP8dJjv/HSY6/x0mO/8dJzv/HSc7/x0mOv8bJDn/GiI3/xoiNv8aIyz/GiMq/yk3
+        Qf8aIin/DBAT/xskK/8eKDH/Fx8m8h4oMVsAAAAAKTM8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAACIsNAAlMDkQHCQsrxggJ/8iLTf/Ehcc/w8UGP8pNkH/O09Z/ztP
+        bP8PE87/AQLx/wME6/8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AgLy/wgK1f8zRHj/SmJp/zND
+        Tv8fJSn/ICcq/z5OTP8+TWr/HSLJ/wMD8P8GB+7/BQbt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBe7/AgPy/wME8P8OEc//JC6X/ztMdP9HW17/R1tY/0NTWf89TF3/NEJV/zJAV/8zQVf/Lz1Q/y07
+        TP8oNUL/KDRA/yczQP8nNED/JzRA/yk3Q/8uPE3/M0FU/zZEW/82RFr/OUhX/0VXZP9LXWL/TGBc/0ZZ
+        bP80QoT/GyK1/wgK5P8CBPP/AwTw/wQF7f8CAvP/FRrH/0pca/87Sk3/HCUs/x8oLv8dJzL/HSU6/x0m
+        O/8cJTj/Hyk2/yw2QP8gJiv/ERMT/yEnKv8kLTX/ICoy/yApM/8fKDv/Hyg9/x4nO/8dJjv/HSY7/x0m
+        O/8dJjv/HCU6/x0mO/8cJTr/GyI4/xoiM/8aIyr/Hicv/ys5Q/8SGBz/EBUY/yArNP8ZISj/GiMrxCMu
+        Nx0hKzQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtOD0AAAALAB4o
+        MVsYICfzHigx/xojKf8MEBP/HCUt/zdKVv9EWWL/Hiip/wEC8f8DBOv/AwTs/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wID8P8EBt//LTyE/0tja/82RlP/HCMn/x0kJ/8/UE7/NUNm/w0Qw/8BAfH/BAXu/wUG
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AgPx/wID8f8PE87/KzaU/0BSZv9HW1j/QVNZ/zlH
+        XP80QmH/MD1Z/yk1Sv8qN0b/JTA4/yMuM/8oMzf/KjU4/yYyOf8nNT//KDZB/yc2Qf8nNkD/JjM7/yo1
+        Of8pNDn/JTA1/yQvNv8qOEb/LTpN/zRDW/8+TWf/Rldo/0pdYP9MYGD/PEx7/x0ls/8GCOT/AQH2/wgK
+        5/88SoL/SFtY/yIsM/8eJy3/Hicv/x0mOP8dJjv/HSY6/x0mO/8cJTn/HSYx/ys1QP8iKS//DhEQ/yEo
+        K/8mMDf/Hykx/x8oNf8eKDz/Hic8/x0mO/8dJTr/HCU6/x0mOv8dJjr/HSY7/x0mO/8cJTr/GyQ5/xsk
+        MP8bIyn/JjI7/ykzPP8NERT/Fx8l/yAqMv8YICX6HScwdGJwfQEpMzwAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAACEqMgAlLjYYGiMqvhkhKP8hKzT/DxUY/xIYHP8tO0b/QFRa/zJC
+        gf8FB+b/AgPu/wME6/8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DA+7/AgPq/yMukv9MZGn/OkxZ/x0l
+        Kv8dJCj/Pk5M/zZEZf8LD8j/AQHz/wMD7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwPv/wEC
+        8/8JC9r/Iy6U/0BTZP9FWVf/OkpT/zI/Xf8tOlz/KDVO/yMuOv8jLTL/JjI2/yY1P/8qPk//KkVj/ydK
+        c/8rVon/KluX/yxfnf8rX53/Kl+j/ypeoP8qXJr/LFeM/ylOe/8qSGn/KT9V/yY1P/8mMTb/JjE2/yUx
+        PP8sOVD/MkBY/z1NYv9KW2H/TF9g/zlIfP8WG77/KDCj/05hY/8sOD7/GyMq/x8oLv8eJjT/Hyc8/x4n
+        O/8eJzv/Hic7/x4nO/8dJjr/HSYy/ys2QP8hKC3/EhQU/yIqLv8iLDT/Hykw/x8oNf8eJzz/Hic8/x0m
+        O/8cJTr/HCU5/xwlOf8cJTr/HCU6/x0mOv8dJTr/GyM3/xwlLf8bJSz/KTZA/xcdIv8OEhb/Hygw/xoi
+        Kf8aIirRIiw2JSApMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApMjwAAAAAAB0m
+        LmMWHiT2Hykx/xcfJf8NEBT/Higw/zhJU/8/U2X/EhjD/wEB8f8DBOv/AwTr/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wEB7/8YH6f/SF5q/0NWY/8iKzD/GR8i/ztKSv84R2P/DhLD/wAB8v8CA+3/AgPt/wMD
+        7f8DA+3/AwPt/wME7f8DBO3/AwTt/wID8f8CA+7/Fh2w/zlKbf9IW1j/Pk5Z/y88Wf8pNFX/JC9F/yEr
+        Mv8mMDP/JzU//ydBX/8uVor/KmKo/yxswf8wdMb/MHXL/y93zP8uc8f/LnPK/y5zwv8uc8b/LXPI/y92
+        y/81fdf/OYDb/zuA1f8wdMX/LGSr/y1ajv8pRWX/KTlG/yYwNf8kLzb/JTFB/zE+WP8/TmT/TF9k/0pc
+        ZP9MX2j/PEtR/x0kK/8fJy7/Hycx/x4mOv8eJzv/Hyg8/x4nO/8eJzv/Hic7/x4nO/8dJjr/Hicz/yw2
+        QP8gJSr/EBIS/yMqLv8iLDT/Hygw/x4oN/8fKDz/Hic8/x0mO/8dJTr/HCU6/x0lOv8cJTn/HCU6/x0m
+        Ov8dJTr/HSY1/xskKv8hLDT/KjU9/w4SFf8TGR7/Hygx/xgfJvweJi96Q1BgASUvOQAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAACEqMwAkLjcWGSEovxcfJf8dJy//DRIW/xMZHv8vPUn/QVVY/yo3
+        jv8DBOz/AwPt/wME6/8DBOv/AwTs/wME7P8DBOz/AwTs/wME6/8BAvL/DRDE/0FUbf9HXGf/JzM6/xYa
+        HP81Q0T/O0pf/xAUvv8AAfP/AgPt/wID7f8CA+3/AgPt/wMD7f8DA+3/AwTt/wME7f8CAvP/Bwnc/yYy
+        jP9EV17/QlNV/zI/XP8pNVz/Ii5E/yEqMP8lLzT/KD1T/ylPgv8sZq//NHjO/zV81/8vdsv/L3fI/zR6
+        yv81fM3/Nn7R/zJ1xP8xc8X/L3LD/y9xwf8wcsP/N3vL/z2D2f8+hOD/PYTe/zJ6zf8zec//MnzQ/y5x
+        wf8rZav/KVOF/yk/Vf8oNDr/ISsx/yQwP/80Qlz/RlZs/0ZYYP8kLTP/Hycv/yApMf8eJzj/Hic7/yAp
+        Pf8hKz//ICk9/x4nO/8dJjr/HSY6/x0lOv8dJDj/HiYx/y03QP8dIib/ExUV/yUtM/8hKzL/Higx/x0l
+        OP8dJjv/HSY7/x4nO/8eJzv/HSY6/x0lOv8dJjr/HCU6/xwlOf8cJTn/HCUw/xojKf8nMz7/GB8l/wwQ
+        E/8eKC//GyMq/xkhKdEiLDYjHykyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArNjsAFh0nAB4n
+        L1gXHiX1HSYu/xUdIv8MDxL/ICs0/zpMVv89UGr/DhPP/wEC8P8DBOv/AwTr/wME6/8DBOz/AwTs/wME
+        7P8DBOv/AgPv/wQF4P8wP4D/T2Zu/zA9Sf8VGRz/Ljk+/0BRVv8YH6r/AAHz/wID7f8CA+z/AgPt/wID
+        7f8CA+3/AwPt/wMD7f8DA+3/AQLy/w0Rxv8zQnP/RlpW/ztLW/8uOWT/JTBW/x0nL/8jLTD/KD9V/ypY
+        jv8wccX/MXbP/zJ5y/8zd8v/NnzQ/zB0xP8yecn/O4LV/zl/1v85ftP/N3zP/zR5zP8zdsb/NXrL/z6D
+        1v9BiuD/P4bZ/z2D2/89hNv/N33P/zJ3yP8xd8b/L3O//zB2xv8udcf/LG22/ytakP8pQ17/JDA1/x4n
+        Lf8qNUv/MDxW/yEpM/8iKjD/ISo1/yApPP8fJzz/ISk9/yEqPv8iKz//ISs+/yApPf8eJjv/HSY6/x0l
+        Ov8dJTf/ICgy/y02Pv8XGhz/Fhob/ycwNv8gKTD/HSUx/x0mOv8dJTr/Hic7/x4oPP8eJzv/HSU6/xwl
+        Ov8bJDj/GyQ4/xskOf8bJDT/HCQr/yAqMv8lMTr/DBEU/xQaH/8fKC//GB8l+x0mL28AAAAAJC82AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAACErMwAlMTkMGiMqrhkfJv8hKzT/DhMX/xIYHP8uPEj/QFNY/yQu
+        m/8CA+//AwTs/wME6/8DBOv/AwTr/wME7P8DBOz/AwTs/wME7P8BAu//HSWg/0xka/8/UV7/GR4i/yMr
+        L/9CUlD/IiuQ/wID7v8CAu7/AgPs/wID7f8CA+3/AgPt/wMD7f8DA+3/AwPu/wIC8v8SF7v/OUpm/0NX
+        Vv8zQVT/KTRZ/x4oP/8fKi7/JjpM/ytWiv8vccD/NHrS/zZ60/80dsz/MXbI/zF0v/83fND/OX/T/zt/
+        1P9Bhdb/PILY/z6H3P82etD/MnbF/zV4xP85fdD/QIXa/z+G3v8/hdn/PoLW/z+E2/88gtj/NHvL/zF4
+        xf8zecf/MXbE/y5xu/8xdcT/MHfI/y9zwP8rW5P/KT9U/yArL/8eKDT/KjRM/ygxP/8iKzH/ISo2/yAo
+        O/8fJzz/ICg8/yEqPv8iLD//IyxA/yEqPv8fKDz/Hyc8/x4nO/8dJTb/Iyw0/yw0O/8SFBX/HSEl/yYv
+        N/8fKDD/HSY1/x0mO/8eJjr/Hic8/x8oPP8dJjv/HCU6/xsjOP8bIzf/GiI3/xojN/8cJC//GyMq/yk2
+        Qf8XHiT/DA8T/x4nLv8ZISf/GiEpwSQuOBchKjMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHCUtAB0n
+        MD4XHyXqHSYu/xkgJ/8MDxL/Hygw/zdJU/87TWf/DhLR/wIC7/8DBOv/AwTr/wME6/8DBOv/AwTr/wME
+        6/8DBOv/AgPx/wwPxP9CVW7/SV5r/yIrM/8WGx3/PUxJ/y46df8FBuP/AQLw/wID7P8CA+z/AgPt/wID
+        7f8CA+3/AwPt/wMD7v8BAfD/Fhys/z5QYP9CVFf/MT5U/yYxT/8dKDT/LTtH/yk7TP8qYaD/M37V/zJ7
+        zf83es7/OHzQ/zV3zf8xdMX/NHfF/zd60P88gtb/P4TW/0GF0f8/h9z/O4TZ/zN2yf8xdMT/NXjI/zyB
+        0/88gtX/N3zO/zl/0v87gNT/PYLY/zd8z/80ecn/NHrF/zd9yv82e8r/MXK+/zF0wP8xdcL/MnfF/zN8
+        0f8waqz/K0BU/zA+Sf8hKzf/JzFD/ys2RP8iKzH/ISo1/yApPP8hKj7/ISk9/yEqPv8hKj7/ISo+/yEq
+        Pv8gKT3/ICg8/x8mO/8dJjP/JzA4/ykwNf8QEhL/Iikt/yIsNP8eJzD/HSY4/x4nO/8eJzv/Hic7/x4n
+        O/8dJjr/HCU5/xwlOf8bIzj/GiI4/xoiM/8bIyr/ISsz/yUvOP8OERX/Fx0j/x8pMf8YHybzHicwUxEZ
+        IwA1PkQAAAAAAAAAAAAAAAAAAAAAACQuNQA4RUsDGyQsihYeJP8eKDD/DxMX/xIXHP8uPEf/QFNZ/yk1
+        kf8DA+7/AwPr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME7f8DA+f/KjeG/09nb/8zQU3/EhYY/zE+
+        Pv87Slr/DhLH/wEB8/8CA+z/AgPs/wID7P8CA+3/AgPt/wID7P8CA+3/AQHy/xUbrv8/UFn/QFFT/zE8
+        U/8lMEj/Hik2/z9LWf9PW2r/P05g/y1EX/8uZab/MXbL/zd5y/83esn/M3bG/zJ2yf83e83/OHnL/zl8
+        0P89gtj/PoHS/zuA0/83fdD/MXXE/zF0wv8xdMH/M3fJ/zF0w/8vcr//MHO//zJ1w/8ydsb/L3PB/zBz
+        wv8zd8P/NHjH/zV5xv8xc77/MHTB/y9zv/8yecj/M2+z/zBNZ/9BUF7/Tlhk/0VRYP8kLzr/JjBA/yw2
+        RP8lLjT/ISo1/yEqPf8hKT3/ISo+/yEpPf8gKT3/ISk9/yEpPv8hKT3/Hyc7/x4mOv8eJjH/Ljg//x8l
+        J/8SFBb/JS40/x8oL/8fKDT/Hic7/x4mO/8eJjr/HSY6/x0lOv8eJjr/HiU6/xsjN/8bIzf/GyI3/xsj
+        Lv8aIif/KjdA/xceI/8OExb/ISsz/xkhKP8bJCuhLDY9CSUuNQAAAAAAAAAAAAAAAAAAAAAAHygxACMr
+        NB8YICfPGiIp/xsjKv8LDxH/HCQr/zhKVP8+Umf/ERXK/wEC7/8DBOv/AwTr/wME6/8DBOv/AwTr/wME
+        6/8DBOv/AgLw/xIXtP9GW2r/RFhl/xkfI/8gJyr/QFBR/x0knf8BAvH/AgPt/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AgPs/wEB8v8RFbz/PU5g/0FRVf8tN0X/ISo6/yItO/9FUWD/T1Zh/01TXP9PWGP/QUxa/ys7
+        TP8tYJn/N3zT/zh8z/83esr/NHvM/zl/zf89gdT/PIDV/zuB1P86gNP/N3vN/zV5yv8ydcL/M3W//zJz
+        v/8xc7//MXO+/zBzv/8xcrz/L3K5/zBzvf8xc8D/MXO9/zB0wP8vcr//L3K9/y9xvP8vcbz/MHTB/y9n
+        pf8zSl3/Q09Y/05VX/9NU1z/T1Zg/0pVZP8mMTv/Iiw4/yw1Qv8hKjD/ICk0/yAoPP8gKT3/ICk8/yEp
+        PP8hKj3/Iis//yEqPv8fKDz/Hyc7/x4nOP8hKjL/NT1E/xocHv8aHyH/JC0z/x4nL/8eJjj/Hyc8/x4m
+        Ov8dJTn/HSU5/xwkOP8dJDn/GyM4/xsjN/8bIzj/HCQ0/xoiKf8jLjb/Iy02/wwQE/8aIin/Hicv/xkh
+        KOAhKjIxHicwAAAAAAAAAAAAAAAAACgyOgAZHycAHycvVxceJfYeJy//Exgd/w0SFf8nND3/PlFV/y49
+        iP8EBev/AwPr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME7f8EBOD/MD92/01iav8sN0D/EhYX/zhH
+        Rf8wPXH/BQfj/wEC7/8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8BAfP/Cw7J/zhHZP9CVFb/MjxM/yQt
+        PP8iLDr/SVNl/09VX/9NU13/TVNd/0xTXP9NVmD/P0tX/yo6Sf8zZ6b/OoDV/zl8yv81fMv/NnrL/zh+
+        0P84fc7/N3rG/zh8zf82fMv/NnrJ/zV4xv81d7//N3i+/zh5xP81d8H/M3fF/zZ6x/8ydL3/M3O9/zN0
+        v/8ydLz/MnO8/zJzuv8xc7v/MXO7/zJ1wf8uZqL/MkdZ/0lVYP9PVV//TVNd/01TXf9NU1z/T1Vf/0lV
+        Yf8kLzf/Iy03/ys1QP8hKjD/ISk2/yAoPP8hKj3/ISk9/yEpPf8hKT3/Iio+/yAoPP8fKDv/ICc8/x4m
+        Nf8pMjr/LDM3/xASEv8kLTH/ISox/x8nM/8fJzv/Hyc7/x4mOv8dJTr/HSU5/x0lOf8bIzj/GiI3/xoi
+        N/8aIjb/GiIr/xwkK/8rOEP/ERca/xEWG/8gKzL/Fx8l+x4mLnAAAAAAJC03AAAAAAAAAAAAIyw0ACs1
+        PQcaIyqdGB8m/x8oL/8OERX/FBsg/zJCTP9AVFz/GSC0/wEB8f8DBOr/AwTr/wME6/8DBOv/AwTr/wME
+        6/8DBOv/AQLx/xIXsP9IXGb/QVJf/xUaHP8mLzD/Pk5S/xMYs/8BAfL/AgPs/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AQLw/wUH3P8uO3P/Q1ZV/zVAS/8nMD3/HScv/0RQXf9PVmD/TVNd/01TXf9NU13/TFNd/0xT
+        Xf9OVmD/P0xZ/y9CVP83b7H/NXnG/zN3xf81ecj/M3jH/zN2w/81dsX/NXfG/zd8zP83ecj/N3rI/zh7
+        xv85fMj/O37L/zp8yP82fMn/N33M/zR5xf83esf/M3XA/zJ0vf8zdcD/NXe//zd5xP8zd8P/Mm6x/zBJ
+        YP9EUFr/TlVg/01TXP9NU13/TVNd/01TXf9NU13/TlVf/0pUYv8jLTb/KTI8/yozPP8iKjH/ISk4/yAp
+        Pf8hKT3/ISk9/yAoO/8hKDz/ICg8/x8oO/8fJzv/Hyc6/x8oMv8vOD7/HCAh/xcbG/8mMDX/ICkw/x8o
+        OP8fJzz/Hyc7/x0lOv8eJjr/HiY7/xwkOf8bIzj/HCM4/xsiOP8aIjD/GSEn/yg0Pv8bJCn/DBAS/xwl
+        K/8aIyn/GyQrtSYxOg4iLTUAAAAAAAAAAAAdJi4AHykxJBgfJtQbIyr/GSAn/wwQE/8gKTL/OUpR/zhJ
+        bf8JC97/AgPt/wME6v8DBOv/AwTr/wME6/8DBOv/AwTr/wME7f8CA+X/LTp7/1Bnbv8tOEH/Fhkb/zxL
+        R/8pM3//AgPq/wID7f8CA+z/AgPs/wID7P8CA+z/AgPs/wID7v8BAu3/IiuI/0VXVP81Qkz/KjM+/x8n
+        MP9DT13/T1Vf/0xTXP9MU13/TFNd/0xTXf9MU13/TFNd/0xTXP9PWWT/RFBe/zFKZP80dL3/NHvL/zZ5
+        x/82ecf/NXjF/zV3xP81d8P/NnrI/zx/z/87fs7/PIDO/z+B0P8+f8v/PX/N/zt/zf87fcr/OX7L/z+D
+        0v85e8X/OHm//zd6xv84esX/QITS/zh5xP8xUnP/RVJd/05WYP9MU1z/TFNd/01TXf9NU13/TVNd/0xT
+        Xf9MU13/TlVf/0ZRXf8hKzL/LTU//yozO/8iKjP/ISg6/yIqPf8iKj7/Iio9/yEoPP8hKT3/ISo9/yAo
+        PP8gKD3/ICg4/ycwN/8yOj7/EBMS/yMrMP8iKzL/Hycz/x4mO/8eJjr/HSU5/xwkOP8dJTn/HSU6/xwj
+        OP8bIzj/GyM4/xwkNv8bIyr/ICox/yUwOf8NERP/Fx4j/x4nL/8aIinlISs0Nx8pMQAAAAAAIiwyABoh
+        KgAeJi5WFh0j9R8oMP8RFhr/DxMX/ys3Qv8+UFT/JTCW/wIC7f8DBOv/AwTq/wME6/8DBOv/AwTr/wME
+        6/8DBOv/AQLx/w8TuP9HWmn/Rlhl/xYaHf8mLzD/PEtV/w8Tw/8BAfP/AgPs/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AQHy/xEWsf9AUVj/PkxS/zA6RP8cJCz/N0RQ/09XYv9MUlv/TFNd/0xTXf9MU13/TFNd/0xT
+        Xf9MU13/TFNd/0xSXP9MV2T/NkJS/y9XhP81e8v/N3rF/zd6xv80eMb/N3nG/zh8yf81eMX/OX7N/zyB
+        0v87fsv/PX7J/z+B0P8+g9L/PoHQ/z+G1/9DjN7/QIfZ/zuBzf8/gcn/PoLP/z+C0P9BiNn/M2CT/z5O
+        W/9OV2L/TFJc/0xTXf9MU13/TFNd/0xTXf9MU13/TFNd/0xTXf9MUlz/UVhj/0BNW/8eJy7/MzxG/ygx
+        OP8kLDf/JC1A/yMsP/8jLD//JCw//yMrP/8iKj7/Iio+/yEqPv8hKTz/Hycy/y43Pv8eIiT/Fxoc/yYv
+        Nv8eJi7/HiY4/x0lOv8eJTn/HiY7/x4mOv8dJTn/HCQ4/xwkOP8cJDj/HCQ5/xwkL/8bIij/KDQ+/xMY
+        HP8QFBj/ICoy/xkgJ/sgKTFvEhYdACMuNgAnLzcAOEFKBBsjKpEXHyT/HCQr/w4SFf8WHSL/MkBJ/zxO
+        XP8TGcD/AQHx/wMD6v8DA+r/AwTr/wME6/8DBOv/AwTr/wME6/8BAev/JS+L/1BlbP8vOkT/ERUW/zlH
+        Qv8pNHr/AgPr/wID7f8CA+z/AgPs/wID7P8CA+z/AgPs/wEC8P8FB9r/MkBm/0RVVf8zPUf/Iysz/xwl
+        LP8zPkn/TFRf/01SXP9MUlz/TFNd/0xTXf9MU13/TFNd/0xTXf9MUl3/TFJc/05TXf9JVWf/Lz9S/zRt
+        rv87gND/OHrH/zV5xf86fcn/O3zG/zl7yP88gM//OnzL/z1/zf89f8z/QIPR/z2AzP89gtH/PIHP/zuB
+        0f85fMj/NnjB/zp8xf87fMT/PoHO/z59xf82TGb/Tlhk/01TXP9MUlz/TFNd/0xTXf9MU13/TFNd/0xT
+        Xf9MU13/TFJc/01TXf9JU13/KzY+/yApMP8kLDT/MDpE/yYvNv8kLTz/JC1A/yQtQP8kLUD/JCxA/yMr
+        P/8jKz3/Iio9/yAnPP8eJjX/JS41/y02Ov8QExP/Iyou/yMrMv8eJjP/HiU6/x4mOv8fJzv/HSY6/x0l
+        Of8dJTn/HSU5/xwkOP8bIzj/HCMy/xoiJ/8oMz3/HSUt/w0QFP8eJy7/HCQr/x0mLqopNT8KJC84ACAp
+        MQAiKzQWGSEoxBohKP8bIij/DA4R/x0mLv86SlH/N0ds/wcJ4P8CAu3/AwPq/wMD6v8DBOv/AwTr/wME
+        6/8DBOr/AgPu/wcI0v89TGv/TmFt/xkfI/8fJyj/PUtQ/xIXt/8AAfL/AgPr/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AQHw/xsilv9EVlX/N0RM/yQtNP8bISf/Jz9Y/yA2UP82P0j/TlZg/0xSXP9MUlz/TFJc/0xS
+        XP9MUlz/TFJc/0xSXP9MUlz/TFFb/1BYZf8+SVz/MFFz/zt/zv86e8j/OHzI/z2Bz/87fcr/N3nG/zd9
+        yv84e8f/On7K/z1/yv9ChdT/Pn/H/z6Ayv87e8T/NXW9/zd4v/82d77/OHnB/zh5w/86fMn/NV6N/0JO
+        Xf9PVWD/TFJb/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9NU1z/TVVh/y42PP8bL0T/KUVi/x0k
+        Kf8kLTX/KjM7/yUtNv8jKz3/JC1A/yUtQP8kLUD/JC1B/yUtQP8jLD//Iio+/yAoO/8hKTH/Lzk//xsf
+        If8WGxz/JzA3/yAoMf8fJzr/HiY6/x4mOv8eJzv/HiY6/x4mOv8dJTr/HCQ4/xskOP8cJDX/GyMq/yMt
+        Nv8mMTn/DREU/xkhJ/8eJy7/HCQs2SQvOCMiLTUAHSUtAB8oMDgYHyXnHSYs/xUbIf8OERT/JjE6/ztM
+        T/8pNIz/AwPt/wMD6/8DA+r/AwPq/wME6/8DBOv/AwTr/wME6v8BAfH/Fx2j/05ia/8+TVj/DxMV/zE9
+        O/8xPWv/BQbl/wEC7f8CA+v/AgPs/wID7P8CA+z/AgPr/wEC8P8JC83/OEdc/0BQU/8pND3/Fx8l/yUy
+        Pv8vZqf/KmKl/yYyPv88Rk7/TVRe/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TlNd/0lU
+        af8tO03/O3S0/z+B0P84e8f/OHrF/zt7w/84esT/NnjE/zd4wf86e8T/QIDK/z1+yf88fsn/PoHM/zx8
+        xf82dr//Nna8/zh5v/88fMP/O37I/zZytf80SWH/Tllm/0xSW/9MUlz/TFJc/0xSXP9MUlz/TFJc/0xS
+        XP9MUlz/TVJc/05WYf8zPEP/GSQt/y5lpP82c7f/JzZE/xsiJ/8oMjv/Ji41/yMrOP8kLD//JCw//yQt
+        QP8lLUD/JS1A/yQsP/8jLD//Iys//yEpNv8nMTf/KzI1/xETE/8lLjL/Iioy/yAoN/8fJzv/HiU5/x0l
+        Of8eJjr/HiY6/x4mOv8eJjr/HCQ5/xsjN/8cJC3/Hict/yo2QP8RFRn/Exoe/yApMP8aIinzHykzTB4n
+        MAAdJS0AICkwYRgfJfkfKDD/DhIW/xIYG/8vPEb/PU9S/xkfsv8BAPD/AwPq/wMD6v8DA+r/AwTq/wME
+        6v8DBOr/AwTs/wID5P8tOYD/Umdv/ycwOP8VGhz/Pk1H/x4mm/8AAfH/AgPr/wID6/8CA+z/AgPs/wID
+        7P8CA+z/AQHv/x4mi/9DVVP/OERL/y03Pv8tNTr/L092/zN5yv83e8z/KliO/yk0Pv9IUln/UFdi/0xS
+        XP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9NUlv/Tlhn/zI7Tf80WH3/QITT/zl6xv86fcf/OHvF/zd4
+        wP84eML/PH3H/0KD0P9Hidb/QYTP/zx9xv89fcb/OXrC/zd3vf83drr/OnvF/0CCzv9Bhtf/Ml2L/zlD
+        Uv9QWWX/TFFb/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/01TXf9OVmD/NT1E/xohJf8mUX//O4DM/z6D
+        z/8xV4H/ISgs/x4nLf8mLzb/Iysz/yQsPf8lLUD/Iys+/yMsP/8kLUD/JS1A/yQtQP8kLUD/Iio8/yEq
+        Mf8wOT7/ExcX/x0jJf8kLTT/HiYx/x8mOv8fJjr/HiY6/x0lOf8eJTn/HiY6/x4mOv8eJjr/HSQ5/x0k
+        Mf8bIyn/KjZA/xgeJP8OExb/Iyw0/xsjKv8gKjR7DxgjACUuOgQdJS2QGiEn/x0lK/8NEBP/GiEo/zdG
+        Tv87TGf/DhHQ/wIB7v8DA+r/AwTq/wME6v8DBOr/AwTq/wME6v8CA+//BwnM/z5Oaf9MX2r/FBkc/yUu
+        Lv86R1n/DRDO/wEC8P8CA+v/AgPr/wID7P8CA+z/AgPr/wEC8P8ICs3/NkRb/z5NUf8xOkH/O0NG/1Fg
+        bf82ba7/M3fF/zl+zf88gdT/Omag/z1KVf9CSU3/TFJc/01TXf9MUlz/TFJc/0xSXP9MUlz/TFJc/0xS
+        W/9OVmP/O0RW/yxCV/87fcb/OnrE/zx+y/85ecP/OHe//zd3v/88fML/Pn7G/0WH0/9EhtP/O3vE/zp7
+        xf83eMD/N3a7/zd2uv87e8P/RITM/z6Bzf8rSWj/QEhW/1BWYP9MUlv/TFJc/0xSXP9MUlz/TFJc/0xS
+        XP9OVF7/SlJc/zA3O/8cJCn/Jk99/zh8x/88gMv/PYTR/zh1vP8rOkn/GRwd/yUtM/8mLjX/JSw5/yQs
+        P/8jKz7/Iyo9/yMrPv8kLD//JCw//yIrPv8gKDv/ICgz/y02PP8hKCr/FBcY/ycwNv8gKDD/HiU4/x4m
+        Ov8eJjr/HiY6/x4mOv8eJjr/HiY6/x4mOf8dJTn/HSU2/xwkK/8nMjv/Iisz/w0RFP8eJy3/HCQr/x4n
+        MKglMDsKKDA7EBsjK7gcJCv/GiEm/wwQEv8hKjL/PE1T/zRCd/8GBub/AwLq/wMD6v8DA+r/AwTq/wME
+        6v8DBOr/AwTq/wIC7/8UGKv/TWFq/zpJUv8NEBD/NEE+/y46df8EBer/AgPs/wID6/8CA+v/AgPr/wID
+        6/8CA+v/AAHv/xgel/9DVVL/N0JK/xwiJv8xNjn/SmmM/zJ2w/81d8P/OH/O/z+C0f9EiN3/NGin/yAx
+        QP8yODn/SVBZ/05UX/9NUl3/TFJc/0xSXP9MUlz/TFJc/05VXv9CS13/KThJ/zt7wv85fcj/O3/O/zt9
+        yP87fMb/OnvF/z+Czv8/gcv/QoTP/0KE0P9Ags//PoLO/zp7xP84esT/O37G/zp+yf9AhM//PX3D/yk6
+        S/9GUF//TlRe/0xSXP9MUlz/TFJc/0xSXP9NU17/TlVg/0NLU/8mKy3/GyYt/zFmof9GkeT/QIbV/zl+
+        yv80e8j/Nn3L/zBXgv8kJyz/HSMn/ygwNv8kLDT/Iyo8/yMqPv8jKz7/Iys+/yQsP/8kLD7/Iio9/yIp
+        Pf8jKjn/KTE4/y01Of8QExP/JCov/yEpMP8eJTX/HiU6/x4lOf8eJjn/HiY6/x4mOv8eJjr/HiU6/x4l
+        Ov8eJTj/HiUu/yQuN/8nMjv/DRAU/xogJv8gKDD/HCUszCUxORglLjcjGyMq1xwkLP8YHiT/DhEU/yYw
+        Of8/UFX/LDeO/wQE7f8DA+r/AwPq/wMD6v8DBOr/AwTq/wME6v8DBOr/AgLs/yQthP9RZmz/KDE3/xIW
+        F/87SUb/HiWc/wEC8P8CA+v/AgPr/wID6/8CA+v/AgPr/wID7f8DBOL/LTlq/0JTUv8sNTv/Fhoc/ys0
+        Rf8xZKL/NXnJ/zp9zP86f83/P4HM/0WI1v9Ei9//MG20/yE6U/8oLjD/PURI/0tTXP9OVF//TVNe/01T
+        Xf9MUlz/TVNc/0hRZ/8sNUD/MU9s/zFRcf8xUHD/MVFx/zFQcP8yUHH/NFV2/zRUc/80VHT/NVR0/zVU
+        dv81Vnn/MVBw/zBObv8yUnP/MVFy/zNTdP8zUnH/KzU//0tUZP9NU13/TVNd/01TXf9OVV//TlZg/0ZP
+        WP80Oj7/HiMl/x01Tf8tZaL/PYjc/0SM3P9BhdL/PYPP/zJ2wv8zeMP/NHG0/y05R/8YGx3/JCwx/yUs
+        M/8jKjn/JCs//yMrPv8jKz7/JS1A/yUtQP8jKz7/Iys+/yQsPf8lLTb/MjtB/xQXF/8dIST/Ji41/x8m
+        M/8fJjr/HiY6/x8mOv8fJzv/Hyc7/x8mOv8eJjv/HiY6/x4lOf8eJjD/ISox/ys3Qf8QFBn/Fx0i/yEq
+        Mf8bIyvnJC44NyAqM0UbIyrqHygv/xQZHf8PExf/LjpF/0FSV/8eJqr/AQLu/wME6v8DBOr/AwTq/wME
+        6v8DBOr/AwTq/wME7P8EBdr/NUN0/01gZ/8YHB//HyYn/zxLUv8RFsP/AQHw/wID6/8CA+v/AgPr/wID
+        6/8CA+v/AQHy/w4Ruv88TVP/PUtQ/yIpLf8aHSH/K0Fi/zBwu/81d8L/OHnF/z6Azf9Bg9H/QoPQ/z+A
+        zv88fsv/NXS9/yZWiv8gMkL/Ki8w/zlARP9FTVX/SlFb/0xUXv9OVV7/TVhs/y00Pv8pLzP/LTM4/y40
+        Ov8tMzn/LjU6/y40Ov8sMjf/KzE2/ysxNv8rMDX/Ki80/yovM/8qLzP/KS4z/ysxNf8sMTf/Ki80/yov
+        Nf8uNT//TFZn/0tSXP9KUlz/RU5Y/zxES/8vNTj/ICQl/xwqNP8lTXn/MG+3/zh7xv9Ag8//QYHJ/z9/
+        xv9Bg8r/OXvE/zp+yv87f8r/LUlo/x8hJP8hJyz/Jy41/yQrN/8kKz7/Iyo9/yMrPf8lLD//JSw//yMq
+        Pf8kLD//JC0//yQsNv8uNz7/HyQm/xYZG/8nMDb/ICgy/x8mOv8fJzv/ICg7/yAoO/8fJzv/Hyc7/x8n
+        O/8fJjr/HiY6/x8mMv8fJy7/LjpF/xUaH/8SFhr/ISkw/xwlLPIhKzVZIiw0ZBwkK/UhKjH/DxIW/xMY
+        HP8zQUv/QFFZ/xUbxP8BAe7/AwTp/wME6v8DBOr/AwTq/wME6v8DBOr/AgPu/wgKx/9CUm3/RVZe/w0Q
+        Ef8qNDL/NEFo/wcJ3f8BAu7/AgPr/wID6/8CA+v/AgPr/wID6/8AAO//GiGR/0NUUP82QEj/GR8h/yEm
+        M/8sU4L/NHbD/zV2wf83eMP/QYTS/0SFzv9FhdL/RIbV/0CBzP88e8b/PoLQ/zNvtf8nTXb/ITNF/yEo
+        Lf8mKy3/KzEz/zM7Qv82P0n/Jy0z/yMmKP8mKCr/JSkq/yUoKv8mKSv/JSgq/yQnKf8kJyn/JCcp/yQn
+        Kf8kJij/IyYn/yMmJ/8jJif/JCcp/yUoKv8kJyn/JCgp/yctM/8zPEX/LTU8/yUpK/8fIyP/HSMn/x4u
+        Pf8lSXH/MW2w/zd6xf83eMH/OnvE/0WFz/9EhMr/QYTQ/0CG1f88fcf/On/M/zp/y/8uW43/JSox/xsg
+        If8qMjn/Ji42/yYuP/8kKz7/Iyo9/yMqPf8lLT//JCw//yUsP/8lLUD/JCs4/yozOv8oLzP/EBIT/yYv
+        NP8hKTH/HyY4/x8mOv8gKDv/ISk8/yAoPP8gJzv/Hyc7/x8mOv8eJjv/HyY1/x4mLP8uOkT/HCQq/w0R
+        FP8hKjL/HSUt+yAqM3siKzOCGyMq/SIrM/8OEhT/GB8k/zdETf87Smr/DRDW/wIC7f8DA+n/AwTq/wME
+        6v8DBOr/AwTq/wME6v8CAu//Ehe1/0tcY/83Q0v/DA4P/zRAPP8rNnn/AwTt/wID7P8CA+v/AgPr/wID
+        6/8CA+v/AgPt/wID5v8rNGf/Q1NS/y01O/8WGh3/JjBE/y9mpv82dsH/N3jD/zt7xv9DhND/SorT/0yO
+        3f9Hh9P/P3/I/zt6wv8+fcf/PX3H/0CBzf85ecP/LmCa/yxRev8lP1j/IScs/yowN/8nLjT/KEJb/ydF
+        Yf8mRGD/J0Rg/ydEYP8oRWH/KERi/ydDYf8pRWL/KUVh/yhEX/8oQ1//J0Nf/ydDXv8nQ17/KENf/ylF
+        Y/8oQ1//Jy81/ykvNv8jJyv/JTxS/y1QeP8wYZj/M3G2/zh6w/87e8P/N3e9/zt8w/9ChdH/R4nT/0mM
+        2P9Ag87/OHvF/zt9yP89gc3/On7I/zFsrP8pNUP/Gx4g/yYtMv8nLzb/JS07/yUtP/8lLT//JS0//yYt
+        QP8mLUD/Ji1A/yUtQP8lLDz/Jy82/y01Ov8SFRb/Iyot/yIpMf8fJjf/ICc7/yAoO/8hKTz/ISk8/yAo
+        O/8fJjr/HyY6/x4mOv8fJzb/HiYt/yo1P/8hKjH/DREU/yIrM/8cJCv/ICkynSEpMZ8aISf/Hygu/w4R
+        FP8eJi3/OUhO/zdFcP8ICtv/AgPs/wME6f8DBOr/AwTq/wME6v8DBOr/AwTq/wEB6/8cIpj/U2Zr/ykz
+        Of8QExP/OkdG/yAol/8BAvD/AgPr/wID6/8CA+v/AgPr/wID6/8BAvD/BgfK/zhGWP9ATVD/Ji0y/xcY
+        Hf8qQWT/M3C3/zd4wv89fcf/PHzH/0GCz/9Ojtf/TIzY/0WEz/9Cgcn/Pn3F/z5+x/88fcj/QYHL/0OD
+        z/9AgMr/Q4jW/zt1tP8lKzD/LDI5/ykyN/89eLn/PoDL/zx8xP87e8T/Pn/J/0OEz/9Cg83/QYHJ/0SD
+        y/9Cgcn/Pn3C/z5+x/89fsf/PHvB/z18w/89fcP/P4DI/z55vf8qNT7/KzA3/yQpK/84aqL/TJLh/0mM
+        2P87fML/Oni7/zt5v/85ecD/PHzD/0OEy/9Gh8//R4nP/0SGz/8/gMr/Pn7H/0mM2P9BhdD/NXjD/y5J
+        Z/8bHR3/Iyou/ykwN/8mLTn/Ji5A/ycuQP8nLkH/Ji1A/yYuQP8nLkH/JS0//yQsPP8kKzP/MDk//xUY
+        Gf8dIiX/JS40/x8mNP8gJzv/ISg7/yEoO/8gKDv/ICg7/yAoO/8fJjr/HiU5/x8nOP8fJy7/KDI7/yUv
+        N/8NERT/HiYt/xwjKv8gKTK4ICgwtBwjKv8bIyn/DBAT/yMrM/8/T1T/NUF+/wUG5f8CA+v/AwTp/wME
+        6f8DBOr/AwTq/wME6v8DBOr/AQHq/yMsiv9SZmv/ICcq/xcbHP87SUr/FRu1/wAB8P8CA+v/AgPr/wID
+        6/8CA+v/AgPr/wEB8/8NEK//Pk1T/ztHS/8dIyb/HCAo/ypMd/83eMD/OHjB/0CBy/85ecP/PH7J/02M
+        0v9KitL/QoPO/0SCyP9Afsb/Pn7G/z59x/9Eg8v/SYfN/0OByf8+f8n/O3Ow/ycsMv8vNTz/KDA2/zx2
+        uP9Bgcf/QX3A/0B8v/9BgMb/SIjR/0iHz/9Ihsv/SojO/0iFy/9Dgcf/R4XN/0OByf9AfcD/QX/E/0GA
+        xv9Egsj/QHq6/yo0PP8sMjj/JSkr/zdmm/9NkNv/SInS/zx6v/87ebz/O3q//z19xf9Cgcn/SIfQ/0iJ
+        0P9Ehc//QITR/0SJ1/9Agsv/RYjR/0eJ0v83fMn/LFN7/yEkJf8eIyf/KTA2/ycuOP8nLj//Ji0//ycu
+        QP8mLkD/Jy5A/yYuQP8lLT//JCs9/yQrNP8vOD7/GyAh/xcbHP8nMDb/HyYz/yAnOv8hKDv/ISg7/yAo
+        O/8gJzv/ICc7/x8mOv8eJTn/HiY4/x8mLv8lLjf/KTM8/w0QE/8bIyj/Hicu/x4nL84fKC/GHycu/xge
+        I/8MDxH/JS41/0NSVf8xPIv/AwTu/wME6f8DBOn/AwTp/wME6v8DBOr/AwTq/wME6v8CA+f/Lzl0/1Jl
+        a/8ZHiD/HSMk/zxKTf8QE8r/AQHv/wID6v8CA+v/AgPr/wID6/8CA+v/AADz/xgelf9CUUr/OENJ/xcb
+        Hf8eJDD/MFyQ/zl6xf87e8P/QYTR/zl3v/87fcf/TY3W/06N1f9Dg87/QYHL/0B/yP9AgMv/P3/J/0WE
+        zf9Jh8r/R4XM/0CBy/86b6r/Jy0y/zA2Pf8pMDX/OnGu/0OF0P9Dgcn/RIHG/0J/xP9Egsj/RoXM/0mH
+        zv9Jh8//Q4DE/0SCx/9Hhsz/Qn/E/0F9wP9Df8P/QoDH/0SBxP9Be7v/KjQ9/y0yOP8lKSv/NGCP/0OF
+        zv9FhMz/Q4HG/zx8wf87eb3/PHvA/0OFz/9EhMr/QIPO/z+Byf89fcT/RIjV/0iIzv9KitD/R4rY/zp7
+        w/8vYJT/JCwz/xcaG/8rMzr/KTA4/ygwQf8oL0L/KC9C/ygvQf8nL0H/Jy9B/ycuQf8lLD//JSw2/y02
+        PP8kKi3/FBgY/yYuNP8hKDP/ISg7/yEpPP8hKTz/ICc7/yAnOv8fJzr/HiY5/x4lOf8eJTj/HiUu/yQt
+        NP8sN0D/DhEU/xYcIf8iKjL/HSYu4R8mLtUhKTH/Fx0j/w4RFP8pMjv/QlJW/ys1lP8DA+7/AwTp/wME
+        6f8DBOn/AwTp/wME6v8DBOr/AwPq/wQF5P87SHb/UWRp/xATFf8iKir/OkhY/w0P0f8BAu7/AgPq/wID
+        6/8CA+v/AgPr/wID7P8AAOj/HyZ5/0RTT/80PUP/Fhoc/yEqN/80aaj/OXjA/zp5wP89fMX/PHvD/0KC
+        zP9Pjtf/UJDa/0WFz/9ChM7/P33E/z1+yP9CgMn/RILI/0uJz/9Njdj/SYjQ/z5zrv8mLDH/MTc+/yox
+        N/8+c67/RIXQ/0SDzP9Gg8n/RoPI/0SAw/9Kh87/VZPa/06N0v9EgcT/RIDD/0eGzf9Df8P/Q3/D/0aB
+        xP9Fgcb/RoLF/0R9vP8qND3/LTM5/yUpK/8zX5D/QoPK/0OByP9Ghs//QoLK/z15u/88e8H/PX3F/z99
+        w/87e8T/O3rA/zx7wf9Dg8z/RYfQ/0iK0/9Fh9H/Oni+/zJsq/8mMj7/GRsb/yw0Of8rMzr/KjFC/yoy
+        RP8qMkP/KTFD/ykxQ/8oMEL/KDBC/ygvQv8mLTj/KTI4/ygwMv8RFBT/KDA1/yMrNv8hKDv/Iio8/yIq
+        Pf8iKTz/ISk8/yAoO/8fJzr/HyY6/x8mOf8eJi//ISkx/y86RP8RFRn/FBoe/yIsM/8dJS3yHiUu4SEp
+        MP8YHSL/DxIW/ykzO/9CUlj/Ji+p/wID7v8DBOn/AwTp/wME6f8DBOn/AwTp/wME6f8CA+3/BQfN/0NS
+        cf9PX2b/DA4P/ygyL/80QGz/Bwnf/wEC7f8CA+r/AgPr/wID6/8CA+r/AgPs/wEB5f8mL3L/Q1JQ/y01
+        O/8XGxz/Ii48/zp2uv88e8P/O3vC/zx5v/87esH/RYfS/0+O1v9Rktv/SojO/0WEzf9BfsT/P33F/0F/
+        xf9Fgsn/TYzU/0uJ0f9Ih9D/PnOv/yYsMf8yNz//KzM5/0B2s/9KitT/QoHI/0OAxf9Fgsn/TInO/1KR
+        2P9bneb/U5LY/0aDyf9HhMn/RoLH/0SAw/9Egcj/SITI/0WBw/9Gg8f/Q329/yo0PP8vMzr/JSkr/zVi
+        lP9Ghs7/RIPL/0ODy/9BfsT/Pnq7/z18w/9Cgsr/RIPL/z9+xf9Agcv/PH7I/0aJ1f9HiNH/R4jR/0OD
+        yv85ecD/NXO4/yU2Rf8aHR3/KTE2/y01PP8rMkD/KzJE/yoyRP8qMkT/KjJE/ykxQ/8oMEL/KC9B/yYu
+        Ov8pMjj/LTQ3/w4QEP8nLjP/JS43/yMrPf8jKj3/Iyo9/yIqPP8hKTz/ISc7/yAoO/8gKDv/ICc6/yAn
+        Mv8hKTD/LjlD/xMXHP8VGh//Iywz/xwlLP0eJS3rISgw/xccIv8QExf/KjQ7/0JRWv8fJq//AgLu/wME
+        6f8DBOn/AwTp/wME6f8DBOn/AwTp/wID7/8GB7//RlRs/0dXXv8LDg//LDY0/zE8bP8FB9//AQLt/wID
+        6v8CA+r/AgPr/wID6v8CAu3/AwPe/yw2X/9BT0//KjE3/xYZGv8nO1H/QX/G/z17w/8+fcX/P33E/zx5
+        v/9Dgcf/UI3T/1SU3v9Mic7/RoPJ/0OAx/9AfsX/Qn/F/0mHzv9Oi9L/SobM/0aFzf86bKP/Jy0x/zM5
+        Qf8rMjf/PXGq/0eFy/9Ihs7/RoTK/0iEyf9Lh8z/VJbi/1GS3f9SkNf/R4PG/0iDxf9Khcn/RoHD/0WA
+        wv9HgsT/RoLD/0eDx/8+d7f/KTQ8/zA1PP8mKSz/N2SV/0iHzf9Fg8b/QX7C/0N/xP9BfL//P37C/0GC
+        zf9BgMj/Q4HF/0iI0f9FhtD/RoTK/06N0/9PkNj/SYrV/zl6w/83drv/K0Na/xsdHv8nLjP/LjY9/ysz
+        Qf8sNEb/KzNF/yszRf8rMkT/KjJE/ykxQ/8oL0L/Jy88/yoxOf8vNzz/EBIT/yQsMP8mLjf/JCw9/yMq
+        Pv8iKjz/Iik8/yIpPP8hKDv/ICc6/yAnOv8gJzv/ICgz/yIqMP8tOEL/Exgd/xUaHv8jLDT/HCQs/x4l
+        LfIgJy//Fhsh/xATGP8rNT3/Q1Fa/x0krf8BAu//AwTp/wME6f8DBOn/AwTp/wME6f8DBOn/AgPv/wcI
+        v/9KWHH/RFNY/wwPEP8vOTb/MDpt/wQG4f8BAuz/AgPq/wID6v8CA+r/AgPq/wIC7v8EBNf/LzlL/0JP
+        Uv8qMTb/FRcX/y1FXv9Egsv/PHvC/zx5v/8+er//PXvB/0OCyP9Uktv/UZDZ/0yM1f9HhMr/Qn7D/z99
+        w/9Fgsf/SofK/0yK0f9Jh9D/SIfQ/zpspP8nLTH/NTtC/yoxN/8+c63/T47X/02M1P9Jhs7/TIrS/06K
+        0v9TleP/SYfP/0qJ0v9GhMr/RYDC/0qFyP9Ig8X/RYLH/0eCxf9HgsX/SobJ/0V+vf8qNT3/MTY9/yYp
+        LP81YZD/RoTJ/0WCxf9FgcX/Q3/D/0eEy/9AfsP/R4fR/0yM1v9IiM//S4zV/0yN1/9KidD/SojN/1CQ
+        2f9KjNj/OnnB/zh4v/8vS2f/Ghwc/yctMv8wNz7/LDNB/ywzRv8tNEX/LDRF/yszRP8rMkT/KjJD/ykw
+        Q/8pMD7/KjE4/y83O/8SFRX/JCsu/ycuN/8kKz3/Iyo9/yMqPf8jKj3/Iik8/yEoO/8gJzr/ICc6/yAn
+        O/8gKDP/Iiow/y86RP8VGh7/FBkd/yMrM/8cJSz/HyYu9SAnLf8WGx//ERUZ/y86Qv9EU1v/HSOs/wEC
+        7v8DBOn/AwTp/wME6f8DBOn/AwTp/wME6f8DA+//CAnC/01ddv9DUFb/DA8Q/zA7Nv8uOHb/AwTm/wIC
+        6/8CA+r/AgPq/wID6v8CA+r/AQLu/wQF2P8xPEz/Qk9T/yoxNv8SExP/LUVg/0SDyv8/fsX/Pnq//0B+
+        xP88er//R4bM/1aW4P9QjtT/TIfL/0aBxf9DgMT/QX7D/0R/wv9Ggcb/R4TK/0iEy/9Lic7/Pm+m/yct
+        MP81O0L/KjI3/0F3tP9Pj9j/SYXJ/0eBw/9Nicz/VJHX/1eY4/9Mh8v/TIbK/02Izf9Hg8j/SYXK/0eD
+        xv9Gg8n/RoHC/0iExf9Mh8r/SILE/ys1Pv8zOD//Jiks/zRgj/9Ihcn/RoLG/06L0f9IhMj/TIrP/0aC
+        x/9Hhcz/T47X/0yN1v9Li9P/T43V/0yN1/9IiND/TI/a/0aGz/87eb//OnrD/zBPb/8YGRj/Jiwy/zE4
+        QP8sNEH/LTRG/y00Rv8tNEX/LDNF/ysyRP8qMkP/KTBD/ykwPv8qMDf/LjY6/xMXFv8iKCv/Jy42/yMq
+        PP8jKjz/Iik8/yMqPf8iKTz/ISg7/yAnOv8fJjr/ICY6/yAnM/8iKTD/MTxG/xYbH/8TGB3/Iioy/x0l
+        LP8fJy/1ICct/xYaHv8RFRn/MTxE/0RSWf8bIav/AQLu/wME6f8DBOn/AwTp/wME6f8DBOn/AwTp/wMD
+        7v8JC8P/Tl53/z5LUP8NEBH/Mz45/yw2f/8CA+v/AgPq/wID6v8CA+r/AgPq/wID6v8BAu7/BQbZ/zI+
+        Tv9CUFP/KTE2/xAREP8uR2L/Q4DF/0OByv8/fML/RoTL/0J+xP9LitD/V5jj/1OQ1P9LiMv/R4TK/0mJ
+        0v9Fgsf/R4PI/0eCxv9KiM7/SIXL/0uIzf89b6b/Jy0x/zc9Rf8rMjf/Q3u6/1ub5P9Qi9D/SoXI/0uG
+        yf9Tj9L/V5Tb/1CM0v9Zl9//VZDT/06Iy/9Vkdf/TIfJ/0qExv9JgsP/S4XH/1KNzv9RjM7/LDY//zM5
+        P/8nKy3/NGGR/0eFzP9Gg8j/TozW/0uIzv9Oi87/RoLH/0uJzv9Xlt7/VJLY/02L0/9Jh8z/TY7Y/0eJ
+        0/9Dhc//P3/I/zt5vf86eL3/MVBw/xYXFv8nLTL/MjpA/y00Qf8uNUf/LTRF/y00Rv8sNEX/KzNE/yoy
+        Q/8pMUP/KTE+/ykwN/8vNjz/FRgY/x8kJ/8nLjb/JCs8/yMqPf8jKj3/Iik8/yEoO/8hKDv/ICc6/yAn
+        Ov8gJzv/ICcz/yEpL/8xPEb/Fhsf/xMYHP8iKjH/HSUu/yAoL/EhKTD/Fxsh/xEUGP8sNT3/QlBX/xwi
+        q/8BAu7/AwTo/wME6f8DBOn/AwTp/wME6f8EBOn/AwPv/wcIwf9PXnf/PUlN/w0PEP81Pzv/LDZ4/wME
+        6P8CAuv/AgPq/wID6v8CA+r/AgPq/wEC7v8EBdj/MTxL/0JPUv8rMzj/EhQT/y9HX/9AfMD/PnvA/z96
+        vv8/fML/Q3/G/0qHzv9Xldz/U5HX/06L0f9Lhs3/SofO/0aCx/9Lh83/TYfK/06Hyf9Khcr/SYfN/zxs
+        o/8nLDD/OT9G/yoyN/9Ifbn/YJ7j/1GO0v9Lhcf/TYfI/1OP1P9gneL/Uo7T/1GO0v9Ri87/TonL/1qZ
+        3/9Oicr/SoTG/02HyP9Picv/Uo7R/02Hx/8sNj//NjxC/ygsLf89aJb/T4zS/02K0P9Qj9f/SIXL/0SB
+        xv9EgMT/RIHF/0aI1P9Ihsz/TIjM/1GQ2P9Tkdb/SojM/0aFzP9AfMP/PHe6/zt4u/8wT23/GRoa/ygu
+        Mv8yOkH/LjVC/y82SP8uNUb/LTRG/y00Rf8sMkT/KzJD/ysyQ/8pMT7/KjE4/zE5Pv8VGRn/HiQm/ycu
+        N/8lKz3/JCs+/yMrPf8iKTz/Iig7/yEnOv8gJzr/ICc6/yAnO/8gJzP/Iikv/zA6Q/8WGh7/FBkd/yIr
+        Mv8eJi7/Hycu6iEpL/8YHCH/ERQY/y02Pv9GVVz/HiWu/wEC7v8DBOj/AwTp/wME6f8EBOn/BATp/wQE
+        6f8DA+//Bwi//01bdP8+Sk7/DQ8Q/zM+PP8uN27/BAXi/wIC7P8CA+r/AgPq/wID6v8CA+r/AQLu/wQE
+        1/8wOkv/Qk9R/yw0OP8VFxb/MUhf/0SBx/8/e77/QHy+/0F9wf9FgMX/TYnP/1OQ0v9YlNb/WJXa/06K
+        z/9IhMn/RYHG/0iDx/9RjND/VpHT/1CKzP9TkNj/RHWu/yctMP87QUj/KzI2/0l+uP9goOb/VJHY/1ON
+        0v9Vkdb/XZre/2Oh6P9fneT/U5Ha/02Jzf9Qi87/V5TY/0+Iyv9Mhcf/WJPV/1OOz/9Pisz/SYC+/yw2
+        Pv85P0b/KCst/0Jun/9VlNv/TYrQ/06M1P9JhMj/RYHF/0SBxv9Df8P/QoHI/0aEyv9MiMr/T4/W/1OT
+        3P9Vk9n/TY3Y/0SCyv88eb3/PXu//zFNaf8aHRz/Ji0x/zE5QP8uNUL/LjVH/y82R/8uNUb/LDNE/ysy
+        Q/8sM0T/KjFD/ygvPf8pMDb/MDg9/xQZGf8eJCf/KC84/yUtPv8mLD//JSs+/yQqPf8jKjz/Iik7/yEo
+        Ov8fJjn/HyY6/yAnMv8iKjD/MDtE/xUaHv8UGR3/Iisy/x4mLv8hKTHgIysx/xgdIf8QExf/LTY+/0hX
+        Xv8iKbH/AgLu/wME6P8DBOj/AwTp/wQE6f8EBOn/BATp/wMD7v8GB7//SVVu/0BNUf8MDxD/MDs5/y86
+        aP8FBt7/AQLs/wID6v8CA+r/AgPq/wID6v8CAu3/AwPb/yw1Vf9EUVL/Lzc8/xYZGP8tQVb/RoLJ/0F8
+        v/9BfMD/Q3/E/0WAxP9Khsz/VJDT/1eT1/9VkdT/UY7S/0uFyf9HgcX/SYLF/0yGyf9Tj9X/VpLY/2Ge
+        4/9Dc6n/Jy0w/ztASP8rMjf/Rnmy/1qY3v9Ylt7/U4zO/1SQ1P9emdz/Xpre/12Y2v9gm93/VJHX/1ON
+        z/9Zldv/UozO/02Gxv9Vj9D/UYvK/0+Kyv9Hfrn/KzU9/zxCSP8pLS//QGub/1yZ4P9Pi9D/U5Pb/02J
+        y/9IgsP/RoLI/0V/wf9EgMX/RoPJ/0eCxv9Hg8f/T4zS/0+M0P9Rj9b/RoXM/z56v/8+fcP/LUZf/xkc
+        G/8nLTL/MDc+/y41Qv8wN0n/MDdH/y41Rv8sM0T/KzJD/ysyQ/8pMEL/KC47/ycuNP8uNjr/ExcX/yAm
+        Kf8oLzj/Ji0+/yYtP/8lLD7/JCs9/yMqPP8iKTz/Iik8/yEoO/8fJTr/ISgz/yMrMf8wO0T/FBkd/xUa
+        Hv8jLDP/HiYu/CIrM9QlLTT/GR8j/xATF/8sNT3/R1Zb/ygwrP8CA+7/AwTo/wME6P8DBOn/AwTp/wQE
+        6f8EBOn/AwPt/wYHyv9FUm//Q1FU/wsPD/8vOTb/Mjxr/wYI4P8BAuz/AgPq/wID6v8CA+r/AgPq/wID
+        7P8BAeP/Ji5t/0RTUP8zO0H/Fxob/yQxPP9Ce7v/QX2//0J8vf9Efb//RoDF/0qHzf9WktT/V5HQ/1OP
+        0/9TjtD/TojJ/0eCxv9Jg8b/TYfM/1GLzf9ZlNf/Xprc/0Rzp/8oLTD/O0FI/ysyNv9KfLP/VJDW/1OO
+        0/9UjtD/VpHS/2Kd4P9Uj9P/UozP/2Cb3f9cmuH/VpPZ/1+b3/9cltj/UIjI/1KLyv9Qicr/UYvM/0d+
+        uv8qNDv/Oj9G/yksLv8/a5v/Z6Xq/1eS1f9PjNH/SofN/0iDxf9HgcP/RYDC/0V/wv9FgcX/RoPJ/0iD
+        xf9Lhsn/TYfJ/1KQ1f9Hg8j/QX7C/0F+w/8oOEj/Gh0c/ywzOP8wNz7/LTNB/y41Rv8vNkb/LjVG/ywz
+        RP8sM0T/KzFD/ykvQv8oLjr/KjA2/y82O/8TFhX/Iygr/ykwOv8nLT//Ji0//yYsP/8lKz7/Iyo8/yMp
+        PP8iKDv/ISg7/x8lOf8gJzH/Iysx/zA7RP8TFxv/Fhof/yUtNP8fJy7wJCw2xCUsNP8ZHiL/DxIV/y02
+        Pv9KWF3/LjeZ/wME7v8DBOj/AwTo/wQE6P8EBOn/BATp/wQE6f8EBOr/BAXi/z9Jd/9JWFn/DA8P/y44
+        OP85RFz/Cw7V/wEC7P8CA+n/AgPq/wID6v8CA+r/AgPr/wAB5f8gJnL/Q1JO/zlCSf8YGx3/Iywy/0F1
+        sf9DfsH/Qny8/0R+wP9Khcz/TonN/1iT0/9bltf/XJfb/1SQ1f9Oicr/SYLC/0yGx/9Qi8//V5PV/1iT
+        1P9XktP/QnGk/ygtMf89Q0r/LTM3/1CBt/9cl9v/WJLU/1WQ0v9Zk9P/X5vf/1KN0P9XktT/W5ba/1qV
+        2P9kouf/W5rh/1aQ0f9Qicj/UInI/1GJyv9dmuD/T4XB/yozOv84PkT/KCst/z5plv9hoeb/Xprd/1iS
+        1P9bl9r/V5LU/06Hx/9Jg8P/R4DA/0V/wv9EgMT/Q37C/0mFyv9Yltr/WZjg/0iDxv9CgMX/Q3u6/yg1
+        Pv8YHBv/MTg+/zA2Pf8tNEP/LjRF/zA3R/8vNkf/LjVG/y00Rf8tNET/KzJD/yoxO/8rMjn/MTk8/xEU
+        FP8kKi3/KS86/ycuQP8nLkD/Jy0//yUsPv8kKz3/Iyo8/yEnOv8hJzr/ICc5/yAnMP8lLTT/MTtE/xIV
+        GP8WGh//JC00/yAoMd8lLTayJCsy/xwiJ/8NEBP/KjI5/0pYW/8zPYv/AwTt/wME6P8EBOj/BATo/wQE
+        6P8EBOn/BATp/wQE6f8DA+b/NT52/1JhY/8MDQ7/KTEy/z1KTP8OEcn/AQLt/wID6f8CA+r/AgPq/wID
+        6v8CA+n/AADx/xcci/9BT0f/P0lP/xsfIf8gJij/OmWU/0SAxP9EfsD/RoHE/0qFyP9Sj9b/W5XW/16a
+        3v9dmNv/VpHU/0+Ix/9Jg8X/TojK/1iU2v9ZlNb/VZDT/1+c4P9Hdqv/KC0x/z9FTP8tMzj/UIK4/2Sg
+        4P9cldX/Vo/P/1mT1f9Yk9f/VY/R/12Y2f9ppeb/YZ3h/1qW2P9cmNz/VJDV/1OMzP9Wjsz/U4zM/2Ki
+        6f9PhcP/KjM6/zg+Q/8nKyz/OGKP/1WS1v9dmdv/WJPW/1eU3P9YlNf/UYrL/02Gx/9Mhcf/SILD/0mE
+        yP9GgML/SYXJ/0+P1/9OjNH/RYDC/0WCxv9Bcqb/JCwx/xkcHf80PEP/MDY9/y82Rf8uNEX/LjVF/y0z
+        Rf8tNEX/LDJE/ysxQ/8rMkP/LDM9/y00O/8vNjr/DxER/yYsMP8oLzr/Ji0//yctP/8nLj//Ji0//yQr
+        Pf8kKjz/Iig7/yIoO/8hJzr/IScv/ycvNv8sNT3/DhAT/xkeI/8jKzL/ISkyyyYuN5wjKjL/ICct/w4R
+        FP8mLjT/SFVZ/zpFhf8FBub/AwPp/wQE6P8EBOj/BATo/wQE6P8EBOj/BAXp/wEC6f8rMo3/Wmls/w0P
+        EP8kKyz/P0xN/xMYvv8AAe7/AgPp/wID6f8CA+r/AgPq/wID6f8BAfL/DhCk/z5KS/9CTVH/JCou/xse
+        Hf81Vnn/R4PH/0qDx/9Nh8v/TYfH/1eX4P9ZlNf/XZjb/1yX1/9Ujc3/UYrM/06Iy/9Ri83/VY/Q/1WO
+        z/9Si8v/Xpve/0t5rP8pLjH/QUdO/y0zOP9Kfrj/ZaHm/1qU1/9ak9P/WpPW/1uX3f9YktT/XpfW/2Wf
+        3f9bldb/WZPU/1mS0/9ZktT/VY/T/2Gb3P9aktH/Z6bs/1WMyP8pMjn/OT5E/ycrLP86Yo7/Uo3Q/1GL
+        zP9OiMr/WZbd/1mU1/9Vj9D/VI7Q/1aS1v9SjM//UIvO/0qExf9GgcX/TInQ/0iDx/9GgcT/SITI/zti
+        jP8fIiL/Iicq/zY9RP8yOUH/MThI/zA3SP8vNkb/LjRE/y0zRP8qMEH/KjBB/ywzQ/8tMz3/MDg+/ysy
+        Nf8OERD/KC4y/ygtOv8mLD7/Jiw+/yYtPv8mLD//JSw+/yQrPf8jKjz/Iyk8/yIoOv8hJy7/KzQ8/ysz
+        PP8NEBL/HSMo/yEoMP8hKTK1JjA5fiIpMP0kKzH/DxMW/yEoLv9GU1n/QU15/woL2v8DA+r/BATo/wQE
+        6P8EBOj/BATo/wQE6P8EBen/AgLq/yEmlv9baWz/Fxsd/x4jJf8+S0n/HiWe/wEC7/8CA+n/AgPp/wID
+        6f8CA+n/AgPp/wEC7/8GB7//OEJQ/0RQUv8wNzz/FBYU/zNLYv9HgsX/T4rN/06Jy/9Mhsf/U4/T/1mV
+        2v9cltf/XJbW/1iS0/9Ujc7/Uo3S/1qV2P9ak9H/WZLS/1uW2P9opej/Tn+z/ygtMP9DSFD/LjQ5/0l8
+        tv9fnuj/Xprf/2Cc3/9emt7/Y5/j/2aj6f9inuL/Y5/g/12Y2/9in+P/YJve/1uW1f9emt7/Y6Pr/2ml
+        6P9ys/f/Yp3V/yoyOf84PUL/Jikr/ztlk/9Vktb/UYrK/1CKzP9YmOD/Wpfb/1iU2v9SjM7/U47Q/1eQ
+        z/9WkdP/Uo3R/06L0f9Tkdf/TojL/0iExv9LiM3/OFVz/xcYFf8pLzP/Nz5F/zI5Q/8xN0j/MTdI/zA2
+        R/8xOEj/LzZH/ysxQv8sMkP/LTRD/y00Ov8yOUD/Jiwv/xEUFP8pLzX/KC47/yguQP8nLT//Jiw+/yYs
+        Pv8mLD7/JSs9/yQqPP8jKjz/Iyg6/yEnLv8uNz//Jy41/w0RE/8hJy7/ICcu/yIrNJkmLjhgIikx9Ccu
+        NP8QExb/HSIo/0VSWv9IVXf/EBLY/wMD6v8EBOj/BATo/wQE6P8EBej/BAXo/wQF6P8CA+7/FBav/1Vj
+        Z/8iKCz/Fhkb/z5KRf8rMn3/AwTt/wID6f8CA+n/AgPp/wID6f8CA+n/AgPs/wID4P8rMlj/RVJR/zhA
+        Rf8WGRr/JjA2/0N3sv9Mh8n/T4jJ/02GyP9Qi8//YJzg/16Y2v9cltX/WpLS/1qU1f9SjdD/XJfb/1+b
+        2/9emNn/XJLP/1qJuv8/YIH/LDE2/0FHT/8tMzj/OFZ3/0VqlP9Ga5P/RmqS/0RokP9HbJT/Rm2X/0px
+        mv9IbZT/RGiQ/0dumP9Lcpr/RGiO/0Jnjv9HbJT/THOd/1R7o/9Hao3/KjE3/zk+Rf8qLjH/Lkpl/0Rv
+        n/9Mf7j/U43N/1ya4v9koef/VZDU/1GKyv9TjtL/VY/R/1aQ0v9Pis7/SYXK/0WAw/9GgcT/SYXJ/0Z/
+        v/8tPUz/GRsa/zI5Pv81PEL/MTdD/y81Rv8vNUX/LjRE/zA2Rv8vNkb/LTND/ywyRP8tM0H/LTQ6/zM6
+        QP8gJSf/FBcZ/ywzOf8pMD7/KS9B/ycuP/8nLT//Jy0//yYtPv8lLD3/JCo8/yMpPP8jKTj/Iigu/zI7
+        Rf8iKS//DhAT/yMqMP8gJy76ICkydiYvOEEjKjLpJiwz/xIWGf8WGRz/Qk5Y/1BeZ/8aHsj/AgLs/wQE
+        5/8EBOj/BAXo/wQF6P8EBej/BAXo/wME7f8ICsH/Ul51/zA4Ov8MDg//PEZE/zI8aP8GB+D/AQLr/wID
+        6f8CA+n/AgPp/wID6f8CA+r/AADq/xsggP9GUk3/QUtQ/x0iJP8cICH/PGSQ/0+Kzf9SjdH/UInM/1WP
+        0/9jn+L/ZJ/h/2Ca3f9bldb/UovK/1SO0v9YktT/THmp/ztVc/80QU3/Nj5D/zxDSP9ASE3/QktR/z1D
+        S/83PEP/OD1C/ztARf88QEb/O0BG/zpARf87QEX/PEJH/z1CSP89Qkj/PUJJ/z5ESv9ARkz/PkJJ/zo/
+        Rf84PUL/OD1D/zc9Qv83PEL/Rk5W/0VOUv8/R0v/OkJF/zVBSf83UWn/T32w/2im6v9Wktf/T4jK/1SN
+        0f9dmNj/YJvc/1aR1P9Uj9P/UozR/0mEx/9Jhcr/Pmue/yIpLP8aHR//Nz1E/zI3Pv8vNUP/MDZG/zE3
+        R/8wNkb/MDZG/y81Rf8tM0T/LDJD/ywyPv8sMjj/NDtB/xYaGv8YHB7/LTU8/ykvP/8oLkD/KC5A/yct
+        Pv8mLD7/Jy0+/yYsPv8lKz3/JCo9/yMpNv8jKjD/NkFL/xwhJv8PEhb/JCsy/yAoMPEgKTJVLDQ+ISYt
+        NtQmLTT/GR0h/xIVGP83QEn/UV5i/yYssv8CAuz/BATn/wQE6P8EBej/BAXo/wQF6P8EBej/BAXr/wQF
+        1f9ET3z/QUxL/wsMDf80PT//OkZT/w8TyP8BAu7/AgPp/wID6f8CA+n/AgPp/wID6f8BAfD/DhCr/z5K
+        Sf9FUFT/LDM3/xUXFv8wRlv/UIrN/1WR1v9Wjs7/WJHU/2Od3v9moN//Ypvb/2Ca2/9Vj9L/THuy/zdO
+        Z/8yOkD/PEJD/0RLTv9JUVf/TFNa/01UXP9TW2X/PEJK/ywwMv8uMDP/LzI0/zAyNf8xMzb/MTU3/zE0
+        N/8xMzb/MTM2/zE1N/8yNTj/MTQ3/zI1OP8xNDf/MDI0/y4xM/8tMTL/LC8x/zQ5Pv9RWmX/TVNc/01T
+        W/9PVl7/TVRa/0lPUf8+Rkn/QFdr/0h1qP9TjMz/Wpje/16b3v9ZktP/VY3N/1ONzv9alNX/TYXG/0mF
+        yv82U3L/GBoZ/yctMf84PkT/MTdA/zA2Rv8xN0f/MTdH/zE3R/8yOEn/MjhI/zA2R/8uNEX/LTM8/y40
+        Ov8zOz//EhQV/x8kJv8sMjz/KS9A/ykvQP8oL0D/KC9A/yctP/8mLD7/JSs9/yQqPf8kKj3/Iyk0/yYu
+        NP83Qkv/Fhoe/xUZHf8kKzL/ICgw5SMsNDItNUAOJzA5tCgwNv8eJCn/DxMV/y41Pf9QXWH/NT6W/wUF
+        6/8EBOf/BAXo/wQF6P8EBej/BAXo/wQF6P8EBej/AgLp/ywzhf9SX2D/Cw4O/ykxNP9BTkf/GiCo/wEB
+        7/8CA+n/AgPp/wID6f8CA+n/AgPp/wID7P8DBNX/LjVW/0hUUv87Q0j/Fhka/yYwN/9Mfrf/VpLY/1aP
+        0P9cl9r/bqjo/2eh3/9koOX/VpDR/zpZe/8wOUD/PEFD/0lRVv9MVFz/S1Jc/0pPWv9JT1r/SE5Y/1NZ
+        Zf8uNDn/GCcz/x0uPf8cLj7/HS4//xssO/8bKzv/Hi08/x0tPP8eLT3/HS4//x0tPP8cKzn/HCw7/xsr
+        Ov8cLDz/HCw8/xwsO/8aKjj/Jiww/05VXv9LUVv/SU5Z/0lPWf9JT1r/TVJc/05VXP9JT1L/OUJH/zdS
+        bv9Ti8r/ZKLo/1yV1/9clNT/WJLU/2Kf4/9Ujc//SH25/ys4RP8XGRj/Mzk//zc+RP8zOUX/MjhI/zE3
+        R/8xNkb/MTdG/zE3R/8yOEj/MTdH/y81RP8tMzv/MDY9/y41OP8PERL/Jisv/ywxPv8qMEH/KS9A/ykv
+        QP8oLkD/Jy0//ycuP/8mLD7/JCo9/yQqPP8kKjP/KzQ7/zQ+R/8SFRj/Gh4i/yYtNP8gKTLIJS84Fisz
+        PwMoMTmLKTA3/yMoLv8PEhX/KC41/09cYP9CToD/Bwjl/wME6P8EBef/BAXo/wQF6P8EBej/BAXo/wQF
+        5/8CA+z/GR2n/11qcP8TGBn/GyEi/0FNSP8sNHj/AwTr/wIC6v8CA+n/AgPp/wID6f8CA+n/AgPp/wEB
+        6/8ZHoH/R1NN/0ZPVP8mKy//GBsZ/zxdfv9TjtH/UYrN/1uW2/9rpub/a6js/1eLyP81SV//Mzg5/0RK
+        T/9LUlv/SlBa/0lPWf9JT1n/SU9Z/0lPWf9JT1n/UVhg/ys1Pv9DdKv/U43O/1qW1v9emNj/VI3L/12X
+        1f9oot7/YpvX/16W1f9fmdn/XZXS/1ePy/9Xjs3/VIzJ/1KKyP9Ricf/UorJ/0uAu/8nM0H/S1BX/01U
+        Xv9ITlj/SU9Z/0lPWf9JT1n/SU9Z/0tRXP9MU1r/PkRG/zVHWP9Sgrn/Z6Xt/2mo7/9cltf/X5na/1iU
+        2P8/Y4v/HSAg/yEkJ/86QEf/NTtD/zQ5SP80Okn/MTdH/zI3R/8xN0f/MjdH/zE2Rv8xN0j/MTdE/y81
+        O/80PEL/JCos/xARE/8rMTb/KzA//ysxQv8qMEH/KTBB/yguQP8nLT//Jy0+/yYtPv8lKz3/JCo7/yQq
+        Mf8yO0T/LjY//w8RE/8eJCj/Ji01/yIrM6QlLzcIKTE6ACoyO1wlLTT4Ji0y/xIVGP8hJiz/SlZe/01a
+        dP8RFNL/AgLr/wQF5/8EBej/BAXo/wQF6P8EBej/BAXn/wQE7P8JCcb/UVxy/y84OP8OEBH/PUdH/zlD
+        W/8LDdX/AQHt/wID6f8CA+n/AgPp/wID6f8CA+n/AQLu/wgJv/85Q0//SlZY/zpCR/8UFhb/KjU//0t/
+        uf9Risr/V5DR/3Ku7/9djcD/MT9M/zxBQ/9HTlX/SlBa/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0tR
+        W/9KT1T/JzZF/1eMx/9lndr/ZJ3b/2ad2/9ooeD/cq7v/3+69/91ruz/cKrp/3Gq6P9qot//aaHe/2if
+        3P9mntz/ZZza/2Sb2P9knNn/XpXT/yk8UP9ARUf/TlVe/0hOWP9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9OVF3/RUtO/zQ/SP9QfrD/aqvw/1+Y2v9Yk9X/TYXE/y4+T/8VFhX/MDU7/zc8Q/8zOEL/MzlI/zQ6
+        Sf8zOUj/MzlJ/zI4R/8xN0f/MjhI/zI4SP8yOEL/Mjg+/zc/RP8ZHB3/GR0e/y40PP8pLz//KjBA/ysx
+        Qv8qMEH/KC4//ygtP/8nLT7/Jiw+/yUrPv8lKzr/JSsy/zdBSv8oLjT/EBMV/yQqMf8jKjL+JC43dSAq
+        NQAqMzwAKzQ9MyYtNeMqMTj/FRgb/xcbHv9ETlj/V2Ro/yEmu/8BAe3/BAXn/wQF5/8EBef/BAXo/wQF
+        6P8FBej/BQXq/wMC3f9ASYr/SFRS/wcICf8xOTz/QU1I/xwhqP8AAe//AgPp/wID6f8CA+n/AgPp/wID
+        6f8CA+r/AQHn/yAkdP9KVVH/RU5T/yUpLf8WGBf/OVh4/1KLy/9YkdH/WYe6/zhDTf8/REb/TVRc/0pQ
+        Wv9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/TlRe/zo9P/8vSWX/Ypvc/22k4v9jm9j/YpnU/2Sb
+        1/9mndr/erTx/3iz7/9zrev/bKTi/2ae2/9on9z/ZZzY/2Sc2P9lndn/Y5rZ/2Oa1v9kndz/OVl8/zA0
+        Nv9QV1//SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9LUVv/SE9T/zM+Rv9LeKr/XJfZ/1qV
+        2P9DaZP/HSEh/x8jJf81O0H/Mzg//zQ5R/81Okr/NDlJ/zU7Sv80Okr/NTtK/zU7Sv8yOEj/MTdG/zE3
+        Pv8yOD//NDtA/w8REv8gJij/LjQ//yswQf8rMUH/KzFB/ykvQP8oL0D/KC4//yctPv8mLD3/JSo9/yUq
+        Nv8oLjX/PEZQ/xsgJP8SFRn/KC83/yQsNPEmLzlIJS84ACs0PQAsNT4SKDA5viowOP8eIib/ERQX/zY9
+        Rv9XZGf/Nz+Z/wME6f8DBOj/BAXn/wQF5/8EBef/BQXo/wUF6P8FBef/AgLt/x4hnf9aZ2r/EBMU/x4j
+        Jf9DTkn/Lzd0/wQF6P8BAur/AgPp/wID6f8CA+n/AgPp/wID6P8BAu//CQu2/z1FT/9NWFn/PUVK/xYX
+        GP8jLDP/UIG6/01/uf8uO0r/RElL/05VXf9KT1r/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9NU1v/KjA1/0Vwof9ooeH/aKDe/2Sa2f9km9b/Zp3a/2ig3P9vqen/b6np/2uk4/9on9z/aaDc/3Or
+        5/9zq+f/a6Pg/2ee3P9lndv/Y5rV/2ig3v9Rgbf/Iy01/01SWP9LUVv/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9MU13/R0xQ/y86Q/9JeK7/VYzL/ys4RP8WFxb/Mzg+/zg9Q/80OEL/NzxM/zc9
+        TP82O0v/NjxL/zY7S/81O0v/NTtK/zM5SP8zOUX/Mjg+/zc+Rf8nLS//DxER/ysyNv8vNEH/LTNE/ywx
+        Qv8rMUH/KS9A/yguP/8nLT7/KC0//yYsPf8lKTz/JCky/y00PP85Q0z/FBca/xoeI/8oMDf/JCw11Ccv
+        OR8mLjgALTU8ADY+QQIpMTuIKTA4/yMpL/8QExb/KC40/1NgZf9OWYH/Cgzg/wME6f8EBef/BAXn/wQF
+        5/8FBef/BQXo/wUF5/8EBOz/CQrM/1VgeP8sMjL/DxIS/z1HR/8+SU//ERTG/wAB7v8CA+j/AgPp/wID
+        6f8CA+n/AgPo/wID6v8BAej/HyN3/05YUv9JU1j/KzA0/xMUE/85Umv/MUlk/zk+QP9PVl7/Sk9a/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/S1Fb/0RIS/8oPVL/XpXR/22m5v9pouL/ZZzZ/2ac
+        2P9so+D/cajl/2mh3v9nntz/aqHe/3at6f9xqOX/eLHt/3Wt6f9so9//aqHe/2yk4P9ontv/aqHd/2ae
+        3P8uSGT/Nzo7/09WX/9JTln/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9MUlv/RUpM/zBE
+        Wf83VXX/FxkY/ycsLv8+RUv/Oj9H/zc9S/84P07/OD5N/zg+Tf82PEv/NTpK/zU6Sv81O0r/MzlJ/zU7
+        RP80OkD/OEBG/xgcHf8WGRr/MTg//y81Rf8uNET/LDJD/ysxQv8qMEH/KjBB/ykvP/8pLT//Jis9/yUr
+        Ov8lKjD/Nj9I/y41PP8PEhX/ISYr/ykwOP8lLTajKTE6CCcvOAAoMDgALDQ+ACw1Pk4qMTnyKC40/xQX
+        Gf8cICT/SVNb/1hkc/8bH8f/AQLs/wQF5/8EBef/BAXn/wUF5/8FBef/BQXn/wUF6f8BAeT/Nz2N/09b
+        WP8JCgv/LjY4/0ROSf8oL4j/AgPs/wID6f8CA+j/AgPp/wID6f8CA+j/AgPo/wEC7/8FBsP/OUBT/1Jc
+        W/9ETFL/HiIk/xoeH/82PUP/TFNa/0pQWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0hP
+        WP9OU1r/LTQ4/0ZxoP9poeD/Zp3a/2ac2v9poNz/Z5/c/2uh3f9xqeX/d7Lu/26m4/94sOv/hcD6/3qy
+        7f92run/canl/2ui3/9upOD/cqvo/2+n4/9to9//a6Lf/1OCtf8iKjH/SU5T/0tRW/9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWP9NU1z/PUVJ/xwhIv8bHh//O0FH/zxCSf86P0r/O0FQ/zk/
+        Tv85PU3/OT9O/zg+Tf83PUz/NjxL/zY8S/80Okj/Mzg//zQ7Qf8xODz/DhER/yQqLP8xN0L/LzVF/y40
+        RP8tM0P/LTND/ysxQf8qL0D/KS4//ygtPv8mKz3/Jyw4/ycsMv85Qkz/Iigs/xIVGP8oLjT/Ji01+igw
+        OWgmKzcAJzI5AAAAAAAtNkAALjhBHykyOs4uNTv/GR0g/xMWGf89Rk//W2hq/zQ7pf8CA+r/BAXn/wQF
+        5/8FBef/BQXn/wUF5/8FBef/BQXn/wMD7v8VF7D/XGhv/xoeHv8aHh//QkxM/z1HV/8PEdD/AQHu/wID
+        6P8CA+j/AgPo/wID6P8CA+j/AgPp/wAB7f8UFpL/TVVR/1BaXf86QUb/Fxob/zs/RP9NVF7/SE9Y/0lP
+        WP9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9IT1j/TFNc/zxAQ/8xSmb/aqHg/2if2/9so9//a6Hd/26l
+        4f9vpeD/bKLc/22k3/9xqeb/baXi/3ew6/9+ufP/erLt/3+59P92rur/b6bj/2+m4v9qod7/a6Lf/3Cn
+        4/9yqOP/cKno/zRTdf8uMTP/TlVc/0hPWP9JT1j/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1j/SE9Y/0tS
+        XP8+RUr/Fxoa/zM5Pv8/RUz/O0BI/ztATv89QlH/PEJR/ztBUP87QVD/O0FQ/zpAT/84Pk3/NzxL/zY8
+        Rf80OT//OkJI/yImKf8QEhL/LTM4/y80Q/8wNUX/MDVF/y40RP8tMkP/LDFC/ykvQP8oLT7/KC4+/yYs
+        Pf8mKzP/LTM6/zxFT/8XGh3/Fxkd/y00PP8lLTXgKDE5MigwOQAAAAAAAAAAAC02PgAxOkIFKzM7lCwz
+        O/8mKjD/ERMW/yowNv9YY2r/UFqE/wsN4P8CA+j/BAXn/wUF5/8FBef/BQXn/wUF5/8FBuf/BQbq/wMD
+        3f9DS4X/QUpH/woLDf80PD//RE9L/yctkf8CAu3/AgLp/wID6P8CA+j/AgPo/wID6P8CA+j/AgPs/wEC
+        3v8nLGr/Vl9Z/05XXP8yOD3/GRwd/z9FTP9LUlz/SE9Y/0hPWP9JT1j/SU9Y/0lPWP9IT1j/SE5Y/0pQ
+        W/9JTVH/JzVC/1eJwP9vqOj/a6Hd/3218P9xqOT/a6Hd/2yi3f9so97/baTe/22j3v9uo9//cqrl/363
+        8v99tvH/eLHu/3Ss5/9zquf/cqrn/2yi3/9rodz/dazo/3y18f9tpOP/XZLO/yQ2SP88P0D/TVRe/0hO
+        WP9IT1j/SU9Y/0hPWP9JT1j/SU9Y/0hPWP9KUVr/REtT/xwgIv8rMDL/QEZN/zxCSf87QU3/PUNR/z5E
+        U/89Q1L/PEJR/zxCUP86QE//OT9O/zk/Tv85P0z/Nz1E/zc9RP83PkL/EhQU/x0iI/8yOEH/MDVF/zA1
+        Rf8wNUX/LzVF/y0zQ/8sMkL/KzFB/yovQP8oLj//Jy07/yYsMv84QEn/MTg//xETFf8hJiv/KjI6/ycv
+        OK4pMzwMKTI7AAAAAAAAAAAALTQ+ACo0OwArNDxPKjI78ywxOP8WGBv/HCAk/0tUXf9daXH/Iya+/wEC
+        6/8FBeb/BQXn/wUF5/8FBef/BQbn/wUG5/8FBuf/AwPs/xodrf9eaW3/FBcY/xsfIv9CTEz/QElW/xIU
+        yf8AAe7/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AQLu/wYIwv86QVv/WmRh/0xWW/8qMDP/GRwe/0RK
+        Uf9KUVv/SE9Y/0hPWP9IT1j/SE9Y/0hOWP9JUFr/S1BW/yoxOP9GcJ//babk/2qg3P90q+X/iML6/3au
+        7P9qoNz/baPe/26k3/9upN7/baPe/22j3v9wpuP/eLDs/3628f9wp+P/baTf/3Go4v9zquf/b6bi/3au
+        6f99tvH/dq7s/2ie2/9ro+P/THuv/yAqMv9CRkr/TFNe/0hOWP9IT1j/SE9Y/0hPWP9IT1j/SlBa/0lQ
+        WP8iJin/KCwv/0VLUv9BR07/PEJN/z1DUf8+RFP/PURS/zxCUf87QVD/O0FQ/zpAT/87QE//Oj9O/zk/
+        R/83PUP/OkJI/yQpKv8PERH/LTQ5/zI3Rf8xNkb/MDZG/zA1Rf8vNUX/LjND/ywyQv8rMUH/KzBB/ykv
+        QP8oLjn/KzI3/z9IUv8gJSr/EhUX/yguNf8nLzj5Ji84aCQqNQAnMDkAAAAAAAAAAAAAAAAALDQ+AC42
+        PxkqMjrILzc9/x4iJv8SFRf/OUBI/15pbP9ASJv/BAXp/wQE5/8FBef/BQXn/wUG5/8FBuf/BQbn/wUG
+        5/8FBur/BQXX/0pShP89REL/CQsM/zU8QP9HUkz/MDeC/wQF6f8CAun/AgPo/wID6P8CA+j/AgPo/wID
+        6P8CA+j/AAHu/w0Op/9HTlX/XWZl/0xTWP8mKy7/HiIj/0dNVf9KUFv/SE5Y/0hOWP9ITlj/SVBa/0xR
+        V/8sMDP/O1+F/2yl4v9xqOP/cqjk/3av7P9+t/P/dq/r/3Ko5P9vpeD/cafi/3Cm4f9vpeD/dazn/3y0
+        7/96su//e7Tv/3Co5P9so97/bqXg/3Sr6P93run/grz2/4K79f94sOv/ap/c/26l4/94tPT/QWmV/x8l
+        Kf9FSU3/TFNd/0hOWP9ITlj/SE9Y/0lQWv9IT1j/Jios/yIlJ/9FTFL/SE5V/0JIUv9BR1X/QEZU/0BG
+        VP8+RFL/PUJR/zxBUP87QE//Oj9O/zpAUP86P0v/OT5E/zlARv82PkL/ERMT/x0gIf82PEb/NDlJ/zI3
+        Rv8wNUX/LzVE/y80RP8uM0P/LDJC/ysxQP8qL0D/KS8//yguNf80PEP/O0NM/xMVGP8aHiL/LTQ7/yUt
+        NdkoMDoqJzA5AAAAAAAAAAAAAAAAAAAAAAAuNj4AOUJFASw0PYAsNDv+KzA1/xIUF/8nLDH/V2Bo/1xn
+        ff8XGtT/AgLq/wUF5v8FBef/BQbn/wUG5/8FBuf/BQbn/wUG5v8DA+v/Gh2r/1xmav8UFxf/HCAi/0ZO
+        Uf9GT1H/HCCz/wEB7/8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+n/AAHr/xYXlP9TWVr/Ymtq/01W
+        Wv8nLC7/ICMl/0VLUv9LUVv/SE5Y/0pQWv9LT1T/Ky8y/zdYfP9yquf/c6nl/3mw6v98s+//c6vo/3at
+        6P97su3/frfx/3Ko4/9yqOP/cqnk/3iv6v+Kxff/i8b8/3+49P94sOr/d67p/3Ss5/92rOj/fbXv/3Kp
+        5f90rOj/f7fz/3uz7/9wpuX/dq7r/3ev7f90rez/PGGK/x4jKf9AREX/TFJb/0hOWP9KUFr/SU9Y/yUq
+        LP8hJCb/QEVL/0NKUP9CSFD/REpX/0RKWP9CSFb/QEVU/z5EUv89QlH/PEJQ/zxCUP87QVD/OT9N/zk/
+        R/83PEL/O0JI/yQpKv8NEBD/LjQ4/zY7Sf8zOUn/MjdH/zA1Rf8vNUT/LjND/y0yQv8tMkL/LDFC/yow
+        Qf8pLjz/Ki81/z9HUf8sMzn/EBMV/yUqL/8qMTn/Jy84mCszPQYpMTsAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAtNT4ALTU+Ny01PeQwNj3/GBwf/xcaHf9FTFb/ZXBy/z1EqP8EBOv/BQXm/wUF5v8FBuf/BQbn/wUG
+        5/8FBuf/BQbn/wUG6f8DBN3/QUiM/0NLR/8ICQr/Mzk8/0lST/8/SGn/Dg/Y/wEB7P8CA+j/AgPo/wID
+        6P8CA+j/AgPo/wID6P8CA+r/AQHm/xsdif9YX13/Z29v/1FZXv8qLzH/HSAh/0JHTv9OVV7/SExS/y41
+        Pf87X4b/cajl/3iv6/91rOj/d6/r/3iw7f9wpuH/cKfh/3at5v+CuvT/ebHs/3Op4/97suv/jcj8/5XR
+        /f+Gwfj/gLn0/3qx7f+BufX/erHr/3Go4/+IxPb/h8Lz/3eu6v+BufH/gbnz/3Cm4/9xqeT/dq/t/322
+        8/91ru7/P2qa/yEuOv85PUH/T1Ve/0ZMVP8lKCr/Jyos/0FGTP9FS1L/QUZO/0FGU/9DSFb/RElX/0NJ
+        V/9CR1b/P0VT/z1CUP87QE7/O0BP/ztAT/87QEr/OT5E/zk/Rf8zOj3/EBMS/x8kJP81O0T/MzlI/zM5
+        Sf8zOEf/MTZG/zA1RP8uM0P/LDFB/ywxQf8tMkP/LDFB/yswOf8zOUH/Q0xV/xsfIv8WGRz/LTM6/ykx
+        OfAoMTlKJi84ADE5PwAAAAAAAAAAAAAAAAAAAAAAAAAAAC02PwAuN0EJLTU+pTI5Qf8mKzD/EhMW/yww
+        Nv9aZGr/W2aC/xUX1v8DA+n/BQXm/wUG5v8FBuf/BQbn/wUG5/8FBuf/Bgbm/wQE7P8SFLz/W2V1/x0h
+        H/8UFxj/QkpP/0tVTv8yOIv/BATq/wEC6v8CA+j/AgPo/wID6P8CA+j/AgPo/wID5/8CA+v/AAHi/xwe
+        hf9bYWH/a3Ny/1NcYP8yNzr/HB4f/zc7PP8xOUH/TXqs/3Ot7P93run/c6nj/3Op5P95sOv/eK7q/3Ko
+        4/93rur/fLLt/4W+9f+FvfP/dKrk/32z7f+Iwfn/hb/4/3yz8P+NyPj/l9L7/4O88/92rej/cqjh/3u0
+        7P+Pzfz/iML5/4S89P+Gv/f/erHt/3Co5v9vqen/eLDr/3qx7v99uvf/XpLE/yo3Qv81ODn/IiUn/y0w
+        NP9ITVT/RUpR/0JHT/9FS1j/RktZ/0VLWf9FS1n/RUtZ/0RJV/9BRlT/P0RT/ztAT/85Pk3/OT9L/zo/
+        Rv85P0X/O0NI/xwgIf8QExP/Mjc9/zY7Sf81Okr/NDpK/zI4R/8yN0b/MDZF/y80Q/8tM0P/LDJC/ysw
+        Qf8sMT//LTI4/0FJU/8zOUD/ERMW/yMnLP8vNj//KDA5uCozPRIqMjwAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAALjI9AC43QAAuNj9OLjc/8TM6QP8YGh3/Fxod/0hQWv9nc3X/OD6s/wMD6f8FBeb/BQbm/wUG
+        5v8FBub/BQbn/wYG5/8GBuf/Bgbo/wMC5v8uMpr/TlZV/wsMDP8oLS//R1BS/01VVf8kKK7/AQLu/wID
+        6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID5/8CA+v/AQHl/xkakP9ZX2L/cnl1/15mav89Qkb/Ghwe/xwe
+        IP9HXHL/bZrJ/3iw7P90rOj/dKrk/3iv6f93rur/dq7q/3qx6/95r+r/grry/4a/9v93ref/e7Ls/321
+        7/9/t/L/g7r2/4bB+P+Lxvj/hLzz/3iu6f91q+X/fLPu/4nC+/+Iwvr/gLfy/3628f92rej/c6rm/3at
+        7P9/uPP/grvz/3an1f9Vb4X/ICQn/xkbGv81ODz/S1BX/0lPVv9FSlL/RUpX/0VLWf9HTlz/R05c/0ZM
+        Wv9GTFr/RUpY/0JIVv9BR1X/QEZU/z1CT/88QUn/Oj9G/z1DSv8rMTP/DA8O/yYrLf83PUj/NTtL/zU7
+        Sv81Okn/MjdH/zA2Rv8wNUX/LzRE/y4zQ/8tMkL/KzBB/ywxOv8zOUH/RU5X/xwgI/8VFxr/LjU7/ysy
+        O/gpMTtjKDA7ACoyOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDhAADA4QRAuNj+0MzpC/yYr
+        L/8TFRf/MTY9/2Rvdv9dZ4b/FBbX/wID6f8FBub/BQbm/wUG5v8FBub/Bgbn/wYG5/8GBub/BQXr/wYG
+        1v9KUIP/Oj85/woMDP82PUH/TFRT/01UYf8ZG8T/AAHu/wID5/8CA+j/AgPo/wID6P8CA+j/AgPo/wID
+        5/8CA+r/AAHo/xITof9PVGX/eX94/2pxc/9KUVX/KCwu/xYWE/8sMjb/Vm+J/26czv93r+v/eLDr/3u0
+        8P96su7/ebDs/3iv6/9+tvH/grnz/3qx6v95r+n/ea/q/3mv6v+Hv/b/jcb6/3yy7f94run/d63o/3et
+        5/97su7/grv0/3217v+CufP/f7fx/3at6f9zrOn/da/u/3Gi1f9efJf/MDlA/xQUEv8lKCj/REpN/0lP
+        Vv9LUFf/RUlS/0NIVv9ESVf/RUtY/0VLWf9GTFr/Rkxa/0VKWP9DSFf/Q0lX/0JIV/9ARVP/P0RN/z1D
+        SP89REv/OD9D/xEUFP8aHR7/OD1G/zg9TP84PUz/NjtK/zU6Sf8zN0f/MTZF/zA1RP8vNEP/LjND/y0y
+        Qv8sMT7/LDI4/0JLVP84PkX/ExUX/yEmKv8xOED/KjE7xywzPBwsMzwAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAA0PEQAKTI+ADA4QlgvNz/zMzlA/xgbHv8bHiH/T1dh/214ev9DSqn/BAXn/wQF
+        5/8FBub/BQbm/wUG5v8FBub/Bgbm/wYG5v8GBub/BAPs/xQVuf9ZYW7/HyIe/xYZGf9ASE3/UFdU/0ZM
+        c/8QEdb/AAHt/wID5/8CA+f/AgPo/wID6P8CA+j/AgPo/wID5/8CA+n/AAHs/woLuP8+Qm7/dntz/3qB
+        gP9dZWn/QEZJ/yEkJP8cHRv/NTtB/1JpgP9slsP/dqvm/4C59v98tfD/e7Ls/3617/99tO3/fLPt/3qx
+        6v94r+n/f7bw/4vF+f+Pyfv/gLfw/4C48P+BuO//d6zn/3as5/93ref/ebDr/3y08P99tfL/dKrl/2mV
+        xP9Ubon/N0BI/xwdG/8aHBv/PEFD/2hvcv9yeHv/TFJX/0hNVP9KT1f/R0xa/0dNW/9HTFr/RUpY/0VL
+        Wf9FS1n/RElX/0FGVP9CR1X/QUdV/0BFT/9ARUv/PURK/z5GS/8cISL/DxIS/zE3PP84PUv/NzxL/zg+
+        TP83PEv/NTpJ/zM4SP8yOEf/MTdG/zA1RP8vNET/LzRD/y4zO/82PET/R1Ba/x4iJv8VFxr/LjQ7/ywz
+        O/opMTpvS3dpACozOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxOEEAMjlCEy82
+        P7M1PEX/KCwx/xQWGP8uMzn/Y211/2dzg/8dIM3/AgLq/wUG5v8FBub/BQbm/wYG5v8GBub/Bgbm/wYG
+        5v8GBuf/AgLn/ygrov9SWVj/DxEP/yEmJ/9FTVH/U1tW/0ZMfv8PEdn/AAHs/wID5/8CA+f/AgPn/wID
+        6P8CA+j/AgPn/wID5/8CA+j/AQLt/wMD0v8jJIf/ZGlu/4aMhP96gYL/W2Nm/zc9QP8dIB//HB0b/y0v
+        MP9NW2r/ZIOi/3Ofzv9+s+n/g7r0/4S++P+Cu/b/f7fy/3207/+AuPL/gLjy/4C48f97su3/icP4/4/K
+        +/99tfH/e7Tx/3y07/9+s+v/c6DR/2F/oP9MXGz/LTAz/x0eHP8dHh7/OT5A/2Joa/9/hYP/eX97/3h+
+        ff9mbG//RUpR/0tRWP9MUlz/SlBd/0ZLWf9FS1j/RkxZ/0VKWP9DSFb/QkdV/0FHVf9CSFL/QkdO/0BF
+        TP8/R03/Jist/wsODf8pLjH/O0FM/zc8S/83O0r/NzxL/zc8S/82O0r/NDlI/zI3Rv8xN0b/MDVE/zA1
+        RP8wNUH/MTc+/0hQW/8yOT//ERMW/yImKv8xNz//KTA5yCoyOh8qMjoAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAADU8QwAnMTwALjdATzA4Qe03PUT/HB8j/xgaHf9JUFn/b3p8/1FZ
+        oP8ICeX/BAXn/wUG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8FBen/BATf/zk+kP9GTEf/Cw0M/y0y
+        NP9IT1X/WWBZ/0VKhv8NDt7/AAHs/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AQLs/wAA
+        5v8NDbH/PUB5/3h9ev+Ok47/fYSF/15laf9ARkn/KSst/xwcG/8lJiT/Nzo8/0dSXP9ieI//dpay/3Sc
+        wP93o9L/e6zh/4C06/+EuvD/h73w/3+06/+EuOv/hrba/3Gbwv9rjK//ZX2W/0tXY/82Ojz/IyMi/xgZ
+        F/8lKCj/P0RH/2Vrbf+Eion/hoyE/1tfcP8eIIz/PUCF/32DfP9XXmL/RUtR/0pPVv9ITVn/SE5c/0ZL
+        WP9FSlj/RUpY/0NIVv9CR1X/QUdR/0JITv9ARk3/P0ZN/y4zNv8NDw//ISQm/zxCTP88QVD/OD1M/zc8
+        Sv82O0r/NjtJ/zU7Sf80OUj/NDlH/zE2Rv8wNET/MDVD/zA1PP88Qkv/Rk9X/xkcH/8XGRz/Mjg//y41
+        PvcsMzxnRAAAACw1PQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA3
+        QAAwOEELLzY/oTY9Rf8vNDr/FRca/ygtMf9hanP/cnyE/zM4v/8CA+n/BQbm/wYG5v8GBub/Bgbm/wYG
+        5v8GBub/Bgbm/wYG5v8FBer/CAjT/0dMgv82OzT/CwwM/zU7Pf9NVVn/XWNd/0hNi/8PEdr/AAHs/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPp/wEB7v8BAdv/FBWd/0dKdv9/g4D/mJ2W/42S
+        kv9yeXv/Vlxf/zxCRf8mKSr/IyQj/yEhH/8jIh//MTM0/z5CRf9GTFL/SVBX/0xUW/9OVlv/SVBX/0lR
+        V/8+Q0f/MjQ2/yMiIP8eHRv/ISIh/yUoKP89QkT/WV9h/3p/gf+SlpP/jpOL/2dreP8sLoX/Bge//wAA
+        7P8LDMn/YGR4/3h+ev9NU1n/SE1U/0tQWf9MUV7/SU5c/0dNWv9FSlj/Q0hW/0NIU/9ESVD/P0RK/z5F
+        TP8yODz/DhES/xkdHf88QUn/PEBP/zo/Tv86P07/Oj9O/zg8S/82Okn/NDlI/zQ4SP8yN0b/MjZG/zA1
+        Rf8wND7/MzlA/0tTXf8uMzj/ExUX/ycrMP8xOED/KjI7uS01PRYsNDwAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMzlCAC83QQAwOEE6MDdA4Dk/R/8hJCj/Fhkb/0BG
+        Tf9ven//anST/xkc2P8DA+j/Bgbl/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8EBOv/Dg/I/0tS
+        d/8rLyj/DxAQ/zpAQ/9NVlr/YWhh/1BVif8SE9r/AAHt/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID6f8AAez/AQLW/xUWpP9ERn3/eHuD/5uflf+hp6D/kpiW/4CGiP9nbXD/Ullb/0dN
+        UP85PD7/LC8v/ycpKf8hIyL/GhsZ/xobGv8hIiH/JScm/ysuL/86PT7/R0xP/1JXWv9qcHL/hoyN/5ec
+        mf+eopr/io2I/19ifP8qLIj/CQm//wAA5v8BAuz/AgPo/wAA6/8iI6b/eH14/2hvcf9JTlX/TVJZ/0tQ
+        Wv9JTl3/SU5c/0VKWP9FSlX/RUpR/0JHT/9AR03/Njw+/xIUFf8WGRr/OT5F/z5CUf87P07/OT5N/zk9
+        TP84PUz/OT5M/zg9S/81Okn/NTlI/zI2Rf8wNUX/MDVB/zE3PP9FTVb/Q0pR/xgaHf8bHyL/NDtC/y00
+        POwsMztOLDU9ACwxOgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAMDY/ADE4QAQuNT2ANTxE/DY7Qv8ZGx7/HyIl/1dfaf95hIj/VFyp/wkK5f8FBeb/Bgbm/wYG
+        5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8DBOz/EhPD/1BWdP8rLyj/DhAR/zpBRP9OVlv/ZGtl/1ld
+        if8bHdH/AADs/wEC6P8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+r/AAHr/wEB
+        3f8KCrf/Ky2W/1JVf/9+gYr/naGY/6irof+rr6n/oqel/5idnP+NkpL/hoyM/4OIif+AhYb/foSF/4KH
+        iP+HjY3/jpST/5menP+lqqb/q6+n/6Clmv+PkpL/aWyB/zs9gv8XF6P/BATK/wAB5/8BAuz/AgPo/wID
+        5/8CA+f/AQLp/wID3v9ER4X/foR7/1dcYf9JT1b/S1FY/0dNWf9GS1n/R0xV/0hMVP9DSE7/P0ZN/zk/
+        Q/8VGBj/ExUV/zg8Q/9ARVL/PUJQ/ztATv87QE7/Oj9N/zk+TP84PUv/NzxL/zc8S/81Okn/MjdG/zA1
+        Q/8wNTz/PENL/09WYP8iJin/FRcZ/y40Of8yOUL+LDM9ljA4PgkuNj0AAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALzY/AC82Px8wNz/COUFJ/y0x
+        Nf8WFxr/LjI3/2hyfP96hYz/OT2+/wQE6P8FBeX/Bgbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgfm/wYH
+        5v8EA+r/Fhe8/1JXcP8lKCH/Dg8Q/zlAQv9NVVr/ZWtm/2dsf/8uL8H/BAXq/wAB6v8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPo/wEC7f8AAOf/AQHc/wkKuv8dHp//NziR/1NV
+        h/9ucIL/goSP/5eZm/+hpKX/o6eo/6eqqf+nqqn/o6an/56hov+OkZX/eHuI/2Fjgf9ISYz/KSuV/w8Q
+        p/8FBcz/AADi/wAB7P8BAur/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AQHs/w8Qxf9jZ3f/dXp3/0xS
+        WP9MUln/S1BY/0dMVf9HTFL/QkdO/0BHTP82PD//ExYW/xMVFP84PEH/QUZT/z1BUP88QU//PUJQ/zxB
+        T/86P03/ODxL/zc7Sv83PEv/NztK/zU6Sf80OEj/MTY//zU7Qv9OVmD/Mjc8/xMVF/8mKS3/OD9H/ywz
+        O9MtMzwsLDI8AEE8RgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAyOUEALzY+ADE4P08xOUHqPkRL/yIlKP8XGRv/Q0lQ/3R+hf90fpP/JinO/wIC
+        6f8GBuX/Bgbl/wYG5v8GBub/Bgbm/wYH5v8GB+b/Bwfm/wcH5v8EA+n/FBW//1BUd/8sLyj/DhAP/zU7
+        Pf9LU1n/Ymhl/3R5fP9HSq//DxDh/wAB6/8BAuf/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+n/AQLr/wAA7v8AAOX/AADX/wMD0/8ICcX/EBGt/xUWrf8WF6r/Fxij/xcZ
+        o/8WF6r/ExSs/wwNsv8GBs3/AQHT/wAA3P8AAOr/AAHu/wEC6v8CA+j/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AADq/yUnof93fHf/Ymlr/0VKUf9KT1b/SE5U/0JHTv9AR03/NDo8/xIV
+        FP8TFxb/OT1D/0NHVP8/RFH/PUJQ/ztATv88QU//PUJQ/ztATv86Pkz/NzxK/zU6SP80OUf/NDhI/zM4
+        Qv80OT//SlJc/0NJUf8XGRv/Gx0g/zc8Q/8xOEDzLTM7Yy4tMwEtMzsAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzOkIANDtDBzE4
+        QYc3Pkf7O0BH/xocH/8dICL/U1li/3yGif9sdJz/GBna/wID6P8GBuX/Bgbl/wYG5v8GB+b/Bgfm/wcH
+        5v8HB+b/Bwfm/wcI5v8EBev/FBbJ/1FWf/8uMin/DQ4N/zE1N/9KUlf/XGJk/3uAeP9obJn/JijQ/wMD
+        6v8AAen/AgPm/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID
+        5/8CA+n/AQLq/wEC6/8BAez/AAHs/wAB7P8AAez/AAHs/wAB7P8AAez/AQLr/wEC6/8CA+r/AgPp/wID
+        5/8CA+b/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5v8BAur/AgPi/0hL
+        jP98gX3/VVpf/0VKUf9ESlH/Q0lP/zA1Nv8OEBD/Fxoa/zxBR/9DSFX/P0RS/z9EUv8/RFL/QEVT/z9E
+        Uv88QE//Oj9N/zs/Tv85Pkz/NjtJ/zQ4R/80OUX/NDlA/0dPV/9QV2H/ICMm/xUXGf8xNjv/NDpC/iwz
+        O5wtNj4NLTU9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1PEYANj1GHTQ7RLo+Rk7/MjY7/xYYG/8nKi7/YGhy/3+J
+        i/9bYaj/DQ3i/wQE5/8GBuX/Bgbl/wYH5v8GB+b/Bwfm/wcH5v8HB+b/Bwjl/wcI5f8FBev/EBHO/z9D
+        g/8+Qjr/EBIO/yYqK/9HTlL/VVxh/3V7df+AhI3/TlG1/xcY3v8AAer/AQHo/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5v8CA+b/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8BAuf/AADq/wUG6P8sLs3/aGyT/3p+ff9ZXmT/RUtT/0JITP8pLS7/DA8O/x0g
+        If9BRUz/RUpX/0FGVP9ARFL/P0RS/z5DUf8/RFL/PkNQ/zxAT/87P07/Oj5N/zk+TP85PUz/NjpH/zM4
+        P/9AR0//VVxl/ysuMv8UFxj/LTE2/ztCSv8uND3MLTM8KS00PQAyKSwAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADY9
+        RwAyO0IANDxEOzU8RdlBR0//LDA0/xYYGv8xNTr/Z294/36IjP9LUbP/CAjk/wQE5/8GB+X/Bgfl/wYH
+        5f8HB+b/Bwfm/wcH5v8HCOb/Bwjl/wcI5f8FBur/CQnb/zc5m/9KTk3/FhkR/xodHf9ARkj/UFhe/2du
+        b/+IjYb/f4Of/0NGxf8QEeL/AADq/wAB6P8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID5v8BAuf/AADp/wUG6P8nKNT/X2Ku/4OH
+        iv90eXb/UFZd/0RLUf8+Q0b/HCAg/wwODf8qLS//R0tU/0hNW/9GTFn/Q0dV/z9EUv89QU//PEFP/z9E
+        Uv89Qk//PEFO/ztATv86Pkz/OD1L/zg8Sv83PEP/PEJK/1RcZf80OT7/Fhga/yYpLP89REz/MjlC5jA3
+        QFA5PVIAMDc/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADU8RAA3PUUCNTxEYDc+R+1CSFD/Jikt/xca
+        HP88QUf/c3yE/4KLkf9HTLf/Bgfk/wQF5v8GB+X/Bgfl/wcH5f8HB+X/Bwfl/wcI5v8HCOb/Bwjl/wgI
+        5f8HB+n/BATj/yQlrv9IS2P/JSgf/w8QDv8wMzX/TVRZ/1hgZv92e3r/k5iS/4KGqv9ISsX/FBTg/wID
+        6f8AAOj/AQLn/wID5v8CA+b/AgPm/wID5/8CA+f/AgPm/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5v8CA+b/AgPm/wEC
+        5v8AAef/AADp/wgI5v8qK9b/ZWe2/4yPl/+Dh4D/YGVo/0pRWP9ES1D/MTU3/w8QEP8VFhf/OT1A/09V
+        XP9ITVr/RUpY/0VKWP9FSlj/QkZU/z5CUP8/Q1H/P0NR/z5CUP89QU//Oj5N/zk9TP85Pkz/OT1G/0BF
+        Tf9aYWv/QUZN/xYYGv8eICT/PENJ/zU8RfYxOEB2MzhCBTI4QQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAADY9RQA4P0cINDtEgzlASPhARkz/ICMm/xocH/9JT1X/fISN/4aQlv9GS73/Bgfm/wUF
+        5v8HB+X/Bwfl/wcH5f8HCOX/Bwjl/wcI5f8HCOX/CAjl/wgI5f8ICOf/BATp/xITy/8/Qor/P0FA/xMU
+        Dv8eISH/QUdJ/1FZX/9fZmz/gIWC/5ygmP+Rk6//X2HI/y4v1v8LDOX/AQLo/wAA6P8BAef/AQLm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+f/AgPn/wID5/8CA+f/AgPm/wID5v8CA+f/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AQLm/wAB5/8AAOj/BAXn/xUW4P9BQtD/dXe3/5aZn/+MkIj/aGxu/01T
+        Wv9HTVP/PkJF/x8iIv8NDgr/RUhG/6Cnr/9mbHX/SE1U/0lOV/9GS1j/RUpX/0RJV/9ESVf/QEVT/z5C
+        UP88QE7/PEBO/zxBT/87QE7/OT5M/zk+R/9ARk3/WmJs/0hOVv8aHR//Gx0g/zk+Rf83Pkb8LzY+mDM5
+        QRAyOEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADU7RAA2PEUSMzlCnTtD
+        S/w+Q0n/HyEk/x0fIf9LUVj/foeP/42XoP9ITsf/Bgfk/wUF5v8HB+X/Bwfl/wcI5f8HCOX/Bwjl/wcI
+        5f8HCOX/CAjl/wgI5f8ICeX/Bgfq/wgJ4P8qK67/P0Fe/yQmHf8TFRD/KSws/0ZMUP9TW2L/XmZs/4GG
+        hP+hpZv/qKuv/4yOwv9XWdL/MTHc/w8P4/8DBOj/AADn/wAA5/8AAef/AQLn/wEC5v8CA+b/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CAub/AQLm/wAB5/8AAOf/AADn/wEC6P8HCOf/Gxzh/z4/
+        1v9ucMT/lpmz/6Klov+OkYv/aG1w/05UXP9KUVf/RUtO/ysuL/8SFA//GxwU/yUmS/9MT57/w83Y/5+p
+        tP9MUlj/SE1U/0dLVv9GSlj/RUtX/0VKV/9CR1X/QUVT/z9DUf9ARFL/PkNR/zxBTv89Qkr/QkhP/1ph
+        a/9KUFf/Gx0g/xkbHv84PEL/PURN/zE3QbIxN0AdMThAADIVHwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAQERGADM5QgA0OkMfMzlBsj9FTv46P0X/Gx0g/xwfIf9MUln/goqS/5Ca
+        of9PVML/CAjl/wUE5f8HB+X/Bwfl/wcI5f8HCOX/Bwjl/wcI5f8ICOX/CAjl/wgJ5f8ICeX/Bwjn/wUG
+        6f8PD9L/LS+T/0JFUf8dHhT/ERIO/ywuLv9JT1H/VV1i/1piaP9zeHv/lpuW/7G0rP+ytLr/nJ7I/3d5
+        0f9QUdn/MzTf/xwd4v8MDeT/BQbm/wAB6P8AAOf/AADn/wAA5/8AAOf/AADn/wAA5/8AAOf/AADo/wIC
+        6P8HB+X/EhPj/yYn4v86O9z/YGHT/4mLyP+jpcD/rrGt/6Glnv+Ch4X/YWZr/05VXP9LUlf/RUtN/y8y
+        M/8WFxP/CgwE/yMlNP8nKI3/DQ3T/wcH2/9scbD/v8nN/3d/if9DSU//SU1V/0VJVv9CR1T/QkZU/0FF
+        U/9ARVP/PkNQ/z5CUP8+QlD/PEJK/0NJUP9eZ3D/U1lh/x8hJP8ZGh3/NTo//z1ETP8zOULEMzpCKzE7
+        QgA2OUIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOUBGADI3
+        QQA1O0MrNTtDvkFIUP88QUf/HR4h/x0gI/9MUVn/gImR/5egpv9XXcX/Cgvj/wME5v8HCOX/Bwjl/wcI
+        5f8HCOX/Bwjl/wgI5f8ICOX/CAjl/wgJ5f8ICeX/CAnl/wgI6P8HB+j/FxjI/ycof/8lJzX/ICIX/xka
+        Ff8tLy7/Q0dJ/1RbX/9WXmT/YWhv/3R5fv+SlpT/rrGs/77AvP/AwsP/sLLO/6Ci1P+Rk9n/fH/X/3Fz
+        3P9qbOD/W13f/0xM3f9MTd7/WFne/2hq3v9zddf/goTX/5SW1v+kptD/t7rH/72/vf+ztrH/naCb/4KH
+        h/9mbHL/VFxj/1BYXv9OVFn/QUVI/ysuLP8UFhD/DA0F/w8PIf8OD2r/Cw3A/wcH6f8HB+j/BQXo/xkZ
+        xv+VnLL/rba+/1hdZf9DR03/RkpT/0BGU/9ARFL/PkJQ/z1CUP8+QlD/PUJP/z5CTP9FS1P/X2dx/1BW
+        Xf8hIyf/GBoc/zQ3PP89Q0z/MTc/0DE2PjohHzEANT1CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOT9JADQ5QAA3PUYxNz1GxEdNVv89Qkj/HR8i/x4g
+        I/9KUFf/h5CY/56nrf9obsP/Fhjg/wID5v8HCOT/Bwjl/wcI5f8ICOX/CAjl/wgI5f8ICOX/CAjl/wgJ
+        5f8ICeX/CQnl/wkJ5f8HB+n/Bwfn/xESyf8yNJX/MTNK/xITEP8XGA//Jick/z5BQf9OUlT/V11h/1Zd
+        ZP9ZYGf/Y2tx/3R7gP+Kj5D/m5+c/6uuqP+3urH/v8G6/8PFwP/Fx8T/xsjH/8XHx//Fx8X/wcW//7q9
+        tv+ztq7/pqqm/5OXl/+Ahon/bHJ4/1xiaf9TW2L/TlVb/1JYW/9KT1H/OTw9/yEiIP8QEQn/DQ8K/xAR
+        LP8QEHT/CwzC/wgJ6v8HCOr/CAjl/wgI5f8ICOX/AwPl/zo8sf+utrv/jZWf/0RJT/9ESE7/Q0hS/0JH
+        Vf8/RFH/PUFP/z1BTf8+Qkr/RktT/2JqdP9PVFz/HyEk/xocHv81OT7/QEdO/zE3P9QxNz9DLjs8ADA4
+        PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAOT9IADQ7QgA3PkUyNz5GxEZMVf9ARkz/ISMm/x4gI/9MUlj/ho+Y/6Cqrf9/h77/JinZ/wMD
+        5v8GB+X/Bwjk/wgI5f8ICOX/CAjl/wgI5f8ICOX/CAnl/wgJ5f8JCeX/CQnl/wkJ5f8JCeb/Bwjq/wYH
+        6P8OD9L/EBGY/yIjYv8fICr/GxwW/ykqIf83NzL/SktL/1hbXP9YXWD/Vl1g/1ZdYf9VXGL/UFhf/1Nb
+        Yv9XXmX/WmFo/15mbP9haG7/YGdt/19mbP9cY2v/WGBo/1RbY/9QWF//U1ph/1heY/9SWFz/UldZ/1JV
+        V/9BQ0L/KSol/x4fF/8SEwz/EhMe/xESTv8PD5T/CwvR/wgJ6/8ICev/CAnl/wgJ5f8ICOX/CAjl/wgI
+        5P8HB+f/BgfY/2dtp/+vuLr/aG94/z5CR/9DSE//QUZS/0FGVP9BRlD/QEVN/0tRWf9haHH/S1BX/x4g
+        I/8cHiH/OT5E/0FHT/8zOUHTMTc/RDhJSgEzO0EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOD5GADA2PgA1O0MwOD5Gv0hP
+        WP5HTFL/JCcq/x0fIv9AREr/foWQ/6Grrv+Rmbj/PUHU/wcH5f8EBeX/CAjk/wgI5P8ICOT/CAnl/wgJ
+        5f8ICeX/CAnl/wgJ5f8JCeX/CQnl/wkJ5f8JCuX/CQrl/wgJ6P8ICO7/CAni/wwNv/8TE4v/GhtZ/yUm
+        PP80NC7/QEA4/1FQSP9jY1z/Z2dj/21ubP9zdnb/c3Z3/25yc/9uc3X/bHJ1/25ydv9rcHP/a3By/2tw
+        cv9rbnD/aWxt/2dpav9eX13/U1RQ/01NR/88OzP/Kysi/yMkHf8aGzD/FRZS/xARh/8MDcH/CQri/wgI
+        7v8JCen/CAnl/wgJ5f8ICeX/CAnl/wgI5f8ICOX/CAjl/wgI5P8EBOn/GRvD/46UqP+aoqn/TVJZ/0FG
+        S/9BRU7/QERO/0NJT/9TWmP/ZGt0/0FFS/8bHR//HB4h/zs/Rf9DSVL/NDpCzjI4QEE4PkgBMzlCAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAO0FJADo/SQA7QUkqO0BKskhPWPxJT1b/KCsu/xsdH/81ODz/cnqD/52m
+        q/+krLr/YWbO/xYY4P8DA+b/Bwfk/wgI5P8ICeT/CAnl/wgJ5f8ICeX/CAnl/wkJ5f8JCeX/CQnl/wkK
+        5f8JCuX/CQrl/wkJ5P8JCeb/CAnq/wgJ7P8JCeT/DAzK/xITqP8dHoj/Kytp/z09XP9TVGL/ZWVo/3V1
+        a/+Dg3f/jIuB/5CPhv+RkYf/kZCG/42Ng/+KioH/g4N5/3p5b/9ubWL/X19U/09PT/9AP07/Ly9N/yIi
+        Xf8YGYH/ERKm/wwNyP8JCeT/CAns/wkJ6v8JCeb/CQnk/wkJ5P8ICeX/CAnl/wgJ5f8ICeX/CAjl/wgI
+        5f8ICOX/CAjk/wcI5f8CA+T/Oz6o/6ixsv+Hj5j/QkZM/z9DSP9ESlD/XmVu/2Ztdv83O0D/GBoc/yEj
+        Jv8/Q0r/QUdP/jU7Q8I0O0M3TmNsADY9RQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQkVRADRB
+        QwA8Q0ogPURNnUdOV/hQVV3/MzY6/xweIf8qLDD/YGZu/5Wep/+uuLv/kpnM/zc62/8FBuX/BATl/wgI
+        5P8ICeT/CAnk/wgJ5P8ICeT/CAnl/wkJ5f8ICeX/CQnl/wkJ5f8JCeX/CQnl/wkJ5f8JCuT/CQrk/woK
+        5f8KCun/CQnr/wgJ6P8ICeX/CQrW/w0Owv8TE7P/Hx+p/ysro/81NZL/OzuP/0JCkv9HR5b/RkaW/0FC
+        kv85Oov/MDGM/ycnnv8dHaX/EhOt/w0Owf8KC9b/CQrm/wkK6f8JCuv/Cgrp/woK5f8JCuT/CQrk/wkJ
+        5f8JCeX/CAnl/wgJ5f8ICeX/CAnl/wgJ5f8ICOX/CAjl/wgI5P8HCOT/Bwjk/wUG5v8GBtb/ZGmm/6aw
+        tf9lanP/TVNc/2pyfP9cYmr/LC80/xocH/8rLjL/SE1V/0FHUPs2PESwNTtDKicxOQA7P0cAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAS1FPAD9FTwBCSFARPURNg0RKU+5UWmP/PkFH/x4g
+        I/8hIyb/TFBX/4WNl/+ttrr/q7PC/2Nozv8bHOD/AwLl/wYG5P8ICeT/CAnk/wgJ5P8ICeT/CAnk/wgJ
+        5P8ICeT/CAnl/wgJ5f8ICeX/CQnl/wkK5f8JCuX/Cgrl/woK5f8KC+T/Cgvl/woL5f8KC+f/CQrp/wgJ
+        6v8HCOz/Bgbp/wYG4/8FBeL/BQbh/wUG4v8FBuL/BQbi/wYG4v8GBuT/Bwfq/wgI7f8ICev/CQrp/woK
+        5/8KCuX/Cgrl/woK5P8KCuT/Cgrl/wkK5f8JCuX/CQnl/wkJ5f8JCeX/CAnl/wgJ5f8ICOT/CAjk/wgI
+        5P8ICOT/CAjk/wcI5P8FBuT/AgLl/xka3/9nbLb/oamu/4ePmv9sc33/UFVb/yIkJ/8bHB//NTg9/0tR
+        Wf9AR1D1OkBJljg/Rxw6QkoANz1FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAD5ETAA+RE0JPURMYEJJUdlQVl//SExS/ygqLv8cHR//MzY6/2xxev+bo6v/sbm8/5ui
+        yf9SVtr/ExPj/wMD5P8GB+T/CAnk/wgJ5P8JCeT/CQnk/wgJ5P8ICeT/CQnk/wkJ5P8JCeT/CQnl/wkK
+        5f8KCuX/Cgrl/woL5f8KC+X/Cgvl/woL5f8KC+T/Cgvk/woL5P8LC+T/Cwvl/wsL5f8KC+X/Cwvm/wsL
+        5f8LC+X/Cgvl/woL5f8KC+X/Cgvk/woL5P8KC+T/Cgrk/woK5f8KCuX/Cgrl/woK5f8KCuX/CQrl/wkK
+        5f8JCuX/CQnk/wkJ5P8ICeT/CAnk/wgJ5P8ICOT/CAjk/wgI5P8HB+T/AwPl/xIT4/9NUdT/kJa9/6Or
+        sP+Kkpz/Zmx0/zU4Pf8aHB7/IiQn/z1CR/9MUVr/PURM4zk/SG8/RU0OPUNLAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAENKUgBMVFsCPkVMOz5E
+        TLpLUlv6VFph/zo9Qf8dHyH/IiQm/1BUWv+Ei5X/rLW5/7zEyf+Rl8//QEPb/w4P4v8DBOT/Bwfk/wkJ
+        5P8JCeT/CQnk/wkJ5P8JCeT/CQnk/wkJ5P8JCeT/CQnk/wkK5P8KCuX/Cgrl/woL5P8KC+T/Cgvk/woL
+        5P8KC+X/Cgvl/woL5f8KC+X/Cgvl/woL5f8KC+T/Cgvk/woL5f8KC+X/Cgvl/woL5f8KC+X/Cgvl/woL
+        5P8KC+T/Cgvl/woK5f8KCuT/Cgrk/woK5P8JCuT/CQrk/wkK5P8JCeT/CQnk/wgJ5P8ICeT/CAnk/wgI
+        5P8GBuT/AwPl/w4P4v9BRNz/jZPO/7G6vv+fp6z/eoKK/05TWv8jJSj/Ghsd/zAyNv9MUVj/R0xW/DpA
+        SMc7QUlKQ0lTBD9ETgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEJIUAAaICsAPkRLHDxCSodDSVHrVFpi/01RV/8qLDD/Gx0g/y8y
+        Nv9jaHD/l5+o/7a/wv/AydP/mJ/d/0hL3/8TE+P/AwPk/wYG5P8ICOT/CQrk/wkK5P8JCuT/CQnk/wkJ
+        5P8JCeT/CQrk/wkK5P8KCuT/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgrk/woK5P8KCuT/Cgrk/wkK
+        5P8JCuT/CQrk/wkJ5P8JCeT/CAnk/wgJ5P8FBuT/AwPk/xIT4v9DRdz/i5HQ/7W9xv+qsrX/ho2V/1pf
+        Zv8xNDj/Ghwf/yIlKP9DR0z/UVZe/0JIUfE5PkeYNz1EJQAAAAA5P0kAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAA9QkkAP0NLCDk+Rk47QUnDT1Ve+lpfZ/9BREn/JCcp/x8hJP86PUL/cXd//6iwu//L1Nr/0trj/6mv
+        5v9bX+b/ICHk/wUF4v8CAuP/Bgfk/wkK5P8JCuT/CQrk/wkK5P8JCeT/CQrk/woK5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woK5P8KCuT/Cgrk/woK5P8JCuT/CQrk/wkK5P8JCuT/CQnk/wYG5P8CAuP/BAXj/xsc
+        4f9ZXd7/nKPY/7vCyv+0vMD/k5qj/2ludv85PEH/HiAi/x8iJf83Oj7/UFZd/01TW/07QUnNNz1FXD1F
+        TQs4PkgAZH9yAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8QUkAJRUeAD1CSh49REyARk1V4Vdd
+        Zf9aXmb/Oz5C/yEjJv8lJin/REhN/3N4gv+rs73/z9fc/9rj6v/K0vH/jJDu/0dK6P8UFeL/BQXi/wID
+        4v8GB+P/CAnk/woK5P8JCuT/Cgrk/woK5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgrk/woK5P8KCuT/Cgrk/woK5P8KCuT/Cgrk/wkK
+        5P8ICeT/Bgfj/wID4/8FBeL/FBXi/0FE4v+Eien/uL/f/8nR1/+5wcX/lp2m/291ff9BREn/ISIl/x0f
+        Iv80Njv/UFRa/1NZYf9BR0/oOT9GjTk+RiY9RkwAOT9HAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAREtTAEhQVwVARk86QEZOoUtSW+5eZG3/Wl9l/zw/RP8iJCj/IiQo/0BC
+        R/91eoP/n6ax/8bO1v/g5+z/4+n5/77D9P+EiO7/U1Xp/yEi4/8NDeL/BATi/wQE4v8GBuP/CAjj/wkK
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgrk/woK
+        5P8KCuT/Cgrk/woK5P8KCuT/CAjj/wcH4/8EBOL/BAXi/wwN4v8fIeX/Skzo/32A6P+7wO3/1dzr/9Tc
+        3v+7w8r/k5ul/2txef89QUX/ISQn/x8hJP8yNTn/TVJX/1heZv9HTVXzO0FIsDg+RkY5P0cIOT9GAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAS1NfADk9
+        QABESlIMPkRMT0JJUbNUWmTyYmlx/1tgZ/8+QUb/Jigr/yEjJv80Njr/VVlg/4qQmv+2vsn/2+Pr/+Xs
+        8f/r8Pv/ztL4/6ir9f9vcO3/TEzo/y8w5v8TFOP/CQri/wYG4v8EBOL/BAXi/wYH4v8HB+L/Bwji/wgI
+        4/8ICeT/CAnk/wgJ4/8ICeP/CAnj/wcI4/8HB+P/Bgbj/wQE4v8DA+L/BQbi/wkJ4v8QEeL/KCnl/0ZI
+        6P9tcOz/pajy/8jN9//h5vb/3OLo/8vT2v+rs73/g4mS/1dcYv82OT3/ICIl/yAiJf81ODz/VFhe/1th
+        af9MUlv2PENLvjg+Rlw7QUcRDQoQAD1DSgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAElTVwAAAAAARUtSEkBFTVdDSVGzUlhh8GVr
+        c/9kaXD/SU1R/zI0N/8hIyb/Jykt/0NFSv9kaXD/kZmi/7a+x//X3+b/8ff5/+7y+f/t8fv/3d/8/7q7
+        9v+envP/fH3w/2Nl7f9GSOr/MzTm/y8w5v8qKub/ICDl/xgY5P8XGOT/Fhfk/xYX5P8ZGeT/JCTl/y4v
+        5v8yM+b/QEDo/1ha6v91d+3/mpvy/7O09v/T1vr/5+z6/+bs9P/i6fD/ydHa/6y0vv+NlJ3/Zmtz/0RH
+        Tf8nKSz/ICIl/ystMf9ER0z/WmBm/1xiav9MUlr0PUNMvzpAR2M8QkoYXGBoAEBFTQAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAABESFEAS0dTAENIUBBBR09NRkxUpVBWXuViaHH9Z210/15jaP9AREn/LC4y/yEj
+        Jv8mKCz/OTxB/2Fmbf+Bh4//o6u0/8PL0//Q2N7/4ujr//j7/P/3+v7/8fP6/+vt+//n6Pv/5uf7/9/g
+        +//P0Pr/w8T5/8HD+v/Awvr/v8H5/8TF+P/W1vv/5eb8/+fo+//q6/v/7/D6//P3+//0+Pn/4ejs/8rR
+        2f+7xM3/nKOu/3uAif9cYWf/PD9D/yYoK/8hIyb/KSwv/zw/Q/9cYGb/ZWpy/2BncP5QVl/qRk1Vrj5E
+        TFg8QkoWUVVXAEBFTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR01VAAAA
+        AABDSVEKREpTNkNJU4BMUlzJWmBp8mxye/9pbnb/XWFn/0ZJTv8vMjX/KCkt/ycpLP8yNDf/Oj5C/1RY
+        Xf9yeH//jpSb/5+lrf+or7b/xMvV/9Xb4//b4eX/2+Hm/9/k6f/a3+L/19ve/9fb3v/b4OP/4ufs/+Tq
+        7//e4+j/1t3j/8fP2f+qsbr/mqCq/4qQmP9yeH//V1tg/zg7P/8tMDP/JScq/yIlKP8sLjH/QURI/1tg
+        Zv9la3L/a3F7/1tha/VOVV3QQUdPikJHTz5FSlMNV2dpAElRVwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPVV0AVlxjAkZMVRlHTVZPSE5YlVJY
+        Yc9dY2vyZGpz/nF2fv9nbHP/XGBm/1BUWP85Oz//LS8z/yosL/8qKy7/NDY6/z5AQ/9JS0//TVFV/1ld
+        Yf9gY2n/Z2pw/2pudf9wdHv/cHR7/21xeP9manH/YWVr/1RYXP9ITFD/RUhL/zs9Qf8xMzf/Jyks/yYp
+        K/8qLC//MzY6/0lMUP9VWF7/YWVs/3B2fv9obnf+X2Vv9VNZY9RFTFSdREtTWENKUx9KUFkER05XAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAbXN8AENJUQBRV2AFRUxUH0VLVE5JT1iJTFNbvl9mb+NtdH74bnR+/3l/
+        h/99g4r/bHF4/1hcYv9VWV7/U1Za/0tNUf9AQkb/NDU4/zU3Of82ODr/Njg6/zc4O/82Nzr/NDU4/zM0
+        OP8xMzX/MDE1/zk7P/9ER0v/UFNY/1NXXP9XW2D/am51/3h9hP91e4P/anB5/2VsdfpaYWrmTFJbw0hO
+        V5FDSVJWQkhRJEdOVQc3NUkASFFWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAB5f40AAAUAAFRaYANLUVgSR01VM0ZMVVxLUluKU1litFdeZ9RjanPob3aA9HZ9h/xyeIH/dnuD/3uB
+        iv91e4L/e3+H/4CFjf+Ch4//hImR/4SJkP+Cho7/gIaO/3uAiP91e4L/eH6G/3N5gv9zeoP/eYCK/XJ5
+        gvVja3TqVl5n11FXYbhKUFmQREtTYUJIUDhHTVUWRk5VBF9YagBLUFkAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkd3MAQURQAEtS
+        WgRMU1sOT1ZfIEtSW0FJT1hgSVFafktSWpxSWmKzWV9pxVtibNNcYmzgXWRv6l9mcPFgZ3H1YGdy9V9n
+        cfJeZm/rXmVu4V1lbtVZYGnHVFpktU9WX59NVFyCS1JbY0xSXEVOVV0jTVNcEFBVXgWimqMAXF9oAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAP///////8AAAAH///////////////wAAAAAH//////////////AAAAAAAP/////////
+        ////AAAAAAAA/////////////AAAAAAAAB///////////+AAAAAAAAAH//////////+AAAAAAAAAAf//
+        ////////AAAAAAAAAAD//////////AAAAAAAAAAAP/////////AAAAAAAAAAAA/////////gAAAAAAAA
+        AAAH////////wAAAAAAAAAAAAf///////wAAAAAAAAAAAAD///////4AAAAAAAAAAAAAf//////8AAAA
+        AAAAAAAAAD//////+AAAAAAAAAAAAAAf//////AAAAAAAAAAAAAAB//////AAAAAAAAAAAAAAAP/////
+        gAAAAAAAAAAAAAAB/////4AAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAD////+AAAAAAAAAAAAAAAA
+        f////AAAAAAAAAAAAAAAAD////gAAAAAAAAAAAAAAAAf///wAAAAAAAAAAAAAAAAD///8AAAAAAAAAAA
+        AAAAAAf//+AAAAAAAAAAAAAAAAAH///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAH//4AAAAAA
+        AAAAAAAAAAAB//8AAAAAAAAAAAAAAAAAAP//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAAf/4A
+        AAAAAAAAAAAAAAAAAD/8AAAAAAAAAAAAAAAAAAA//AAAAAAAAAAAAAAAAAAAH/gAAAAAAAAAAAAAAAAA
+        AB/4AAAAAAAAAAAAAAAAAAAf8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAA/gAAAAAAAAAAAA
+        AAAAAAAH4AAAAAAAAAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAA
+        AAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
+        AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAA
+        AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
+        AAHAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAPgAAAAAAAAAAAA
+        AAAAAAAH4AAAAAAAAAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAAAAAP8AAAAAAA
+        AAAAAAAAAAAAD/gAAAAAAAAAAAAAAAAAAB/4AAAAAAAAAAAAAAAAAAAf/AAAAAAAAAAAAAAAAAAAP/wA
+        AAAAAAAAAAAAAAAAAD/+AAAAAAAAAAAAAAAAAAB//gAAAAAAAAAAAAAAAAAAf/8AAAAAAAAAAAAAAAAA
+        AP//AAAAAAAAAAAAAAAAAAD//4AAAAAAAAAAAAAAAAAB///AAAAAAAAAAAAAAAAAAf//wAAAAAAAAAAA
+        AAAAAAP//+AAAAAAAAAAAAAAAAAH///wAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAA////gAAAAA
+        AAAAAAAAAAAf///8AAAAAAAAAAAAAAAAP////gAAAAAAAAAAAAAAAH////8AAAAAAAAAAAAAAAD/////
+        gAAAAAAAAAAAAAAB/////8AAAAAAAAAAAAAAAf/////gAAAAAAAAAAAAAAP/////8AAAAAAAAAAAAAAP
+        //////gAAAAAAAAAAAAAH//////8AAAAAAAAAAAAAD///////gAAAAAAAAAAAAB///////8AAAAAAAAA
+        AAAA////////wAAAAAAAAAAAA////////+AAAAAAAAAAAAf////////4AAAAAAAAAAAf/////////AAA
+        AAAAAAAAP/////////8AAAAAAAAAAP//////////wAAAAAAAAAP///////////AAAAAAAAAP////////
+        ///8AAAAAAAAP////////////wAAAAAAAP/////////////gAAAAAAf//////////////AAAAAA/////
+        ///////////AAAAD////////KAAAAMAAAACAAQAAAQAgAAAAAAAAQAIAEwsAABMLAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAD///8ALTc+AEFKUAMuOD8UHiYuJBcgKTUXICZKGyQsYx4nLoIgKTCaHSYtsRghJ8UYICfZGCIo6hgg
+        KPkXHyX/Fh4l/xYfJv8XHyb/Fx8m/xcfJf8XHyb/FyAn/xcgJ/8YISf/GCEo+xkhKO0ZICfbGCEoyR4n
+        LrUhKjGeICkwhyApMGoZIilOFyAnOR0lKyctNjwXU11jB////wCCi5EAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjLzcAMz1BCygyOCkdJy1HGCIpZRsj
+        KowbJCuqGSAowxcfJ9oWHiXxFR0k/RUeJP4VHib+FR0k/xQdI/8VHST/Fh4k/xYeJf8VHiX/Fh4l/xYe
+        Jf8WHiX/FR4l/xYeJf8WHyb/Fh8n/xcgJ/8XICf/Fh4l/xYeJf8WHiX/Fh4l/xYfJv8VHiT+FR0k/hUe
+        Jf4XHyb1Fx8m3hggJ8YbIyquGyQqkxcfJmsaIypNJzA3LjQ9QQ8eJy8AAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAlLDgAKCs7ACMsNQQoMjgLJzA3KB0mLlUZIiqBGiMqsxokK9MYIinkFyAn9hUeJf8UHST/FBwk/xUd
+        JP8VHST/Fh4l/xYeJv8XHyb/FyAn/xYgJv8XICb/FyAm/xcgJ/8XISj/GiIp/xwkK/8dJiz/Hikv/x8p
+        L/8eKS//Hygv/xojKv8XICf/GCEo/xghKf8XISj/GCEo/xgiKf8WICf/Fh8m/xYfJ/8WHyb/Fh8m/xUe
+        Jf8VHiX/FR4l/xYeJvkYISnoGiQr1hoiKrsYISiIGiMqXSQsMy8jLTUNJC00BSMsMgAjLDMAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApNDwARVFbAB0nLwkfJy4dJi81QRsk
+        K3caIyuqGiMq2hgiKfEXICj7FR4l/xUeJf8WHiX/FR4l/xYfJv8YISn/GSIq/xsjK/8cJSz/Hygv/yIs
+        Mv8nMDf/KjQ5/ys1Ov8rNjr/KjQ5/ys1Of8pMjf/Iysv/yozN/8rMjb/Iiot/yIqLf8oLzP/LzY5/yYv
+        Mv8pMjf/KjQ4/ys0Ov8tNjv/LTY9/yw3Pf8oMzn/Iy41/yIrMv8eJy//HCUt/x0mL/8bJS3/GCEp/xYe
+        Jv8VHyb/Fh8n/xUeJf8VHiX8FyAn9BkhKeAZIyyzGyQsgiQtM0sfKC4hHigvDDdGSQEoNDkAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAIisyACUvNQQaIysfICgvSxsjLIYXHya6GCEo4xYfJvkTHCP/FBwj/xYe
+        Jf8XICf/GiQr/x0oLv8fKjH/Iiwz/yUuNP8mLzX/KjM4/ygyNv8oMTT/JSwv/x0kJv8aHyH/FBcY/xIV
+        Fv8SFhb/ERUV/xIWFv8SFRX/EBMT/xIUFP8SFBT/DxIS/w8SEv8RExT/ExUV/xIUE/8TFRb/ExYW/xMV
+        Fv8TFhf/ExUW/xYZGv8ZHh//HSMm/yUsL/8rMzf/KTI2/y43Pf8pNDr/JzE2/yQtNP8jLTT/Hykx/xoj
+        Kv8VHib/FR4l/xUeJf8VHib/FyAn+xghKOkXICbDHCUrjyEqMFIaIyomIy00BwoUGwBKVVwAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0hNAFNb
+        XwEkLTQTHCUtPSIrMnwYISm7Fx8l5hYfJfkVHST/FBwj/xQcI/8UHST/GiMq/yItNP8kLjb/JjA2/ycx
+        Nf8mLzP/KDAz/yMpKv8UGBr/FBcX/w8SEv8NEBD/DRAP/wwODv8MDg3/CgwM/woLDP8JCwv/CAoK/wgK
+        Cf8JCgn/CAoJ/wgJCf8ICgn/CAoK/wgKCv8ICgn/CAkI/wkJCf8KCgv/CQoK/wkKCv8KCwv/CwsL/wsN
+        Df8MDg7/DQ4P/w4QEP8OERH/DhER/xQVF/8XGhz/Iigp/ykxNP8rMjf/KDI2/yMuM/8jLTT/JTA4/x4o
+        L/8YISj/FR8l/xQdJP8VHiX/Fh4m+xUdJOoWHyXFICkuiB4oLUkhKzEYbXt9AwAAAADU7OIAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA7QAAxO0EIISwyJx4nLmEcJSypFR4l4hUd
+        JfoVHiX/Fh8m/xYfJv8WHib/HCQr/yQuNf8oNDr/KTM3/yEpLf8gJin/GyAh/xIVFv8MDg7/CwsM/woL
+        DP8KCwz/CwwM/wsNDP8KDQz/Cg0M/wsLDf8ODw//ERQT/xMXGP8WGxz/HCEj/yAkJv8cIiP/HyYo/yIp
+        K/8jKiz/Iyks/yIqLP8iKiz/Iykr/yEnKv8cISP/ICQl/x4jJP8XHB7/FRga/xASFP8QEBD/DA0O/wsM
+        Dv8LDQ3/DA0N/wsNDf8LDAz/CwwN/wwMDf8NDg7/EhQV/xkdH/8hJyn/JCsv/ycwNP8oMjn/JzE5/x4p
+        L/8ZIin/Fh8m/xUdJP8UHCP/FB0i/BUdIuobJCq2Hyctbx0nLjA1QUcLIR8jAENYXwAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAvOUAAJzI5CSQuNTwZIimEGSIpyBYeJvEVHST/FR0k/xYfJv8XICj/GyUt/yQv
+        Nf8sNjv/KTI1/x4kKP8dIiX/Gh0e/wwNDv8KCgv/CgsL/woMDP8LDQ3/DA4P/w0PD/8PEBD/ExYX/xgf
+        IP8gJyn/JS4x/ycvMv8rMjf/LTY7/ycwNf8lLjP/LDQ6/zE6Pv8wOT7/MzxB/zI8Qf8wOkH/Lzo//y45
+        P/8wOkH/Mj1D/zM+RP8xO0D/ND1C/y03PP8mLzT/KTM4/y02Ov8tNTn/KTI2/ygwNP8iKCv/HCAi/xIW
+        Fv8ODxD/Dg8R/w4PEP8NDw//DAwN/wsMDf8LCwz/DA0N/xYYGf8cISP/ICcq/yUtMf8sNTz/JjE3/x0m
+        Lv8YISn/Fh8n/xQcI/8THCL/FBwj9xggJ9AZISiQISoxRycwNxEvOD8AAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVHyoAl5uoACky
+        Og8jLTRIGSIpmRkiKdwWHyb4Fh4l/xYfJv8YISj/GiQq/x8pMP8mMDf/Ji8z/xofIv8XGxz/FBcY/wwN
+        Dv8JCgv/CQoK/woMDP8NEBD/EBIT/xUXGP8WGhz/HSIm/ykyNv8tODz/Ljk9/yk0Ov8vOD7/MDtB/zA7
+        Qf82Qkr/OkdO/ztJT/89S1L/PkxU/z5MU/8/TlX/P05T/z9NUP8+TU//PkxM/z5LTP8+TU3/P05P/z9O
+        Uf9BT1X/QE9W/z9NVP89TFP/PUtR/z5LUf87R07/M0BG/zE8Qv8vOT7/KjQ5/y44Pv8wOj7/KTE1/x8l
+        J/8WGx3/EhUV/xEUFf8OEBH/DA0N/woLC/8KDAz/DQ8O/xIVFf8YGhz/HCEj/yUuMv8qNDv/Iiwz/xoj
+        K/8YISj/FR0k/xUdJP8VHST7GB8n4xYeJaseJy1YKDE3FkFNVAINFBwAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALjlAADdDSgIfKjEVHyguUhghKqkXISfqFyAm/RYe
+        Jf8VHiX/GiMr/x8pMP8jLTT/JzE3/yEnK/8VGBn/EBIS/wwNDv8KCgv/CQoK/woLDP8PERL/FBgZ/xkd
+        Hv8gJyr/KjQ4/zI8Qv8wOkD/Ljg+/zE6QP8yPkT/O0lP/0BOVv9BUFb/QVBT/0JRT/9EVFD/RVZP/0dY
+        TP9HWEn/R1ZI/0VVRv9EVEX/QlJH/0BQT/9AUVT/QVBa/0FQWv9BUFr/QVBY/0FQUv9CUkn/RVRG/0dX
+        SP9IWUr/SFhM/0hYUP9GVlL/RFNR/0NSVP9DUlj/QU9W/ztJUP80QEf/MTxC/zA6Qf8yPkX/NEBE/y44
+        PP8gJyr/GR0f/xQYGv8QExT/CwwL/woLCv8LDAz/DQ4P/xASE/8TFhj/ISgq/yo0OP8lLzX/ICox/xok
+        Kv8UHCP/FBwj/xUeJf4XHybzGCAnuR0mLGIhKzAcLjc/AyozOgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAbIy0AKDI4EyApMFIZIiiqFR4k6hUdJf8VHiT/FR0k/xoiKf8hKzH/JC0y/yQs
+        L/8bICL/ERMU/w0OD/8MDQz/CgsL/wsLC/8RExP/GR0e/x4jJP8hJyr/LDU4/zM9Qv8zPEP/MTtB/zVA
+        Rv86R0z/QU9U/0NSVP9DVFD/RlZN/0ZXSP9CUkH/PUxN/zlHYv82Q2L/MT1l/ys1ef8nMIH/JS19/yMr
+        ev8gKHb/GyF9/xcdkf8WHJ7/FRqu/xUZr/8VGqz/Fhqn/xcdmf8bIYH/HyZ2/yUue/8oM4L/KzWA/zA7
+        aP81QV//OUZm/z1LVP9DUkH/R1hJ/0hZUP9GVlL/RFRW/0NSV/8/TFL/NkNI/zE8Qv80P0T/NUBE/y02
+        Of8kLC7/HyQm/xwgIf8SFBT/DAwM/wwMDP8MDg3/DhAQ/xASEv8ZHR7/Ji4x/yYwNP8jLDP/HCQs/xUd
+        JP8WHiT/FR4k/xQdI/IXHya4HiYuXykyOBoXHCYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjLjUAQEdNACs2
+        PAwdJy9DGiQqoxYfJucWHST/FRwj/xYdI/8aJCv/IzA5/yYyOv8hKi//Fx4g/w0REv8LDg//Cw4Q/wsO
+        D/8NDxH/FRod/yApL/8lMDb/KDE4/zE9RP8zQUv/NkVR/ztMVv9DVV3/R1tf/0hcXf9IXlj/RVlM/ztL
+        Tv8yP2j/KTR0/yAokv8ZIJX/Ehim/w0Rwv8KDMP/BQbJ/wID5v8CA/T/AgLz/wIC8/8BAvL/AQHz/wAA
+        9f8AAff/AAD4/wAA+P8AAPj/AAD4/wAA9v8BAfT/AQHy/wIC8/8CA/T/AgPv/wQFzf8ICb//DA7H/xEW
+        rf8aIZT/ISmU/ygxc/8xPmz/OktV/0VZTP9IXFf/R1xb/0dcX/9FWV//PE1W/zVFT/82RVD/NUFK/yoz
+        Ov8iLDL/ISsy/xgeIv8NDxD/Cw0P/wsOEP8MDhD/DRAS/xccH/8jLDH/JzI6/yc0P/8dKDD/FiAm/xUd
+        JP8VHCP/FR0k7RghKLIaJCxTKDQ8ESshOQAlMjgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACs0OgArNTsHIyszMBoiKo8ZIingFh8l/hQc
+        I/8XHiX/GyQs/yUxPP8nNT//Hysy/xcgJf8OEhb/DREU/wwRFf8OFBb/EBYb/x0oMP8oN0L/KDVA/yw9
+        Sf80SFb/NUpY/ztRXP9DXGL/SGNn/0ljaf9GYGb/PFNo/yw8gv8gLZX/GCKv/w8Vu/8HCtL/AgTd/wEB
+        9P8BAff/AQH3/wEB+P8BAfn/AQH4/wIC9P8DA/H/AwPw/wMD8P8DA/H/AwTw/wME8P8DBPD/AwTv/wME
+        7/8DBO//AwTw/wME8P8DBPD/AwTw/wMD8P8DA/D/AgPy/wEC9/8BAfn/AAH5/wAB+P8BAvf/AgL0/wID
+        2v8GCdT/DhTB/xcgsv8fK5T/Kzt+/ztPXf9DXGL/R2Jm/0diZP9FXmT/PFJd/zVIV/8xQ1H/KjpG/yc1
+        QP8nNT//Hioy/xIZH/8OEhj/DBAU/wsPE/8KERT/FR0i/x8pMf8lMzz/JzU//xsmLf8XHyb/FBwi/xQd
+        Iv4WICboGiMqoiAqMUArNTwLKjQ7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAyPEEAcH5/ACw1OxseJixvGCEoyhUdJPwUHCL/Fh4l/xskLP8jLzn/JjQ9/x0o
+        MP8WHST/DhMX/woOEf8MEBP/DxUY/xUdIv8jLzf/KjhD/yo7R/8xQ1H/Ok5f/z9WZP9GX2X/SGRj/0Zg
+        aP9AWGn/NUlp/yIujP8VHbP/DhPP/wUH3v8AAef/AQH0/wEC9/8BAvb/AQP0/wID7/8DBO3/AwTt/wME
+        7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTt/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8CBO7/AwTv/wID9P8BAvb/AQL2/wEB
+        9v8BAuj/BQfc/w0Syv8VHbP/ICyJ/y9Baf8/VWT/RV9n/0pkY/9DXGH/O1Bd/zdLWf8vQE3/KTpF/y4+
+        S/8kMDv/Fh0k/xAWGv8MERP/Cw8R/wwQFP8UGh//HCUs/yUyO/8kMTz/HCYu/xYeJP8UGyL/FR0k/Rki
+        KNccJSyDKjQ7J1diaQE0PkUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAA
+        AAAqNTsGHygvSBkiKa0WHybwFR4k/xUcIv8ZIin/ICs1/yc2Qv8fKzP/ERkd/w0SFv8LEBP/CxAT/xAV
+        Gv8YICj/IS01/yw8SP8tPUn/MkRQ/zxRYP9DW2X/SWVm/0lkZv9AV3H/MEJ0/x0olP8OFMD/CQzb/wMD
+        6f8AAPL/AQH2/wIC9P8CA/L/AwTu/wME7f8DBO3/AwTt/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8DBO3/AwTt/wME7v8CA/H/AgL0/wEB
+        9/8AAPL/AgPp/wcJ3P8NEr3/HCeV/zFEbv88Umr/RV9f/0ljYv9CW2T/PVNh/zVHVv8tPEn/Lj5M/ycz
+        Pv8aIin/EBYb/wsQFP8LEBL/DRIV/xEYHf8dKDD/KThD/yMxOv8bJCz/Fh4k/xceJf8WHyb1Fx8mvB0n
+        LlgiLDQO////AGFwcgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApMjoANUBIASUvNyUdJi2AFyAn4xYe
+        Jv8VHiT/FyAm/yAsNP8mMz7/Ii44/xUcIv8NEhb/CxAT/wsPEv8PFhr/GyMr/yUxO/8wQU3/L0BN/zNF
+        Uv9AWGX/R2Fp/0lkYf9BWWT/M0Z0/yIvkf8NEsL/AwTo/wEC9P8AAPT/AQH0/wID8v8DBO//AwTt/wME
+        7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8CBO//AQPy/wEC
+        9P8AAPT/AQL0/wME5P8LEb3/IC2T/zJFdv9CWmX/S2Zj/0lkbf9EW2r/NkhW/y49S/8uPkv/JTI8/xsl
+        LP8SGB3/DBEU/wwRFf8OExf/FBsg/yUxO/8nNUD/IS02/xkiKf8WHiT/Fh4l/xYeJesbIyuVJCw0MDE6
+        QwMlLDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAC03PgAuOD8JHiUuSRoiKbwWHib0Fx8m/xYfJv8cJy//JTM9/yUx
+        PP8ZIij/DhIW/w0RFP8NDxP/DxQY/xskKv8iLjf/KzpG/zFDUP82SVb/QVdl/0ZgZ/9GX1//OU5o/yg2
+        j/8UHLD/BQfP/wAA9P8BAfb/AQLy/wID8P8DBO7/AwTu/wME7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTt/wME7v8DBO//AgPw/wEC
+        8/8BAfb/AAD4/wMF0/8UG6z/JjSP/zpPZv9JZGH/SmVu/0JZZv81R1b/MUFP/yw7R/8nNT//Higw/w8W
+        Gf8MERT/DhIW/w8TF/8XICb/JjI7/yg2Qf8gKzT/GCEo/xYfJf8VHSP6GCAmyhoiKWApNDkQKTQ5AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAeKjEAKiwyACIsMxocJSx7GCAn3BYeJf8VHST/GCAn/yMvOf8mND7/HScu/xAXHP8LEBP/DRAT/wwR
+        E/8XHyX/KTdC/yo5RP8vP0z/NkpX/0BXYv9HYGb/RV1g/zRGb/8dKJn/CxDF/wID6v8AAPv/AQH1/wID
+        8P8DBO7/AwTt/wME7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8DBO7/AgPx/wIC
+        9f8AAPn/AQLq/wsQw/8eKZb/Nkls/0dhZP9IYmj/Qlpl/zdJWP8wQk//KjhD/yg3Qv8cJS3/DhMY/w0R
+        Ff8NEhT/Ehcb/xwnLv8mNT//JTQ+/xokK/8VHiT/FR0i/xUeJOkbJSqRIys0KEdRYwEhKDMAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADpDSQA9RkwEIis0OBki
+        Kq0WHyX0FR4k/xYfJv8cJi7/JjQ+/yIuNv8TGyD/DBEU/wsQFP8OEhb/FRsh/yItN/8rOkX/MUJP/zlN
+        Xf9CWmT/SGFj/0JZYP8yQ3H/GSOl/wgL1v8BAe//AAD6/wEC8/8DBO7/AwTt/wME7f8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8DBO7/AgLz/wAA
+        +v8BAe7/CAvT/xkgof8xQW//Qlph/0hgY/9CWWX/OEtb/y4+S/8sO0j/JTM+/xYeJP8OFBf/CxET/wwR
+        FP8TGiD/ICs0/yk3Qv8fKjT/FyAn/xUdJP8VHiT7FyAowSApMk08R00IOkZMAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABKVVwAIywyACs1OgodJi5ZGCEpyxcfJ/4WHiX/FyAo/yAr
+        Nv8lMz3/GSQr/w4UGP8LEBP/DBAU/xEXHf8eKTH/KztH/y09Sf80RlP/P1Vh/0ljZP9FXmX/MUN0/xYe
+        pP8HCtj/AQLy/wEC9/8CA/L/AwTt/wME7f8DBO3/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTt/wME7f8CA/L/AQL3/wEB
+        7/8ICdb/Fx6f/zFBcf9EW2T/SWNl/0BWY/81SVf/Lj9L/y49Sf8iLTb/Exof/wwRFP8MERT/DRMY/xki
+        Kf8nNED/JDE7/xojK/8WHSP/FR0j/xcfJ9wdJi5uKzU7EwAAAAA2QkcAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAgKDAAIyw0Fh0mLXwVHybhFBwj/xYdI/8aJS3/IzA7/yEuNf8TGyD/CxEU/wsP
+        Ev8NERX/GSIo/yY0P/8sPEj/MkRR/z1TYP9EXWD/RV1d/zVHcv8aJaH/Bwrc/wEB8/8BAvX/AgPx/wME
+        7f8DBO3/AwTt/wME7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8DBO3/AwTt/wMD8f8BAvX/AQHy/wcJ
+        1/8ZI5//NEZz/0VdXv9IYmb/QVdl/zFCUP8vP0z/KzlG/xwmLv8OFBj/CxAT/wwSFf8SGR7/IS02/yg2
+        QP8fKjL/FyAm/xQdI/8UHCTuGyUtkiYwOCUsN0QBKDM+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARE1PAMDG
+        swEiLTQnGiIqmxUdI/UUHSL/FR0i/x4pMv8lMj3/GyUs/w4UF/8NERT/DBAU/xAVGf8fKjL/KjpG/y9A
+        Tf83S1f/RFxi/0VdXP81SWT/HyyX/wcL1f8BAfX/AQL1/wIE8P8DBO3/AwTt/wME7f8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTt/wME7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTt/wME7f8DBO3/AwTw/wEC9f8BAvX/BwnU/x8p
+        mP85TGT/R2Bd/0ZgZ/85Tlr/MEBN/y4+Sv8lMTv/FBsh/wwQFP8MERT/DRIW/xokKv8nNkH/IzA5/xcg
+        J/8VHCT/FR0k+RkiKbMeJi87V2FoAzlCSgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiLTMAMD9EAR4oLjkZIimyFh4l+RUd
+        Iv8WHiT/Ii43/yQxO/8XHiX/DBEU/wwRFP8NEhb/GCEn/yUzPf8sPEj/M0VS/z5VYP9GX2D/PlNb/yQx
+        i/8MEcX/AQHu/wAC9v8CA+//AwTt/wME7f8DBO3/AwTt/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTt/wME7f8DBO7/AwTv/wME7/8DBPD/AgPy/wID
+        8v8CA/L/AwTx/wME8P8DBO//AwTu/wME7v8DBO3/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8DBO3/AwTt/wME7f8DBO//AQL3/wEC8P8MEcD/JjWA/z5W
+        Xv9EXWb/P1Vk/zRGU/8uPkr/KzpG/xslLP8OExb/DREV/wwRFf8UHCL/JTI8/yc0Pv8aIyr/Fh4j/xUd
+        JP0XHyfKHicwTjA+RQMgKzMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAADE6QgA0PkcDICoyRxYfJscUHCP8FRwh/xghJ/8kMDr/IzA5/xMZ
+        Hv8MEBT/DREU/xAVGf8eKDH/KztG/zBATf85TVv/RFxi/0VdX/8wQnT/Ehiy/wME6f8AAPv/AQLx/wIE
+        7f8DBO3/AwTt/wME7f8DBO3/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        8f8CA/T/AQL0/wEC9P8BAff/AAD3/wAA9/8AAPf/AAD2/wAA8/8AAPH/AADv/wAA7v8AAO7/AADw/wAA
+        8v8AAPX/AAD2/wAA9/8AAPf/AQH1/wEC8/8CA/P/AwTx/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO3/AwTt/wME7f8DBO3/AwTt/wID8f8AAfn/BAXm/xIZsf8zRG7/R15q/0Ja
+        av8kMTz/Higx/yw7Rv8lMTr/EhYd/wwQE/8MERT/ERgc/yEuN/8nN0H/HCUs/xYdI/8UHSP/FR4l3CAn
+        Ll0wOkAKLzk/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AABTWmEAHygzAC84QgkgKTJaFyAn1RQcI/8UHCP/GyQt/yUxO/8dKC//DhQX/wsQE/8LDxP/FRsg/yc0
+        Pf8rOkb/M0VS/0FXZP9IYGT/P1Rj/x8qkv8GCNj/AAD2/wEB9f8CA+7/AgPt/wME7f8DBO3/AwTt/wME
+        7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO3/AwTt/wME7v8DBO//AgPz/wIC9P8AAff/AAD5/wAA7f8BAuT/AwTn/wYI
+        5f8KDdj/DRHX/w8U3P8QFdv/EBbR/xEXwv8SGLH/Fx2b/xkglP8WHpn/Ehim/xAWvf8QFdL/DxTb/w4S
+        2f8LD9f/Bwng/wQG6P8CAuX/AADu/wAA+P8AAff/AgL0/wID8/8DBO//AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTt/wME7f8DBO3/AwTt/wME7f8DBO7/AAD7/wwQ1P82SW3/R2Bn/zRHVf8ZIyn/Fh4k/xsl
+        LP8pNkH/KzpG/xcfJf8NERX/DBET/w0TF/8cJi3/JzU//x4pMf8WHiT/FR0j/xYeJeUeJy5yMDtBEgAL
+        EABASlEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfKzIAKjQ7Cx4o
+        L2gXICfeFB0j/xQcIv8dKDH/JTI9/xskK/8NEhb/DBAU/wwQFP8XHyX/JjM+/y8/TP85TVv/Rl5n/0Zf
+        YP8xQnf/Exmx/wEB6v8BAfX/AgPw/wID7f8CBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTu/wME
+        7f8CA/D/AgL1/wEC9/8BAff/AQHj/wcJ2P8PFMn/Fx+//x4op/8lMo3/KzqW/zFBi/87Tmj/RFpk/0hh
+        cP9LZXX/TWh2/05peP9Panf/T2p0/1Brdf9QbHb/T2t2/01odf9LZXT/SGBu/0ZcaP9AVGb/NEaA/y49
+        lv8mM5D/HCWp/xggwf8QFcn/BwnZ/wEB4f8BAfX/AQL3/wIC9f8CA/D/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME
+        7f8DBO3/AwTt/wME7f8BAvH/BAXr/yk3jv9HYWX/QVZk/yArNP8WHiT/GyUt/xkiKv8ZIir/JjM+/y4/
+        TP8eKDH/DhIX/wwQFP8NERX/FyAm/yUyO/8gLDX/Fx4l/xUdJP8XHybpICkwgC85QRYfKC8AAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcwOAAoMTkNHygvbBchJ+UVHiT/FR0k/yAr
+        NP8kMjr/FBsh/wwQFP8LEBP/DRIW/xsjK/8qOEP/Lz9N/ztQXf9HYWb/QVhl/yMwi/8HCtP/AAH3/wEC
+        8/8CA+7/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTt/wME8P8CAvL/AAH1/wEB9v8CA+v/CArP/xQa
+        uP8fKqj/KTeT/zRFg/9AVm3/S2Vk/1Nvcv9VcXf/VnJ6/1Vye/9UcXn/U3B4/1Judv9Qa3P/T2py/09p
+        c/9NZ3L/S2Zx/0pkcf9MZnP/T2l0/09pc/9NaHD/UG11/1Rxev9XdH3/WHZ+/1d1fP9Vcnb/Um5x/01n
+        Zv9AV23/NEWE/yk4j/8fKqj/Exq6/wcJ0f8CA+j/AQH2/wAB9v8CA/L/AwTw/wME7/8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8DBO3/AwTt/wID
+        8P8AAPf/GSKz/0NaZP9HYGj/LTxJ/xYeJf8bJCv/GyYs/xolK/8aJCr/GSIp/yEtN/8uPkz/JDA7/xAU
+        GP8MEBL/DBAT/xMZHv8kMDr/IS02/xYeJf8WHiX/GCAo7h8pMYcqNj0ZHCkuAD1HVAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAtOz0AGyIsACIsNA0dJi1yGSEo6BYfJf8WHiT/ISw1/yc0P/8UHCL/DBAU/wsP
+        E/8QFhr/ICw0/yk5RP8wQk//PVRf/0ZfXv85Tmn/GCGt/wID6/8AAfb/AgTw/wID7f8CA+3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME
+        7v8DBO3/AwTt/wID8P8CA/P/AQH1/wEB8/8FB+P/CxDG/xkho/8sOY//Ok18/0Rca/9Qa2P/U3Bx/1Jv
+        c/9Sbnj/TWh1/0ZfbP9BV2T/O1Bd/zhMWf81RlX/Lz9M/yw7R/8qOkX/KjdE/yk2Qv8pNkL/KDZB/yc0
+        P/8oNkD/KTdC/yo4Rf8qOET/LDxI/y4+S/8yQ1H/N0pW/ztQXP9BV2X/SGFu/09pdv9RbXb/Um90/1Nw
+        cP9PamX/RFxt/zhMff8tPI3/GyOf/wsPwv8FBun/AQHy/wEB9P8CA/P/AgPx/wME7v8DBO7/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8DBO3/AwTu/wAA+f8LENL/N0pv/0pk
+        Yv81SFb/GCEo/xkiKf8cJSz/GCIq/xkiL/8cJS3/HCUr/xkhKP8eKDD/LDtI/yg2Qv8TGh//CxAS/wwQ
+        Ev8SGB3/Ii85/yIvOf8YISj/Fh4l/xghKPAdKDCMJC43Gg8WKAApNToAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAdJy8AJS83DBwlLnEXICfnFR4k/xcgJv8hLTX/JTE7/xUbIf8MEBT/Cw8T/xEYHf8iLzf/LTxJ/zRH
+        Vf9BV2D/RV5Z/y8/df8PFMD/AQLy/wEC9P8DBO3/AgTt/wIE7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7v8DBO7/AwTu/wME7v8DBO7/AwTu/wME7v8DBO3/AwTt/wME7v8CA/H/AQL1/wAA
+        8f8DA+j/DBDT/x0nnf8zRXz/QVd7/0pibf9Tb2z/U291/05pdf9IYXD/PlNi/zRGU/8uPkv/KTdD/yYz
+        Pv8iLjj/Hikz/yEsOP8jLTz/Iy48/yczQv8oN0b/KjdG/yo3R/8qOEj/KDVE/yYzQv8qOEf/KjhI/ys3
+        Sf8qOEn/KjZE/yQwPv8iLT3/ISw6/yIrNf8kMDr/JjQ//yk3Qv8tPEj/NEZS/z5SYf9HX27/TWh0/1Ju
+        cv9UcG3/SmNr/0FXe/80RYr/Hiie/wwQz/8CA+n/AADx/wEC9v8CA/L/AwTu/wME7f8DBO3/AwTu/wME
+        7v8DBO7/AwTu/wME7v8DBO7/AwTt/wME7f8DBO3/AQL1/wQF7f8oNZP/SGJh/0BXY/8gKzP/Fh0j/x0o
+        L/8cJS3/GSEw/xkiNv8aIzT/GiQu/xwlLP8ZIij/GiMq/yg3Qv8qOkX/FR4j/woPEv8LDxP/DxYa/yMv
+        OP8kMDr/Fx8m/xUdI/8XICfwHCYtjScxOBgaJCsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkxOwAqMjsLHiYuaxcf
+        J+cVHCP/Fh4l/yIvOf8kMjv/Ehkc/wwQE/8KDxP/Ehke/yUyPf8tPkn/OEtY/0VdY/9CWV3/KTiA/wgM
+        1P8AAPT/AQPw/wME6/8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AgLz/wAA9/8BAez/Bwng/xUbsP8qOID/QFd2/0xn
+        cP9Sbm3/UGty/0pjcf9DWmr/NklW/ys5RP8lMT3/Iy03/yArNv8jLj3/KDRF/yo3SP8pNkb/KTZF/yk1
+        Qf8lMTz/JDE7/yMtNv8dJy//HSgw/x4pMv8fKTP/Hiky/x0nMf8dKTH/Higx/x0mMf8dKC//KDE5/yIt
+        N/8iMDv/LDhF/ys5R/8oNkX/KjdI/yc0QP8kLzv/ISw2/yMuOf8kMTz/KjlE/zRGUv9CWGj/S2V0/1Rw
+        eP9XdHj/Um55/0Zee/8rOoP/FBut/wYI2/8BAO//AAD4/wIC8v8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8CAvD/AQD3/xghtP9EW2P/SWFp/yo6RP8WHSP/GyMr/x0nLf8cIy7/GSE1/xki
+        OP8ZIjj/GSI1/xwkL/8bJCr/GCIo/xghKP8lMz3/LDtG/xcfJf8LDhL/Cw8T/xAVGv8hLDX/Iy84/xgg
+        Jv8WHSL/Fx8m8B8pMIYtNz8WGCIqAIaVmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKTU7AC88QgghKTJkGCAn5BUdI/8WHSP/Ii44/yMx
+        Of8QFxz/Cw8T/wsQE/8WHyT/JzU//y08SP83S1j/Rl5h/z5UYv8eKZn/BQbk/wAA9v8CA+7/AgPt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTu/wID8/8AAfn/AQHr/wsPyf8iL5//PVJ5/01nbv9SbnX/Um93/0xlc/8/U2H/Lj5J/yYy
+        Pf8jLjv/Iy48/yMuPf8lMED/JjFA/yg1RP8oNUD/JTI7/yEtNf8lMjz/LT1I/zBCTv82SVX/P1Ri/0Nc
+        a/9FXWz/R2Bv/0lkdP9LZXX/TGZ2/0tldP9JY3L/R2Bv/0RdbP9CWmn/QFdl/zlMWf8zRVD/MEFM/yg3
+        Qf8hLDX/HScv/x4oMP8pNT//KTVE/yc0Rf8pNUT/JzJB/yQwPf8jLTr/JjI+/zJET/9AVmb/TGd1/1d0
+        fP9Wc3r/Tmhu/zhJbv8eKKX/CxDQ/wAB7P8AAfn/AgPz/wME7v8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7v8BAfb/Cw7X/zhLb/9MZWj/OExZ/xghJ/8XHiX/GyUs/xslK/8ZIjT/GSE4/xkiN/8ZIjf/GSE4/xkh
+        Nf8ZIy//GyUs/xokKv8ZISj/JC86/y8+Sv8aIir/Cw8S/wwQE/8PFBj/ISw1/yUxOv8YICb/FR0j/xcg
+        Ju4gKDB/MTtDEhcgKwBIUVYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAoMzoAOkdMAyEsM1gZISncFh0j/xYeJP8hLTX/JDA7/xAWGf8MDxP/DA8T/xkh
+        J/8rOUT/MEBN/zpOW/9FXWD/O05k/xcepP8CA+3/AQH1/wID7f8CA+z/AgPt/wME7f8CBO3/AgTt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7v8CA/H/AAH3/wAB
+        6v8MEcL/Iy+X/z5UcP9RbnH/V3N7/1Jtev9EW2n/NUdS/yg1Qv8kMD//JTE//yUwQP8kLj7/Iy4+/yQy
+        Pv8kMTn/JDE6/y0+Sf83Slj/Qlpo/0pldf9Pa3r/UW59/1Jwev9Rb3b/Um91/1Jvc/9RbnD/UnBu/1Fu
+        a/9Pa2f/Tmlm/01pZP9NaGP/TGhk/05qaP9Qbm//U3F1/1Jvdv9QbHP/T2t3/09ref9MZ3b/RV5s/zpR
+        Xf80RlL/KTdC/yEsNf8fKC//ISw3/yUxP/8kMD//JzND/yk2Rv8mMkL/KDVA/zZJVv9HX27/Um57/1Rx
+        ef9SbnD/PlR0/yMumf8NEb//AAHn/wEB9/8CA/H/AwTu/wME7f8DBO3/AwTt/wIC8/8EBu7/KTea/0xl
+        aP9CWGX/Ii02/xUcIv8bJCv/GyQq/xoiMP8aIjn/GiM5/xokOP8ZIjf/GCE3/xgiN/8ZIjb/GiIx/xsk
+        LP8ZIyr/Fx8m/yMuOf8vPkv/GyQr/wsPE/8NERT/DhMX/yAsNP8jMDj/Fx4k/xUcIv8XHybpHykwcjE9
+        QwogKzIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADU8
+        QQBAR0oBHygwRRghKNMVHCP/FR0j/yArNP8kMTv/Ehgd/wsPEv8LDxL/Fh4l/ys6Rv8xQk//PVFf/0Zf
+        X/84S2z/Ehiy/wEB8f8BAfT/AgPs/wME7f8DBO3/AwTt/wME7f8CBO3/AgTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwPw/wEB9f8BAu3/DhO//yk4j/89UXD/UGts/1Nw
+        d/9MZnT/O1Bc/y09R/8jLzz/JjFH/yg1Sv8hLT7/ICo4/yQwPP8oNkD/LT5J/zpOW/9DXGj/S2dx/09r
+        dP9QbHX/UG1y/0tmav9EW1v/Ok9a/zVIgP8uP4j/JTJ7/x4qjv8dKaP/HSiw/x0mt/8aJLT/GSKy/xsk
+        sf8aI7H/GiO0/xwmr/8eKZf/Ii59/yo5gP8vQIf/NEZp/z9WVf9KZWf/UG1y/1Budf9QbHX/T2t1/0lj
+        cf9AVmb/NkpX/yc0Pf8fKjL/HCUv/yApN/8iLDv/KzhK/ys4Tf8mM0L/Lz5L/z5TYf9KZHH/Um10/1Bq
+        av8+U23/JjSM/wsPvP8BAuv/AQH2/wME8P8DBO3/AwPv/wEB9v8YIbn/R15s/0tkbP8tPUf/Fhwi/xoi
+        Kf8cJCv/GSIt/xkiNv8aJDn/GyQ6/xskOf8aIzj/GSI3/xojOf8ZIjn/GSA3/xghMf8aIyr/GiIo/xge
+        Jf8iLTX/Lj9K/x4oMf8NERX/DBEU/w8VGv8lMDj/JzM8/xYdJP8UHSP/FR8l5B0nLl0xOkYDLTZBAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOENGAAAAAAAhKzM3FyAnxhUc
+        I/8VHSL/ICo0/yQyPP8TGh//DBAU/wwRE/8XICb/KzlE/zFDUP89Ul7/Rl5a/zZJbv8PFMH/AAD1/wEC
+        8/8CA+z/AgTs/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME8P8BAvf/AgLw/wsPx/8iLo3/P1Ru/1Fsaf9RbHL/SmJv/zhLWf8pNUL/ICw3/yUx
+        Rf8oNUv/Iy4//yEtOv8qOUT/NklX/0FYZ/9KZG//UGxx/05qbv9KZG//QVln/zRHYP8qN4T/HSiQ/xMa
+        sv8OFMT/CQ3C/wYI2f8DBN7/AgLX/wEB4/8BAfD/AQH3/wEB+f8BAfn/AQH5/wEB+f8BAfn/AQH5/wEB
+        9/8BAen/AQHZ/wID2/8EBt//BwnM/w0Rwv8SGL3/GSGW/yQxi/8uP2z/PlRj/0plcP9PbHT/Um9y/01q
+        cv9GXmz/OExa/yc0Pv8bJCz/GiMs/x8pNv8nM0X/LTtQ/yc1Q/8oNkP/NkdU/0hgbf9TbnT/UW1s/0JX
+        b/8lMZH/Cw/O/wEB7/8BAvX/AAH2/w0R2/88UYL/UGtv/ztOXP8aIin/FyAn/xwlLP8aIiv/GSIz/xki
+        OP8aIjj/GiM5/xojOP8aIzj/GiM4/xskOf8bJDn/GiI5/xghN/8YIDD/GSMq/xoiKP8XHyT/ICs0/zBA
+        Tf8dJy7/Cw8S/wwQE/8SGBz/JTE6/yIuOP8VHSP/FBwi/xUdJd0dJi9OV2VfAi86PgAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiKjMAGiUsACApMiQaIyuwFh4k/RUdI/8fKjL/JTI8/xQa
+        IP8MERT/DBAT/xcfJf8rOkX/MUJP/z5TYf9GXVz/NUdt/w8Uxv8AAPX/AgPx/wME7P8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AgL1/wEB
+        9P8HCdj/HSah/z1Scf9OaGr/UW1y/0ZfbP81SFP/KTZH/yYwSP8nMk7/JTJF/x0oMv8lMTz/MUJN/0FY
+        Zv9OaXb/U3By/0xoaP9FXnL/Ok9v/yg2e/8YIKD/DhLI/wgL1f8EBeL/AQHn/wIC8f8CAvf/AgL3/wIC
+        9f8CA/X/BAT2/wQF9P8EBfH/BAXv/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF7/8EBfL/BAX1/wMD
+        9v8CAvb/AgL3/wIC9/8CAvT/AQHp/wIC5v8FCNn/DBDO/xMbov8gLIn/MUNq/0FZcv9LZWv/Um5u/1Bs
+        df9GYG//NEdT/yIuNf8bJCv/GyQt/yUwRP8sOlr/JjFG/yk2RP82SVb/SWJx/1ZyeP9RbHH/PFFx/xoj
+        nv8GB+L/AgPt/yw7nf9Qa27/Rl1r/yItNv8XHiT/GyUt/xwlK/8ZIjD/GSI3/xkiN/8aIjf/GiI3/xki
+        N/8aIzj/GiM5/xojOP8bJDn/GyM4/xoiOP8XIDb/GCIw/xskK/8bJCr/GCAm/yItNv8wQU3/HCYs/wsP
+        Ev8MEBT/ERYb/yIuOP8iLDb/Fh0j/xQbIf8XICjMHygvO06BtgAfKTEAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAdJS4AJi83ExsjLJYWHiX5FRwi/x0nL/8kMTv/FBsg/wwQEv8MDxL/Exof/yo4
+        Qv8yQ1H/P1Vi/0pjYf81RnX/DhPK/wAA9v8CA/D/AwTs/wME7P8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wMD7/8BAfb/AgLr/xMZuP8zRHX/TWVp/1Nu
+        dP9KYm//OExY/yk3R/8lMUj/JjFU/yczT/8hLTj/JTQ+/zlOW/9JY3D/UW10/1FubP9HYW3/OEt8/yAs
+        gv8QF63/CAzX/wQF5/8AAfD/AQL1/wID9f8CA/P/AwTz/wQF7/8EBez/BAXt/wQF7f8EBe3/BAXt/wQF
+        7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBe3/BAXt/wQF7f8EBe3/BAXt/wQF
+        7f8EBe7/BAXy/wME8/8DA/T/AgL2/wEA7/8CA+v/Bgjb/w0Ruf8dJo3/M0N9/0JZcv9NaWf/VHF1/09r
+        ef9AV2X/LDtF/xskK/8VHCT/Iy1C/yo4Tf8mMj//KTZE/zhLWf9MZXL/VXF1/0xlbf8uPYb/Ii6c/0de
+        d/9PaXL/MEBL/xYeJP8bIyv/HCUs/xskLf8aIzf/GiM5/xoiN/8aIjf/GiI4/xoiOP8aIzj/GiM4/xoj
+        OP8aIzj/GiI4/xkiN/8ZITf/GSI4/xojMv8bIyv/GyMq/xgiKP8lMTz/MkRQ/xojKf8LDxL/DA8T/xIY
+        Hv8lMTv/Hysz/xQcIv8VHCL9GSEosiYuNiQWHiYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC43
+        PgAvOEAJHScvdBcfJfIVHCH/GiIq/yYzPP8WHSP/Cw8S/wsPE/8TGR//JjU//zBBTv89UmD/SmNg/zlM
+        df8QFMz/AAD0/wID7/8DBOz/AwTs/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO7/AgPz/wAA+f8HCdD/IS2M/0Vcbf9UcXX/T2l2/z1RXv8pNkP/JC9J/yUx
+        Tv8jLkb/ICs2/yg2Pv89U2D/TGh0/1JvdP9NaGn/Ok9y/yY1hP8UG6r/BQfZ/wEC8v8BAfX/AQL0/wIE
+        8f8DBfD/AwXt/wMF7P8EBe3/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQG7v8EBu7/BAbu/wQG
+        7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAXu/wQF7v8EBe7/BAXu/wQF
+        7v8EBe7/BAXu/wQF8P8DBPH/AwPz/wIC9f8CAvT/BAXj/w0Rtv8gLIv/NUl4/0liaP9UcXP/U3J+/0hh
+        cP8vPkr/GSEo/xMbIP8hLDr/JzRG/yc0R/8tOkn/PlNh/1BqeP9Ra3T/T2lx/1Jue/9AVWT/HSYt/xoh
+        KP8dJy7/HCYt/xskNf8bJTr/GyU5/xojOf8aIjj/GiI4/xojOP8aIzj/GiM4/xoiOP8aIjj/GSE3/xki
+        N/8ZIjf/GSI3/xkiOP8ZITH/GiMq/xskKv8aISn/JjI9/zA/TP8XHiX/Cg4R/wwPE/8UGh//JTE6/x0m
+        Lv8VGyH/FRwi+R0lLZIuOD4ULTc+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALDU7AFRaWQEeKTFQGCEo2xUc
+        Iv8XHyX/Iy85/xwlLP8NEhX/Cg8R/xEXG/8kMjr/Lj5K/zlMWf9GXV3/OEtv/xAVxf8AAfP/AgPv/wME
+        7P8DBOz/AwTs/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7/8BAvX/AQHp/xEXtf8zRHr/TGVn/1Ftdv9GXWv/MD9L/yItPv8lMUX/Iy1F/x4oNv8nNDz/O1Bc/0xm
+        cf9Pa3H/R2Bm/zFBcv8dJqb/Cw/G/wAB4v8BAfr/AQP0/wIE8P8DBe7/AwXu/wMF7f8DBe3/BAXu/wQF
+        7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG
+        7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBe7/BAbu/wQF7v8EBe7/BAXu/wQF
+        7v8EBe3/BAXu/wQF7v8EBO//AgPy/wEC+P8AAe//BgjP/xcfrv8tPIX/Rl5m/1VyeP9Vcn//R2Bv/y1A
+        S/8WICT/FR0k/yMvRf8pNU7/JjJA/zJDTv9HX27/Umx+/0pidP8mMz3/GCEn/x4nLf8dJi3/GyUy/xwk
+        O/8dJjv/HSY7/xwmOv8bJDn/GiI4/xojOP8aJDj/GyU5/xsjOf8ZIjf/GSE3/xkhNv8ZIjf/GSI3/xki
+        N/8ZITf/GiEx/xskK/8cJCv/GiEo/yczPv8tPEf/FRwi/woOEv8NERT/FyAm/yYzPP8aIin/FRwh/xYe
+        Je0eJi5tMjxBBykyOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkLDQADRccACApMDIYISjFFR0j/xYdI/8iLjb/ICw0/w4T
+        F/8LDxL/DxQX/yIuN/8tPEj/OEpX/0ZdX/84S2r/EBW8/wAB9f8CA/D/AwTs/wME7P8DBOz/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwPw/wAB9/8EBd7/HiiS/0BW
+        ZP9SbHH/Tmh2/ztPX/8lMj//JjJT/yQwTP8aJC3/Ii42/zlNW/9JZHH/T2pv/0dfZ/8vQHP/FRyt/wUH
+        1/8AAPT/AQH5/wIE8v8DBe7/AwXu/wMF7v8DBe7/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAbu/wQG
+        7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8FBu7/BQbu/wUG7v8FBu7/BQbu/wUG
+        7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAXu/wQF7v8EBe7/BAXu/wQF
+        7v8EBe3/BAXt/wQF7v8DBPH/AQL3/wAA+P8DBeL/DxW8/yk4gP9HX2z/VHJ3/1Nwe/9DW2r/KTlB/xMb
+        H/8YIir/JDE9/ys3Tv8pOEf/PFFe/zBBTf8YHyX/HSUt/x8pMP8bJC//GyQ4/xwlO/8cJTr/HCU6/xwl
+        Ov8cJTr/HCU6/xskOf8aIzj/GiI4/xoiOP8aIjf/GSI3/xkhNv8ZITb/GSE3/xkiN/8aIjn/GyI5/xsk
+        M/8dJS3/GyMq/xkhKP8oNkH/KjhC/xAVGf8LEBL/DBAU/xwnLv8oNT7/GSEn/xQaIP8XHybcHygwTUVL
+        WwEjLDUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAaIisAJi44FhoiKqQVHSP+FRwi/yArM/8kLzr/EBYb/wsQE/8NERT/HSYt/zFA
+        S/83SFb/Q1pf/ztQZP8TGq//AADz/wIC8f8DBOz/AwTs/wME7P8DBOz/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8CA/L/AAH2/wsPyP8tPHf/SWFk/09qb/9FXGn/MD9L/yYw
+        Sf8jL0T/GyYz/yEuOf80RlP/SGFx/1Fsb/9HYGv/L0B5/xMZrv8EBeL/AAD1/wEB+f8DBPD/AwXt/wMF
+        7f8DBe3/AwXu/wMF7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG
+        7v8EBu7/BQbu/wUG7v8FBu7/BQbu/wUH7v8FB+7/BQfu/wUH7v8FB+7/BQfu/wUH7v8FB+7/BQbu/wUG
+        7v8FBu7/BQbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF
+        7v8EBe3/BAXt/wMF7v8CAvb/AAD3/wID5/8NEr7/KDZ+/0Zdbf9RbnH/Tmt4/ztQYP8gLDP/FBof/xgf
+        Kv8mMkP/KDRE/xsjK/8YISb/Higv/x4oL/8cJTD/GyQ2/xskOf8bJDn/GyQ5/xskOf8bJDn/HCU6/xwl
+        Ov8bJDn/GyQ4/xsiOP8aIjj/GiI3/xkiN/8ZIjf/GSE3/xkhN/8ZITf/GiM4/xskOv8cJTP/HCUs/xoi
+        KP8YISf/KzlE/yYzPP8NEhX/DA8T/w4SFv8gLDT/Iy84/xQbIP8UGyH/GSEpwCQuNikWHScAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgy
+        PAAqND0HHygxchcfJvAVHCL/HSUt/yUxOv8TGyD/Cw8T/wwQE/8aIyn/KThE/zNFUv9CV1//PlNh/xki
+        o/8BAu//AgLz/wME7P8DBOz/AwTs/wME7P8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBOz/AwTt/wIC9P8BAe7/EBa1/zVGcv9Qamv/T2p1/z1RYP8pNUb/JC5E/yQuSf8cJTD/KDc//0Ja
+        aP9QbHT/TWhr/zZKcP8YIaH/BAbg/wEB9f8CAvb/AwTw/wMF7P8DBe3/AwXt/wMF7v8DBe7/BAXu/wQF
+        7v8EBe7/BAXu/wQF7v8EBe7/BAbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BQbu/wUG7v8FB+7/BQfu/wUH
+        7v8FB+7/BQfu/wUH7v8FB+7/BQfu/wUH7v8FB+7/BQfu/wUH7v8FB+7/BQfu/wUH7v8FB+7/BQfu/wUH
+        7v8FB+7/BQbu/wUG7v8EBu7/BAbu/wQG7v8EBu7/BAbu/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF
+        7f8FBez/AwXu/wID9f8BAvX/AgTo/xAVsf8tPHr/R2Bq/1Fvcv9KZXX/NEdV/xghJ/8UGiL/JC89/ys3
+        Sv8jLDr/GyUr/x0mLv8dJy7/HCUu/xskNP8bJDr/HCQ6/xwlOv8cJTr/HCU6/xwlOv8cJTr/HSY7/xwl
+        Ov8cJDn/GyQ5/xsjOP8aITb/GyI4/xojOP8aIjf/GiI4/xoiOf8aIzj/HCUw/xwmK/8ZISj/HCYt/y49
+        Sf8gKTH/DBAT/wwQE/8RFxv/Iy44/x0nLv8TGh//FR0j+xwmLZEpNDsQKDM6AAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALDY/AAkSHQAfKTJEGiMq2BUd
+        I/8YIin/JzM+/xggJv8MEBP/CxAS/xQbIP8rOUT/MUJR/0BWX/9FXFz/Iy6b/wMD7v8BAvP/AwTs/wME
+        7P8DBOz/AwTs/wME7P8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTs/wME7P8DBO3/AQL2/wIC
+        6v8YH6X/P1Nk/1Fsbv9MZXT/NkhV/yYyQf8lMEv/HSU5/x8qMf84S1f/TGZz/1Bsbv89U23/ISyT/wgL
+        zf8BAfP/AQL1/wME8f8DBe3/AwXt/wMF7f8DBe7/AwXu/wMF7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF
+        7v8EBu7/BAbu/wQG7v8EBu7/BQbu/wUG7v8FBu7/BQfu/wUH7v8FB+7/BQfu/wUH7v8FB+7/BQfu/wUH
+        7v8FCO7/BQju/wUI7v8FCO7/BQju/wUI7v8FCO7/BQfu/wUH7v8FB+7/BQfu/wUH7v8FB+7/BQfu/wUH
+        7v8FBu7/BQbu/wQG7v8EBu7/BAbu/wQG7v8EBu7/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAXt/wQF
+        7P8DBe//AgT0/wAB9f8EBdz/GCCg/zZJfv9KZHj/Um6A/z9WZf8RFhv/Cw8S/x8pNf8tOk3/JzI//xoi
+        Kf8cJiz/Hict/x0mLv8bJDT/HCU6/xskOv8bJDn/HSY7/xwlOv8cJTr/HSc7/x0nO/8dJjv/HSY7/x0l
+        O/8cJTn/HCU6/xskOf8aIzj/GiI3/xkhNv8ZITj/GiI3/xwlMP8cJiz/GCAm/x8oMv8vPUn/HCQr/wwQ
+        FP8NERT/FBwh/yQyO/8aIyr/Exkf/xYeJekdJy5gNkRMAyYyOQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3QUEAHCYyACgyOh4dJi6zFx4l/xcfJf8kMTv/ICs0/w0R
+        Ff8MEBP/Exke/yg2QP8xQVD/PVJe/0ZdW/8tO4P/Bwnj/wEB9v8DBOz/AwTs/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTs/wME7f8BAfb/AwTh/x0nlP9EW2b/Umxx/0Zd
+        bf8wP03/KTNB/yErOf8ZIiz/KDdB/0NbaP9QbHL/R2Fi/ys7g/8NEcD/AQHv/wEB+P8CA/H/AwXt/wME
+        7f8DBe3/AwXt/wMF7v8DBe7/AwXu/wMF7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBu7/BAbu/wQG
+        7v8EBu7/BQbu/wUG7v8FB+7/BQfu/wUH7v8FB+3/BQjt/wYI7f8GCO3/Bgjt/wYI7f8GCe7/Bgnv/wYJ
+        7/8GCe7/Bgnt/wYJ7f8GCe3/Bgjt/wYI7v8FB+7/BQfu/wUH7v8FB+7/BQfu/wUH7v8FB+7/BQbu/wQG
+        7v8EBu7/BAbu/wQG7v8EBu7/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAXt/wQF7f8DBe3/AwXt/wMF
+        7/8BAvb/AAD4/xcesf9GX3P/Tmt6/0VbbP8vOUb/ERcb/wkOEP8UGyL/KTVC/yw4Rf8cJi3/GiMp/x0m
+        LP8cJi7/GyQz/xojOP8bJDr/HSY7/xwmOv8cJTr/HSU7/xwmOv8dJjv/HSY7/x0nPP8eKD3/HSY7/xsk
+        Of8aIzf/GiI3/xkiN/8ZIjf/GSE4/xoiNf8cJC7/HCUr/xkhKf8lMDr/MD9K/xQaIf8LEBP/DBAU/xsl
+        LP8lMTr/Fh0j/xQaIP8ZISfKIy00MAcRGgAxOkEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAhLDUAJzM/BR4oMXUYISnyFh0j/x8pMf8kMDn/Ehcc/w0RFP8NERX/JC84/zFC
+        T/87Tlz/R2Bd/zNEef8KDdP/AAD0/wME7f8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBOz/AwTu/wEB+P8FB9j/Ii2C/0ZdY/9OaHD/Qldn/yw5Rv8oM0D/ISo1/xwk
+        LP8xQk7/SWRw/05pbP89Um3/GyWX/wQF3P8BAff/AwPx/wME7f8DBe3/AwXt/wMF7f8DBe3/AwXu/wMF
+        7v8DBe7/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAbu/wQG7v8EBu7/BAbu/wQG7v8FB+7/BQfu/wUH
+        7v8FB+7/BQbw/wQF8v8DBPL/AwT0/wME9v8DBPb/AwT2/wME9v8DBPX/AwTz/wME9P8DBPX/AwT2/wME
+        9v8DBPb/AwT1/wQF8/8EBfL/BAbx/wUI7/8FB+7/BQfu/wUH7v8FB+7/BQfu/wUG7v8FBu7/BAbu/wQG
+        7v8EBu7/BAbu/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF7f8DBe3/AwXt/wMF7f8BAvX/CArj/zNE
+        k/9QbHb/Q1tq/yUwOv8wO0n/NUJR/x0mLv8KDhH/DxUZ/yYwO/8oND//ICoy/xwlLP8eJy3/Hicu/xwl
+        M/8cJTn/HCY7/x0mO/8cJjr/HCY6/xwmOv8dJjv/HSY7/x0mOv8eJzz/HSc8/x0mO/8cJTr/HCU6/xsk
+        Of8aIzj/GSE4/xoiOf8bJDb/HScu/x0mLP8aIin/KTZB/yw6Rv8RFhr/DA8T/w4SFv8fKjL/ICoy/xUb
+        If8VHCL6GiIqlSErNA4cJS0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAVHyYAIyw2PhojK9sVHSP/GiMp/yUyO/8WHiP/DREU/wwQE/8cJy7/Lz5L/zhKV/9HXWH/PFBl/xMZ
+        uf8AAfX/AgPu/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7f8DBO3/AwTs/wME
+        7P8DBO7/AAH5/wUH2P8nNHz/SmJj/01ncv8+U2P/KzhF/yYwP/8VHyf/FR8o/zVIWP9MZnH/SWNj/y08
+        dv8OEsH/AQLv/wEC9f8DBO7/AwTt/wMF7f8DBe3/AwXt/wMF7f8DBe7/AwXu/wMF7v8DBe7/BAXu/wQF
+        7v8EBe7/BAXu/wQF7v8EBu7/BAbu/wQG7v8EBu7/BQbu/wUG7v8EBvH/AwT0/wEC9/8AAfr/AQHz/wUH
+        7P8GCO//CAvo/wsP4v8NEeT/DRLn/w0R5v8OEt7/DhPS/w4T1f8NE9//DRHm/wwR5P8MEOH/CQ3j/wUI
+        7P8FB+3/AgTu/wAB+f8BAfn/AwT1/wQF8v8FB+//BQfu/wUH7v8FB+7/BQfu/wUG7v8EBu7/BAbu/wQG
+        7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQF7v8EBe3/AwXt/wIE8f8BAvH/Ii6p/09rcP9NaHf/LTtG/xYc
+        Iv8dJS3/KzZC/zRBUP8lLzr/DhQX/wsQEv8bJC3/MT5N/yk0QP8dJi3/ICkx/yAqMf8eKDX/HCY7/x0m
+        O/8dJjv/HSY7/x0nO/8dJzv/HSY7/xwmOv8dJjv/HSc8/x0nPP8dJzz/HSY7/xwlOv8bJDn/GyM4/xsk
+        Of8bJDr/HCUz/xwmLP8aIin/HCQs/zBATP8lMDn/DRAT/wsPEv8TGR7/JjM7/xslLP8VHCH/Fx8m6h4o
+        MVhibm0BRE1PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkyOwApMzsUHSgxoRcf
+        Jv0XHyX/JTM8/x8oMP8NEhX/DBAT/xMaIf8rO0b/NklW/0RaYv9DWGH/HCSo/wIC8/8CA+//AwTr/wME
+        7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wMD7v8BAfj/BgfW/yg1
+        d/9LY2T/Tmdz/zpNXf8zP0r/N0NM/yAoLf83Q0v/WnF//2uIjf9XcXn/JjOQ/wQG2/8BAfb/BATy/wMF
+        7f8DBe3/AwXt/wMF7f8DBe3/AwXt/wMF7v8DBe7/AwXu/wQF7v8EBe7/BAXu/wQF7v8EBe7/BAXu/wQG
+        7v8EBu3/BAbu/wMG7v8EBPH/AgL2/wAB+/8CA+//Bgjg/wsQ1v8SF8r/GyKz/yk2lv8uPpz/OUuE/0Vb
+        af9KYnH/TWd3/05oeP9QaXn/UGt5/1FsfP9Qa3v/Tmd3/0tjcf9IX2r/QFRv/zFBlf8sOpn/ISuj/xYc
+        xv8QFdH/CQvf/wME6/8AAPv/AQP3/wQF8f8EBu//BQfu/wUG7v8FBu7/BAbu/wQG7v8EBu7/BAXu/wQF
+        7v8EBe7/BAXu/wQF7f8EBe3/AwXv/wEB9v8UGs7/Rlx4/1Jrcf84S1n/HCUs/x0kK/8eJy//HCQs/yAp
+        Mv8zQE//LTlE/xQaHf8LDhD/GiEn/zA7Rv8lMDj/HCYt/yArMv8hLDP/Hik3/x4nPP8eJzz/HSc7/x0m
+        O/8dJjv/HSY6/xwmOv8cJTr/HCU6/xwkOv8dJjv/HSc7/x0mO/8cJTr/GyQ4/xsjOP8aIzj/GiM4/xoj
+        L/8bJCr/GiIp/yIuNv8zRFD/GyMq/wsOEv8NERX/GiIp/yYzPP8aISf/Fx8l/xsjLL0lLjYmJC01AC48
+        QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKjQ5ADhCQgMhKzRkGSIq7RYdJP8gKzP/JTI6/xEX
+        G/8MEBP/DxMX/yQvOf8xQU7/PVFd/0hgY/8oNI//BAXp/wEC8v8DBOv/AwTs/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwPt/wEB+f8GB9n/KDV7/0tlZf9PaHT/Okxc/ygy
+        PP8vNj7/LjQ4/1tqcv+ivcj/s9LO/46nt/87RcH/BQbp/wID9f8GCO//Bgft/wUF7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7v8DBO7/AwTu/wME7v8DBe7/AwXu/wQF7v8EBe3/BAXt/wQF7v8DBe//AgTz/wEC
+        +f8DBOz/Cg3T/xceuv8kL53/MD2C/zxNbf9JXFr/TWJf/05kYf9OZGP/UGdm/1BkY/9PY2L/TmFf/0lb
+        Wv9IW1r/RVhX/0VYVv9IW1n/SV1b/0teXf9NYmD/TmRj/09lZf9QZWT/T2Vi/05iXP9FV2L/NkSB/yg0
+        l/8dJLX/EBTL/wMF6v8BAvj/AgP1/wQF8P8FBu7/BAbt/wQG7f8EBu3/BAXu/wQF7v8EBe7/BAXt/wQF
+        7f8DBe3/AQLz/wcJ4v80QoT/VGdg/0RTWv8iKjH/GiIo/x8pMP8fKC7/HiYy/xsjMv8eJzH/MjtK/zE7
+        Q/8cICD/DQ8O/xQYGP8mLzP/KTM6/yEqMv8gKzP/ISwz/x8pN/8fKD3/Hig8/x4nPP8eJjv/HSc7/x0m
+        O/8cJTr/HCU5/x0lOv8dJjv/HSc7/x4nO/8dJzv/HCU6/xsjOP8aIjf/GiI5/xoiNv8bIy3/GyQq/xoj
+        Kv8qOEP/Lj1I/xEXGv8LEBP/DxQY/yAqMv8iLTb/Fx4l/xgfJ/cdJzCDMTxDCikzOwAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAArNzsAICozACQvNyUdJS7BFx4k/xojKv8nMz3/GCAm/wwQE/8MERT/GyQq/zBA
+        TP82SFX/RV1g/zhKcv8MENP/AQH1/wME6/8DBOv/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wME7P8DBO3/AQH4/wQG2f8mMnv/SmJi/05ocv86TFv/KDI6/yIpLv8SFRf/KDI3/2h9
+        hf+duLT/fpW9/ykwy/8EBe3/BAT0/wcI7v8GCO3/BAbt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBe3/AwXt/wQF7f8EBe//AwPy/wEC9f8DBPP/CAvb/xsjrP8sOYj/OEl2/0VZ
+        W/9OY1j/TmNd/01iYP9KX2D/Q1ZZ/z1NUv86SU3/NkVO/zlHV/8/TWD/QE1i/zpIXP88S2L/P05o/z9Q
+        aP88TGL/O0pe/z1MYv89TGL/Pkxf/z1MVP86Sk7/RVZa/0xfYf9PZGT/UWdi/1FnXf9NYVj/QFFw/zI/
+        jv8iK6X/DRHQ/wQF7/8CAvX/AwTz/wQF7/8EBu3/BAXt/wQF7f8EBe3/BAXt/wQF7f8DBPD/AgL1/yMr
+        p/9OYV7/TmBh/yw4QP8ZICb/Hicu/x8pMP8eJzL/HiY5/x0lO/8bIzT/HSYw/ys2P/82Qk3/ISUr/wsL
+        Cv8SFBX/LzY7/y85Qf8eKDH/Iiw0/yEqMv8fKDX/Hyg8/x8oPv8fKD3/Hic8/x0nO/8dJjr/HSY7/x0m
+        O/8dJzv/HSc7/x0mO/8dJjv/HSY6/xwlOv8aIzj/GiI3/xoiOP8aIjP/GiMp/xkhKP8aIyr/Lz5K/yMu
+        N/8MERT/DBAT/xQaHv8lMTv/HScv/xYcI/8aJCvXIy03PgADDAApMzwAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAlMDcALjpABSAqMoEYICf6Fh0j/yMvOP8jLTb/DREW/wwPE/8VGyD/Lj1I/zRGU/9BV1//QVdf/xce
+        tP8BAfX/AgPv/wME6/8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME
+        7f8BAvb/AgTh/yEtgv9IYGD/Tmdx/ztOXP8sN0D/Iyks/xMYGf8nMDX/RFVY/0dZUf9ATH3/GBzS/wEB
+        8/8FBPD/CAjt/wcH7f8EBe3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wMF
+        7f8DBe3/AwTv/wID9P8BAvX/BQbo/xAVuP8nM4v/OUp1/0dbXv9OZFX/TGFZ/0lcXf9HWF//OklT/zE+
+        Sv8yP1T/N0Rg/zpJaP84Rl3/MD5U/zI/Vv8tO0z/KjdF/yo3Rv8qNkf/KTZH/yk3SP8pNkb/KTZF/ys5
+        Sf8tO03/M0FW/zhGXP84R13/QE5t/z1MaP84RVn/OEZP/0JUXf9NYWb/UGRh/1JnWP9NYlv/QlR0/zA+
+        hv8YHqz/CQvf/wID9P8CA/X/Awbw/wQF7f8EBe3/BAXt/wME7v8BAff/ExfM/0VWbv9TZ2H/OUhP/xoj
+        Kf8dJSz/ICkv/x4nLv8dJjb/HSU7/x0lO/8dJjz/HCU3/x0mMf8pMz//ND5L/yAmKv8KDQv/EhQT/ycv
+        Mf8mMDf/ISoz/yArM/8gKzH/Hyg1/x8oPP8fKD3/Hig8/x4nPP8dJjv/HSY7/x0mO/8dJzv/HSY7/x0m
+        O/8cJTr/HCU6/x0mO/8cJjv/GyQ5/xsiN/8ZIjf/GiIw/xskKv8YICb/Hyky/zNDT/8aIin/Cg4S/w0Q
+        E/8cJi3/IzA5/xcfJf8XHyX+HygxoikzPBAiLDUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcJSsAISs1Mxwl
+        LNcXHiT/GiMr/yYzPf8TGB3/DBAT/w4SFv8mMz3/NEZU/z9UYf9GXl3/JjOR/wME7P8CA/L/AwTr/wME
+        6/8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wID9P8CAun/HCWV/0de
+        ZP9OZ3H/PlJh/ygzPf8eJCf/ExUX/yo0Of9FVlj/RVdO/yo2b/8ICcn/AQHy/wQF8P8HCe3/Bwft/wQE
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wMF7v8CA/T/AQL2/wgK
+        5f8WG7r/LTp7/0FUYP9LYlv/TWJZ/0VZWv9BUl3/OUha/zM/Uv80P17/NkVq/zRCYf8uO1H/JjND/yQw
+        Pv8oNkL/KThE/yc1QP8jMTj/Ii4z/yMvM/8jLjH/ISst/yErLv8jLjH/IzAy/yIvM/8jMTj/JzU//yo5
+        RP8qOUb/JTJA/yUxPv8tOk7/N0Zg/zxLbf9BUG3/PUxf/0JTYf9MYGf/T2Nb/1FnXP9LXmT/O0py/x8n
+        q/8KDtz/AgPz/wID9v8DBO//BAXt/wEC9v8GCOX/NEKE/1NoXv9FV1z/Iywz/xsiKf8gKTD/Hygu/x0m
+        Mv8dJjr/HSU6/x0mOv8dJjv/HSY7/xwlOf8bJC//Iy00/zQ/S/8kKi//DA0M/w4REP8iKCz/JzE4/yEq
+        Mv8hKjL/Hykx/x8oN/8fKDz/Hig8/x4nPP8dJjv/HSY7/x0mOv8dJTr/HSY6/x0mO/8cJjr/HSY6/x0m
+        O/8dJjz/HSY7/xwkOf8aIzn/GiI4/xokLf8bJCv/GSEn/ys4Q/8vPUn/FRse/wwQFP8PFBj/JDA5/x4p
+        MP8WHSP/GyQr6SAqNVEXICUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC44PQAuOT4LHigykRcfJ/wXHiX/JDE7/xwm
+        LP8NEhX/DBAT/xggJ/8vP0v/O09d/0hfYP83SXL/Cw/Q/wAB9v8DBOv/AwTr/wME6/8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AgPw/wAA7v8UG6P/Q1hk/1BocP9BVWb/KjhC/x4m
+        Kf8QExT/JS8z/0VYWv9EVk//JzJx/wcJ0f8BAff/AwTw/wQF7f8EBu3/BAXt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO7/AQPz/wAA+f8FB+X/Fh23/zJAff9FWF7/TGFb/0pe
+        W/9AU1f/Okla/zVCXP8vPFr/NURw/zVDZ/8pNUv/ISw3/yUxO/8lMzv/IS0y/yMtL/8nMTP/KTQ0/y02
+        Nv8qNDX/JzM6/yo2Qf8qOUX/LDtH/ys6Rv8rOkX/KjhC/yg0Pv8qMzf/Ljc3/ys0Nf8oNDX/JTAx/yIt
+        MP8lMjr/JjM9/yMuOP8rOUv/NENg/ztKa/9CT3D/Q1Jp/0VXZf9KXl7/Umhd/05jYP89TXH/HiWs/wgK
+        3P8BAfb/AgH4/wEC9/8iK67/T2Ji/09iYv8uOUH/GiEo/yAoL/8gKS7/HSYv/x4nOv8eJjv/HSY6/x4m
+        O/8dJjr/HSY6/x0mO/8dJjn/GyMu/yQsNf82QU//Iyov/wsNDP8OERD/KC8y/ys1Pf8gKTL/ICox/x8o
+        Mf8eJzj/Hyg9/x4nO/8eJzv/HSY7/x0mOv8cJTr/HCU6/x0lOv8dJjr/HSU6/x0lOv8dJjv/HSY6/x0m
+        Ov8cJTr/GyQ6/xojM/8cJSz/GyMp/xslLP8zQk//LDY9/wwQE/8MEBT/GCAn/yUyPP8ZISb/Fx8k/x0m
+        L7QpND0aKTQ9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAKzU7ABUdJwAkLTVDGyQs3hUcIv8dJy//JjE7/xEXGv8MEBP/EBUa/yk1
+        QP80RVL/Qlde/0NYYf8ZIrD/AAD3/wMD7v8DBOv/AwTr/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wME7P8DA+7/AAD3/w4Ts/88T2D/UGpt/0RZaf8sOUP/Hycr/xIVF/8nMDb/Q1VY/0VX
+        Tf8mMHb/BQfY/wEA9/8DA+7/AwTs/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO3/AwTt/wME
+        7f8DBO3/AwTt/wID8P8BAfn/AgPt/w8Uu/8sOH3/RVlY/0xiXf9IXFv/OktP/zI/Uv8yP2T/LDlg/y89
+        Zv8rOlX/Hyoy/yAqL/8jLzP/JTE0/ycyNP8rNTX/LDc8/ys8TP8mOUz/IzxZ/y1Ka/8rTnb/KlKG/ypV
+        iv8oVo7/KFeQ/yhWlP8nVpL/KVWL/ylTh/8rT3z/Lktr/yZAYP8lOVH/KT1O/yo4Q/8qNDX/KDI0/yQv
+        M/8kMDX/Ii4z/x8qMf8tOlT/NUNl/zNBXf88TGb/QlJi/0tdYP9SZmL/UGNa/zhHc/8ZILL/AwPp/xAT
+        zv9EVHH/VGhl/zlIT/8aIij/GyQq/x8pL/8eJy3/HSU2/x8oPf8fJzz/Hic7/x4nO/8eKDv/Hic7/x4m
+        O/8eJzv/HSU5/xsiLf8jLTT/NEBO/yIpLv8MDgz/FRcX/ygwNf8mMDj/Hygw/yApMP8fKDL/Hic5/x4n
+        PP8eJzz/Hic8/x0mO/8cJTr/HCU5/xwlOf8dJTr/HCU5/xwlOf8dJjv/HSY7/x0mO/8dJjv/HCU5/xsj
+        OP8bJDD/HCUr/xghKP8jLzj/LjxH/xEWGv8MEBP/DhIW/yMtNf8gKjL/Fh0j/xojKu4iKzRgVoeWACYx
+        OwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAJjA4ACs1PQ8dJi6ZFx8l/RcfJf8mMjz/GSEn/w0RFP8LEBP/HCUt/zFATP88Tlr/RVxb/yw6
+        g/8FB+T/AQHy/wME6/8DBOv/AwTr/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME
+        7f8BAfb/CQzJ/zJCb/9PZ2v/S2Jx/zJDTv8gKCz/DxMU/yQsM/9BUlj/RVhN/ys2b/8HCdL/AAD2/wID
+        7v8DA+z/AwPt/wMD7f8DA+3/AwPt/wMD7f8DA+3/AwTt/wME7f8DBO3/AwTt/wME7f8DBO7/AgL0/wAA
+        8v8JDM7/JC+S/z9RWP9LYFb/SFxe/zpLUf8wPEv/LTpb/y05Y/8tOmH/JDBC/xwnKP8jLjH/Iiwx/yIt
+        L/8qNTf/LTxK/yM+YP8lSXj/KleQ/yxhoP8rZaj/K22+/ypvyP8pcs7/LHTM/y91zf8vdcX/LnTB/y51
+        yv8tddL/LXTN/yx0zP8tddT/LHPL/y9yy/8xb7b/MWmr/y1dnP8lTHf/JT5g/ys8Tv8tNjr/KjQ5/yYy
+        OP8jLzT/Higs/yUxPP8sOVH/MT5c/z5Ma/9CUWH/Sl1g/1JnYf9KXF//LzqF/zZCfv9SZmP/Rlhe/yIs
+        Mv8ZICf/ICgv/x8oLv8dJTL/HiY6/x8nO/8eJzv/HiY7/x4nO/8fKDv/Hyc8/x8nPP8eJzv/Hic7/x0m
+        Of8cJC//JC83/zVATf8iJyz/DAwM/xIVFf8lLTH/JS83/x8pMP8gKjD/Hycx/x4nOv8fKD3/Hyg8/x4o
+        PP8dJzz/HSY6/xwlOf8cJDn/HCU5/xwlOf8cJTn/HCU4/xwlOf8dJjr/HSY6/xwlOv8bJDf/HSYv/xsk
+        Kv8bIyr/LDpE/ys2Pv8UFxr/Cg4S/xQaH/8lMDr/GSAo/xYeJf8cJi64JjA7HCQtNwAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApMTwAAAAAACEq
+        M0YZISnfFBog/x8qMv8gLDT/EBUZ/wwPE/8TGB3/JjI9/zREUv9DV1z/P1Jn/xAVw/8BAfb/AwPs/wME
+        6/8DBOv/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wME7P8DBOz/AwTs/wEC8/8DA9n/JzN7/01l
+        Y/9MZHL/OkpZ/yMsMP8RFBT/Hycq/z9PVf9FWE//LTps/wgL0P8AAfb/AgPu/wID7f8CA+3/AgPt/wMD
+        7f8DA+3/AwPt/wMD7f8DA+3/AwTt/wME7f8DBO3/AwTt/wME7/8BAfb/AgLx/xMarf82RWj/SV5X/0tg
+        Xf9FVl//NEBS/yw3Xf8sOGT/JzNR/yEsPf8bJij/ISot/yozOP8rNTn/KDU+/yZBYv8qVJH/MGev/y1v
+        vv8rcc7/L3fY/zJ60v8zedH/MXbP/zJ5yv8wdcP/LnHA/y5xyv8tcML/LXG//y5xwf8uccD/LnHE/y5z
+        w/80es7/OoHa/z2D4P8+huL/QIji/zSB2/8tdc3/MnHF/y9ts/8pWZL/J0Rr/yo7Sv8qNDr/KjQ4/yYz
+        N/8eKS7/IS04/yk1TP82RWX/PUxq/0dYZ/9PYmT/UWVe/1BkYf9NYWj/LzpD/xogJv8fJy7/ISkv/x8n
+        L/8eJjj/HiY7/x4mO/8fKDv/ICk9/x4mO/8eJjv/Hic7/x4nO/8eJzv/Hic7/x4nPP8eJjr/HCQv/yUw
+        OP80QEv/HyQn/woMCv8TFxf/KDA1/yQvN/8fKDD/Hygv/x4nNP8fKDz/Hyg8/x4nO/8eJjv/HSY6/x0m
+        Ov8cJTr/HCU6/x0mOv8dJjr/HCU6/xwlOv8cJTr/HCU6/x0mOv8dJTv/HSY0/x0mLf8ZIif/ICoz/zJB
+        TP8bIyj/Cg4Q/w0RFP8cJCz/Iiw1/xYcI/8aIiryISozYz5KWAImLzkAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiLTYAKzY/DB4nL5kVHCP/FRwj/yIt
+        Nv8YICb/Cw8S/wwQE/8fJy//MUBN/ztOWP9FW1v/JjSO/wID7/8CAvD/AwTr/wME6/8DBOv/AwTs/wME
+        7P8DBOz/AwPs/wMD7P8DBOz/AwTs/wME7P8DBOv/AgPy/wEB6/8cJJH/SV9g/09ncv88Tl3/JjE4/xMX
+        F/8XHR//O0tQ/0dZUv8vPGf/CQzM/wAA+P8CA+//AgPs/wID7f8CA+3/AgPt/wID7f8DA+3/AwPt/wMD
+        7f8DA+3/AwTt/wME7f8DBO3/AgPy/wEA+P8HCtP/Iy6K/0FTXf9MYVj/RFdY/zZDUP8rNVX/Lztu/yk2
+        Wv8eKTf/HScq/yIsLf8pMjf/JzM+/yc+Wv8nUIb/KmSw/zJ2zP83fd7/NH7Z/zF5z/8uc8b/MHbI/zN4
+        x/82esX/NXrL/ziC1f8zeMr/MHLB/zByxf8vc8T/L3HE/y9wwf8ucb//LnHC/zJ1xP86ftD/PYPe/z+E
+        3/8+hOH/PYPe/zR8zv8vdcj/NXzU/zSA2f8ues7/LW/B/yplrf8mU4n/J0Ri/yk3QP8rNj3/JzI1/x0o
+        LP8fKjP/KjdN/ztKbf8/Tmb/TF1r/1Bka/87SlP/HiUs/x8lLf8iKzL/ICgv/x4mNv8eJzz/Hic7/yAn
+        O/8hKj7/ISs+/yAoPf8eJzz/HiY6/xwmOv8dJjr/HSU6/x0lOv8dJTv/HSQ3/xsjLP8lLzj/NkBM/x0i
+        Jf8KCwr/GR4e/ykxOP8jKzT/ICkw/x8pMP8dJjX/HSU7/x0mOv8dJjv/HSY7/x4nO/8eJzv/Hic7/x0m
+        Ov8dJTr/HSY6/x0mOv8cJTn/HCU6/xwlOf8cJTr/HCU4/x0mMf8cJCr/GCAm/yg1Qf8lMjz/DRIV/wsO
+        Ef8UGyD/JTE6/xkiKf8WHiT/HCUuuCUxOhYeJzIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZIikAICkzPBojKuETGh//HScu/x8qMf8OEhX/Cw4S/xIZ
+        Hv8sOkX/OEhW/0VbXf87TWn/DhPL/wAB8/8DA+z/AwTr/wME6/8DBOv/AwTr/wME7P8DBOz/AwTs/wME
+        7P8DBOz/AwTs/wME6/8CA+3/AAD0/w4SuP8/UWb/U2xw/0FVZv8qNj//Fxwe/xMWGv80Qkj/RlhT/zZF
+        Xf8NEMD/AAD3/wEC8P8CA+z/AgPt/wID7f8CA+3/AgPt/wID7f8CA+3/AwPt/wMD7f8DA+3/AwTs/wME
+        7P8CA/L/AQHy/w8UwP8vPG//R1xS/0tgYP8/T1X/MTxU/y05cP8oNGn/HSg5/xslKP8hLCz/KjM4/yc1
+        Qf8rSGj/Klyd/ytrwP8xdtD/M3zT/zN6zv85f9b/NHnO/y5zxf8udML/MHrJ/zR9zP84gNL/NX7Q/zd+
+        0/82e8//NHfE/zR3xv8ydMj/MHLB/zB1xf8yc8T/NnrL/z2D1v9AhNT/PoXa/z6D3v8+hdz/PYTa/zN7
+        zf8vcsX/M3bK/zN4xv8vdMD/L3XD/zB2zP8udcr/LG/B/yhblv8rSGj/KTpJ/yk0Of8iLC7/HCYq/x0n
+        M/8vO1v/QU90/0JSZv8kLTP/GyIn/yIrM/8gKjH/Hyc0/yAnPP8fJzz/HyY7/yEqPf8jLED/ISw//yIr
+        QP8hKj7/Hyg8/x4nO/8dJjr/HSY6/x0mOv8dJTr/HSU6/x0lNf8cJSz/KDM8/zU/SP8XGhz/CgsK/x0j
+        JP8pMjj/ISoz/x8oMP8dJi7/HSM2/x4mO/8dJjr/HSY6/x4mO/8eKD3/Hig8/x4nO/8dJTr/HSU6/x0m
+        Ov8cJjr/GyQ5/xskOf8cJTn/HCU6/xskNf8cJiz/GiIn/x4oMf8vPkj/GSEm/woOEf8MEhX/Higv/yMt
+        Nv8VGyH/GSIq8iEqM1kSHCIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAACs2OwAuOT4DHygxihcdJPwWHST/ISw1/xghJv8LDxL/DBAT/x0mLv8yQk//PVBb/0Vb
+        W/8gKqT/AgLw/wEC7v8DBOv/AwTr/wME6/8DBOv/AwTr/wME7P8DBOz/AwTs/wME7P8DBOz/AwTr/wME
+        6/8BAvX/BAbW/y49cP9Ra27/TWN0/zJATf8aICP/DhAS/y86Q/9FV1f/Pk5R/xYdpv8BAfT/AQLy/wID
+        7P8CA+z/AgPt/wID7f8CA+3/AgPt/wID7f8CA+3/AwPt/wMD7f8DA+3/AwTs/wEC8/8BAe3/Fhul/zpK
+        Xf9KX1f/R1pc/zhGVf8uOWH/LDhy/yYzWv8ZIiv/Hico/yYuLv8pN0H/JkVo/ylcmv8vdc//NH3c/zJ3
+        0f80d8n/MXjE/y9yxP82fNH/N37Q/zB0xP8wc8T/NHvL/zyB0/9Bht7/N3zT/zl+1P86gNT/N33R/zR7
+        0P81ecv/NHjH/zR7zf89gNP/Q4rf/0KO5/9BieD/P4XV/z2C2v89hNv/PoTb/zqB1P80ecn/MXfI/zJ7
+        zP8tccD/L3O8/zB1wv8vdMP/L3bG/y53yP8scb//KmGj/ylMdf8pO0v/JzAx/x4nKf8aIyj/JjFD/zA8
+        YP8nMEf/Hygu/yIqL/8iKzP/Iio3/yEqPf8gKDz/HyY7/yAoPf8hKT7/ISk9/yIrP/8iLD//Iis//yIq
+        Pv8fJzz/HiY7/x4mOv8dJTr/HSU6/x0mO/8dJTX/HSUs/yw1P/8vOD//ERQV/wwNDf8jKi3/KTQ7/yAp
+        Mf8fJy7/HSUx/x0mOf8dJjv/HSU6/x0mOv8eKDz/Hig8/x4nO/8dJjr/HCU6/xwlOv8bJDn/GiM3/xsj
+        N/8cJDr/GyQ4/xojN/8cJC//HSUr/xkhKP8qOEL/JjE7/w0RFf8KDhH/FBsg/yIsNf8ZICb/Fx4k/x4m
+        L6skLzcRJC83AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMu
+        NQAjLjUwGyQr1RYbIf8eJy//JTE6/w4TFv8MEBT/EBYY/ys5RP82RVL/Q1ha/zREcv8LDtf/AQLz/wME
+        6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME7P8DBOz/AwTs/wME7P8DBOv/AwTr/wID8f8BAe//HCSQ/0ti
+        Y/9RaXX/Pk9f/yIqL/8NDxD/JSw0/0RVV/9BUkv/HyiP/wIC8f8BAvT/AgPs/wID7P8CA+z/AgPt/wID
+        7f8CA+3/AgPt/wID7f8DA+3/AwPt/wMD7f8DA+7/AQH2/wQE6f8bIpn/P1BW/0pfW/9BUlr/MDxK/yw3
+        Xf8rN2r/HSY9/xojIv8iLC3/KTU+/yhCY/8tX5z/LXPH/zN71f81edP/NXjP/zN1yf80dsz/MHfJ/zF0
+        vv8zd8b/OoDV/zh+0P84ec3/PIDX/0GG2P9Bhdn/OX7V/z+J3f8+htz/M3fM/zF2xv82eL//NHjE/zV5
+        zv8+g9r/QIXa/z+G3/8/iOD/PoPV/z6C1/89gtj/QIXc/z+F3f83fc//MXnJ/zN8zP8vcb7/NXzN/zF3
+        x/8ucLr/LnG5/zB1xf8xdsX/MXjM/zB3y/8rZKb/KEpx/yo3Qf8mLjD/GyQl/xslL/8rN1D/MDtX/yYu
+        O/8iKjD/Iywz/yEqNv8hKTv/Hyg9/x8nO/8eJzv/ICg8/yIqPv8iKz//Iiw//yMsQP8iKz//ICk9/x8o
+        PP8eJzv/Hic7/x4mO/8eJjr/HSUy/x8nL/8xO0T/KjI3/wwNDf8RERP/KC81/ycxOf8fKTD/Higv/x0m
+        NP8dJjv/HSY7/x0mOv8eJzv/Hic8/x8oPP8fKDz/HCU7/xwlOv8bIzj/GiM3/xsjN/8aIjj/GiI3/xsj
+        N/8bIzT/HSUs/xoiKf8fKDH/MUFN/xYeJP8LDhD/DA8T/x8oMP8gKjD/FBog/xoiKeQhKjNIGSErACw5
+        PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJi83ADxCSQIeKDByFx8m9Rcd
+        I/8kLzf/HSUs/wsPEv8NEBT/HCUr/zA/TP88T1z/RFlX/x4mpv8BAfD/AgPt/wME6/8DBOv/AwTr/wME
+        6/8DBOv/AwTr/wME7P8DBOz/AwTs/wME6/8DBOv/AwTt/wAB8/8OErL/P1Bn/1Jrc/9FWWn/KzY//w8T
+        FP8YHR//PU1S/0RVSv8pM3n/BQbg/wAB9f8CA+z/AgPs/wID7P8CA+3/AgPt/wID7f8CA+3/AgPt/wMD
+        7f8DA+3/AwPs/wMD7v8BAfb/BQbj/yIrjP9BVFb/SV5d/zxNVf8tOUv/LThk/yUwUP8XICX/GiQn/ycx
+        OP8oPlT/J1WP/y5uv/80gdn/MXvN/zZ6z/84fNH/OXvU/zd40f8ydsz/MHTE/zJ0uf80d8P/NnvU/zyG
+        3P8+g9n/PoLX/0CFzf9Bh9b/PIXb/z2H3P87gdr/MnTH/zF1xP80dsX/NnrI/zp+zf8/g9T/P4TY/z2D
+        1/8+hNT/PoTb/z2C1f8/g9P/QIXc/z2B2f83e87/NHrL/zR9yf8wcbb/OYHR/zV6x/8vcb3/L3G9/zF0
+        wv8ydL//MHXD/zR5yP8xeMr/MHbK/y1iof8qQl3/JzM6/x0pLv8XICb/JjBF/zA7Vf8nMTv/Iisw/yIr
+        Mf8hKTT/Hyg7/x8nPP8fJzz/ICk9/yEpPv8hKj7/Iis//yMsQP8iKz//ISo+/yEqPv8hKj7/ICk9/x8n
+        PP8fJzz/HiY6/x0lMP8hKjD/ND5I/yQqLv8LCgv/Fxoc/yw1O/8iLDT/Hykw/x4nMP8dJTf/HSY7/x4m
+        Ov8eJjr/Hic7/x8oPP8fKDv/Hic7/x0nOv8cJDn/GyQ4/xskOP8aIzf/GiM3/xoiOP8aITf/GyMu/xwk
+        Kv8aIyn/LTtG/yUwOf8OERX/Cw4S/xceJP8jLjb/GCEn/xcdJf0fKDGRLDg/DCcxOgAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHygyACEqNRsbIyu4FR0i/xojKf8kMDr/EBUZ/wsP
+        Ev8PExj/KTVB/zREUf9AVVn/N0ls/w4R0P8BAfT/AwPr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME
+        6/8DBOv/AwTr/wME6/8DBOv/AgP0/wME1/8sOHT/UWlp/0xic/81Q0//Fhwf/w0PEf8xPEL/RlhP/zRB
+        YP8LD8n/AAD4/wIC7v8CA+z/AgPs/wID7P8CA+3/AgPt/wID7f8CA+3/AgPt/wID7f8DA+z/AwPt/wAA
+        9/8EBtr/JC99/0RYUf9KXl//O0tV/y04TP8wPGP/Ii1E/xQcIP8rOUP/OUxh/yk1Qv8oTXb/LXXH/zSB
+        2f80f9H/MXbF/zd6zf84e9T/OHzM/zV3yf8zds3/MHPA/zR3x/85fdP/NnnO/zqA1P8/hdL/P4XY/0GF
+        0f9BhtX/P4jg/z2G2/82e9D/MHTE/zB1xP8ydcb/NnnK/z6C1v8+hdj/OoHV/zV5y/81esr/OX/T/zqA
+        1P89gNX/PYTb/zZ90P8ydcX/NHnJ/zZ/zf8ydLz/OoLU/ziAz/8zdcT/MHK7/zF0v/8xdcP/MHTB/zJ2
+        xP8zd8X/NH7U/zV9zv8sV4f/KjtJ/zpLWv8yQVL/FyAm/x8oNP80QVr/KzZE/yIrMP8iLDH/ISk0/x8p
+        O/8hKz7/Iis//yEpPf8hKT7/ISo+/yEqPv8hKT7/ISo9/yEqPv8hKj7/ICk9/yApPf8fJzz/HiY8/x4m
+        Of8dJS7/Jy83/zZASP8bHiD/CgwL/xwhI/8pMjr/ICky/x4nL/8dJjH/HSY6/x4nO/8eJzv/Hic7/x4n
+        O/8eJjv/Hic7/x4nO/8cJTn/HSU5/x0mOv8cJDj/GyM4/xoiN/8aIjj/GiMz/xskKv8aIyj/Hygv/y89
+        SP8YHSL/DBAT/w4SFv8kLzj/Higw/xUcIv8bIyzQISozLxMcJwAyO0EAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAqNDkAAAATACAqM0wYICjrFBsh/yAsNf8aISj/DA8T/wwPEv8eJy7/Lj1J/zxP
+        W/9DWFb/JC+Y/wIC8/8CAu3/AwPr/wMD6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME
+        6/8DBO7/AQHx/xYdm/9HXGP/Ump3/0FTZP8gKC3/CQwM/yUuMv9DVFL/P1BO/xcdp/8AAPf/AQLw/wID
+        7P8CA+z/AgPs/wID7P8CA+z/AgPt/wID7f8CA+3/AgPs/wID7P8DA+z/AQD3/wUG3v8kL3j/RVhM/0hc
+        Xf86SVX/LjhR/zI+Yf8dJjj/FB0j/zFATP9RXnL/UV5u/z1OY/8uPE3/KEZn/y9tuP8weND/MXTH/zh5
+        xv85e8r/NnrG/zJ2x/8zdsv/MXTI/zV6zf83es//NnfG/zh5zv88gNX/PYPa/z+D1v89gM3/O4DX/zp/
+        1f80ecr/MHPC/zB0w/8wc7//MXXC/zR5zf80d8n/MHTD/y5ywf8vcb7/MHPA/zJ1xv80d8f/M3jI/y50
+        wv8ucL//MXTF/zV6x/81d8H/N3zN/zh9zf81d8D/MXO//zF1wv8xdcT/L3G9/zB1vv80ftH/NXbC/y1S
+        dv8wQ1L/QlJh/01YY/9TXm3/PEtc/xokLf8cIy//Mz9V/yw2RP8kLTT/JS4z/yEqNf8hKjz/IitA/yEq
+        Pf8hKT7/ISo+/yEpPf8hKT3/ISk9/yEpPf8gKT3/ICk9/yEpPf8fKDz/HiY7/x4mPP8eJjf/HSQs/y85
+        Qf80PkP/EBMT/w0PD/8kKy//JjA4/x4nLv8fKC//Hyg3/x4nPP8eJzv/HiY7/x4mO/8eJjr/HSY6/x0m
+        Ov8dJTn/HiY6/x4mO/8cJDn/GiI3/xsjN/8bIzj/GiI3/xsjL/8aIif/GB8l/yw5Q/8oNDz/DREU/w0Q
+        FP8ZICf/JjA6/xgfJf8WHiX3ISoyb0dPUwMrNDoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAgKjIAJS44CB0mLpcXHiT/Fh0j/yUxOv8SGBz/Cw4R/xAUF/8qN0D/OElX/0RYXP87TG7/EBTK/wEB
+        9P8DA+r/AwTr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME6/8CAvT/BwjM/zJC
+        bv9Ram3/SmFy/y06RP8OERL/Fxwf/z1MT/9EVUz/Ji95/wQE5/8BAvP/AgPs/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AgPs/wID7P8CA+z/AgPs/wMD7P8CAfT/AwPm/yIrh/9EVlH/SVtd/zZDTP8qMkL/LjlX/xwm
+        Nf8XISr/Oklf/09aaf9PVV//TlRc/1Bcaf9EUmT/LjdC/yk+Vf8tZqX/MHfO/zV50v83e9D/NnrM/zR3
+        xP8zdcX/MnjL/zmB0P86fMn/On3R/zl9z/86f9T/PILZ/zyA1P86fMz/On7S/zZ8zv8ydcT/MXTD/zN2
+        xf8xdMD/MHK//y9ywf8vcr7/L3K9/y9yvv8vcb3/MHK5/y5xuf8vcr3/MHLB/zBywf8vcsD/L3K//zB0
+        wP8wc8D/MHPC/zBzwP8vcrz/LnG9/y5yvv8vc7//L3O9/zB6zP80dr7/L09t/zE/Rv9EU13/UFhj/01T
+        XP9PVF3/Ulxq/0JSY/8fKTT/GiIs/zA7UP8tNkX/JS41/yIrMP8hKTT/ISk8/yApPf8hKT3/ISo+/yAo
+        PP8gKDv/ICk8/yApPf8hKj//Iio//yEqPf8gKTz/Hyc7/x4mOv8eJjv/HiUz/x8oLv80P0f/KjA1/woL
+        C/8WGRr/KDA1/yErMf8eJy3/Hygy/x0mOv8eJjv/HyY7/x4mOv8dJjr/HSU6/x0lOf8dJTn/HSU5/x0l
+        Ov8cJDn/GiI3/xsjN/8bIzf/GyM5/xwkNP8dJSr/GSAm/yMtNf8xQEv/Ehgd/wsPEv8PFRj/KTU//xwk
+        LP8XHyX/HSYutiIsMxcfKC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZIS0AJS01KRoi
+        K9YVHCH/Hicv/x4oL/8PFBf/Cg4P/xgfJf8sOkX/PE9b/0VbXf8nMpH/AwTu/wID7v8DBOr/AwTr/wME
+        6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wMD8P8BAef/GyOR/0pgX/9PZXX/PE1b/xoh
+        JP8KDAz/Lzk//0VXUf8zQGD/Cw7M/wAA9/8CA+3/AgPs/wID7P8CA+z/AgPs/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AgPs/wIC8v8BAe3/GyKV/0JVUf9KXV7/OUhR/ykzQP8rNEb/Fx8n/xkkL/8+TWL/UVtn/09U
+        Xv9NUlz/S1Jc/05UXf9RWmf/QlFh/yw1Pv8nO0v/Lmak/zZ+1f85ftD/OH3O/zh7zf84fc//M3vK/zh/
+        zv87gc7/QIXa/z+D2f85ftH/O4LV/zyD1/82esz/NXvN/zV6yv80dsX/MnTB/zR1vf8zc77/M3O//zJ0
+        wP8yc73/MnXA/zFzwP8xcr7/MXO9/zBzt/8vc73/MXO7/zF0wP8xdL//MXO5/zB0wP8wc8H/L3K//y9y
+        vP8vcr//MHG6/y5xuv8vcr3/MHbE/y9qrv8sR2H/NEJI/0dUX/9NVWD/TVNd/0xTXf9MUlz/TVNc/1Nc
+        aP9GVWb/Hiox/xUdJP8uOkv/LTZD/yApL/8gKi//ICgz/yAoO/8gKD3/ICk8/yApPP8hKTz/ISk8/yEp
+        Pf8hKz7/Iis+/yIrPv8hKT7/Hyc7/x8nO/8fJzz/Hyg6/x0mLv8mLzb/QkpT/ycqLP8JCwv/HiMl/ycy
+        N/8eJy//HiYt/x4lNf8eKDz/Hyg8/x4nO/8dJjn/HSU5/x0lOf8cJTj/HCQ3/xwkOP8cJDn/GyM4/xsj
+        N/8aIzf/GiM5/xwkOP8dJS//GSEo/xoiKf8uPEj/Iis0/wsPEf8OExb/HSUt/yEsNf8YICX/GiEq6yMs
+        NEkTGicAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4rMwAsPEYAIioyZhkhKPYUGyD/JTA4/xYd
+        Iv8LDhH/CxAT/yIsM/8zQ0//P1NY/z9SZ/8TGcX/AAD1/wME6/8DBOr/AwTr/wME6/8DBOv/AwTr/wME
+        6/8DBOv/AwTr/wME6/8DBOv/AwTr/wEB9f8KDr7/OUlb/1Fobf9GWmv/KjQ8/wsMC/8cIyX/P1BR/0BR
+        Tv8XHqX/AAH0/wIC7/8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+z/AQLx/wEB
+        8P8VHJr/P1BV/0leXf87SlT/LjdH/zE8Uv8ZICr/HSY1/0RRaP9SWmf/TlNd/01TXf9NU13/TVNd/0xS
+        XP9NU1z/Tlhj/0FQYP8qMzv/JzlI/zVutP87gtr/O3/V/zl9zP85f87/NH3M/zd6zP82es3/O4PW/zyC
+        1/82ecP/OHzI/zl+0P86fc7/M3rJ/zZ8y/81ecj/NHfF/zV2wP81drv/OHm+/zd5xf83d7//NHfA/zF1
+        wv82esb/NXfC/zJzu/8yc7n/MnO8/zN0v/80dL3/MnS7/zJzu/8yc7z/MXK5/zFyu/8xc73/MXO7/zFy
+        vP8wdsP/MGut/ytEW/84Rk7/Tlxq/1BWYf9NUlz/TVNd/01TXf9NU13/TVNc/01TXP9TW2f/RFVi/xwp
+        Lv8VHST/LzxL/ygyPP8fKS7/ISow/yEpNf8gKDz/ICk8/yEqPf8hKj3/ISk9/yEpPf8hKj3/ISk9/yIr
+        P/8iKT7/Hyc7/x8nO/8fKDv/ICc8/x8nN/8eJS3/LzlB/ztESP8PEhL/EBIS/ykyNv8jLjX/Hyct/x8n
+        Mf8eJzr/Hyg8/x8nO/8eJjr/HSU5/x0lOf8dJDj/HCQ5/xwkOP8cJDn/GyM4/xoiN/8aIjf/GiI3/xoh
+        OP8bIzL/GiIo/xgfJv8pND//LjtH/w8TFv8MEBP/Ehgc/yczPf8XHyX/Fx4l+yApMIgjLDcGIio2AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAACcxOQAoMTkQHCUuphYdI/8aIij/Iis0/xIXG/8KDRD/Exkd/yk2
+        QP84Slb/Q1hY/zFAd/8GCOj/AQLx/wME6v8DBOr/AwTr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME
+        6/8DBOv/AwTw/wEB5/8eJYf/TGJe/01hb/83RlL/FRka/w4REf8yQET/RVdN/yw4bP8HCN7/AQH0/wID
+        7P8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+//AAH3/w4Tt/84SFn/SV1Y/z1O
+        V/8sNkH/MjxR/xskLv8VHST/P05j/1Nca/9OU1z/TVNd/01TXf9NU13/TVNd/0xTXf9MU1z/TVNd/09Z
+        Y/9BUF7/KzU+/yo/Vv80cLH/OoHW/zd5xf81ecH/M3nJ/zV4yP81d8j/NHjJ/zR4yP8zdcH/NnfF/zR3
+        xf84fs//N33M/zV4x/82eMf/NnnI/zZ5xP82eL7/OXrC/zp7yf86e8f/NnjD/zN3xP84gNH/OH/O/zJ1
+        wf80dsL/NXXC/zN1wv8ydb//MnS9/zF0v/8zc7v/M3S4/zJ0vf8xc73/MXO7/zR4xf8xcbb/K0ll/zRB
+        SP9MWmf/UFhj/05SXP9NU13/TVNd/01TXf9NU13/TVNd/01TXf9NU13/UVpk/0VUYf8dJzD/GCAm/zpE
+        Vf8tNkH/ICkv/yMrMv8hKTj/ICk8/yEpPf8hKj3/ISk9/yEpPf8gJzv/ICg8/yIqPv8iKT7/Hyg7/x8n
+        O/8fJzv/ICc8/x8oO/8eJjH/ISsx/zM+Rf8gJij/CQsJ/xshIP8oMjj/ICox/x8oLv8fJzb/Hyc8/x8n
+        O/8fJzv/Hyc7/x0lO/8eJTr/Hyc8/x4nO/8dJTn/GyM4/xsjOP8bIzj/GyM3/xohN/8aIjT/GiIq/xgf
+        JP8hKjL/MT9L/xghJv8LDhH/DxQY/yEsM/8dJi7/Fh0j/xskLMUkLzglJC83AAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAERkiACUuNQAjLTQ3GiIp2RQaIP8iLDT/HiYt/w4RFP8KDRH/GSEn/zNCT/88Tlb/Q1dc/xwk
+        qv8BAPL/AgPt/wME6v8DBOv/AwTr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME6/8DBOz/AQH0/wkL
+        yv84R17/UWdr/0daav8mMDb/CgsK/yEoLf9BUlP/PU1M/xEWrv8BAfT/AgPu/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AgPs/wID7P8CA+z/AgPs/wID7f8AAfb/CAnN/y88Zv9IXFT/QFFZ/zA7RP83QU//HiYv/xIa
+        IP85R1X/UFtn/01TXP9MU13/TVNd/01TXf9NU13/TVNd/0xTXf9MU13/TFNd/01TXf9OWGP/QVJj/y02
+        P/80Tmf/N3fE/zV4x/8zdsD/MnfG/zV3x/83fMv/MnbF/zJ2w/80dsP/NnjH/zR2xP82ecj/OH3M/zd5
+        yP82eMb/OHzK/zp9yf84e8b/O33M/zt/zf88f8n/PH3K/zV7yP82fsv/N3zL/zN4xP84fcv/OHvJ/zJ1
+        wf8xc7z/MnS8/zN3w/81dsD/N3nC/zp9yf82d8H/M3fF/zN3wP8uUXX/MkBJ/0ZTYP9OVWD/TFJc/01T
+        Xf9NU13/TVNd/01TXf9NU13/TVNd/01TXf9MU13/TVNc/1JbZ/9FUmP/GSMp/xwiKf83QU3/Ji83/yEp
+        MP8iKzL/ISk4/yAoPf8hKT3/ISo9/yEpPf8gKTz/ICg6/yAnO/8gKDz/ICk8/yAoO/8fJzv/Hyc7/x8n
+        PP8fJzj/Hicv/yszO/82QET/FhkY/w0PDv8mLjD/JzA3/x8pL/8fKDH/ICg6/x8oPP8fJzv/Hic6/x0l
+        Ov8dJjr/HSY6/x4nO/8eJjr/HCM4/xsjOP8cIzj/HSQ4/xsjOP8bIjj/GyIu/xkhJ/8ZISn/LTtH/yQv
+        N/8LDxH/DA8S/xYcIf8kMDj/Fh0j/xsjK+ojLTVSJC82AB0nMQAAAAAAAAAAAAAAAAAAAAAAISoyADE7
+        PwIcJS5rGB8l8hYdIv8iLDX/GB8k/wsOEf8QFBn/JC43/zREUP9AVFb/PE5n/wwO2v8BAfP/AwTq/wME
+        6v8DBOv/AwTr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME6/8DA+//AAHv/xgghv9LYGT/Umh1/z5O
+        Wv8UGBr/EhQV/zhGSv9DVUn/JC2D/wIC6P8BAvL/AgPr/wID7P8CA+z/AgPs/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AgPs/wEB9f8DBOH/JS90/0ZaS/9EVV3/MDxG/y85Rf8mLjj/FBsi/zxJWv9SW2n/TlNd/0xT
+        Xf9MU13/TFNd/01TXf9NU13/TFNd/0xTXf9MU13/TFNd/0xTXP9NVF3/Ul9r/0ZVZ/88Q0z/MFN3/zR2
+        w/81fc//M3nI/zV4x/83esn/NHfF/zV4xf80d8T/NHbE/zR3w/8zdsX/N3vK/z6A0P87fcz/On3M/zyA
+        zf8/gs//QILT/z1/zP88fsn/PoHQ/zl/zv87fcj/OXvH/zR4xP87gc//PoHQ/zd5xf82d7z/Nne+/zV4
+        w/81d8P/N3jB/0CD0f8/gc//N3vK/zBdjf8yQk//Sllm/09YYv9MUlz/TFNd/0xTXf9MU13/TVNd/01T
+        Xf9NU13/TVNd/01TXf9MU13/TFNd/01TXf9RWmb/PkxZ/xYfJf8iKjD/NkFN/ykxOv8iKzH/ISo0/x8n
+        Ov8hKTz/ISk9/yEqPv8iKj7/ISk7/yAnO/8gKDz/ISk9/yEqPf8gKDz/Hyc7/x8nPP8gKD3/ICg1/yAo
+        L/8+SE//MTc6/wgLCf8XHR3/LTc+/yApMP8fKC//Hyc3/x4nPP8eJjr/HiY5/x0lOf8cJDj/HCM4/xwk
+        Of8dJTr/HSQ5/xsjOP8bIzf/GyM4/xsjOP8cJDn/HCMz/xwkK/8YICX/JC84/y06Rf8SGBz/Cw4Q/xMa
+        Hv8kLzf/GSIo/xkhKPweKDGOJS85CyIsNgAAAAAAAAAAAAAAAAAAAAAAJS41ACkzORIcJS2jFRsh/x0l
+        LP8gKTH/DhMW/wsOEf8VGyH/LjxH/zdHUf9DVln/KjWG/wQE6f8CAvD/AwTp/wME6v8DBOv/AwTr/wME
+        6/8DBOv/AwTr/wME6/8DBOv/AwTr/wME7P8BAvL/BQbQ/zZGZf9RZ2r/TGJz/ykyOf8LCwv/Ji4x/0JS
+        UP85Rlb/DxPA/wAA+f8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+z/AQLw/wAA
+        8f8WG57/QFBP/0ldXv83RE7/LjdC/ys0QP8SGB3/MTxJ/1Bda/9OVF7/TFFb/0xTXf9MU13/TFNd/0xT
+        Xf9MU13/TFNd/0xTXf9MU13/TFNd/0xTXf9MU13/TVRd/01aaP86R1n/KTVB/zJjmv83f9T/M3jG/zZ4
+        xv84esf/N3nH/zZ4x/81eMb/NnjE/zd6xP80eMX/NnnG/zp/z/8+g9P/O4DR/zuB0f89f8v/P4HM/z+A
+        y/8+f8v/Pn/N/z2Az/8+gdH/P4PT/z6D0f9DiNj/RIfZ/zyAz/8+gMT/Pn7E/zp+zP87fs3/O3zI/0KH
+        1v8+hdj/M2qn/zBGV/9CUV3/UVtm/01TXf9MU1z/TFNd/0xTXf9MU13/TFNd/0xTXf9NU13/TFNd/0xT
+        Xf9MU13/TFNd/0xSXP9NU1z/U11q/z5MW/8UHCL/LTZA/zQ+SP8kLTP/JS00/yIqNv8iKj7/Iyw//yIr
+        Pv8iKz7/Iyw+/yMrP/8iKj7/Iio+/yIqPv8iKj7/ISk9/yApPf8hKj7/ISk7/x8nL/8oMTj/ND5E/xYZ
+        Gv8NDg7/JCww/ycxOf8eJy7/HiYw/x4mOf8eJjv/HiY6/x0lOf8cJDj/HSQ6/x0mOv8dJjr/HSU5/xwk
+        Of8cIzn/HCM4/xsjN/8cJTn/HSU5/x0mLv8aIyj/GyQr/y48R/8cIyr/Cw4P/w4SFv8eJi7/ISw0/xcd
+        JP8eJy/DJzE6ISUuNwAAAAAAAAAAAAAAAAAhKzIAICcwACIpMi4bIyrQExke/x8oMP8eJy7/Cg0Q/wwP
+        E/8bIyr/MkFO/z1OVP9AU1r/FBm8/wAA8/8DA+z/AwTq/wME6v8DBOv/AwTr/wME6/8DBOv/AwTr/wME
+        6/8DBOv/AwTr/wID7v8AAPH/FhyR/0ldYv9RZnL/Pk5d/xUYGv8NEBD/NUJF/0NTSP8lLYT/AgPu/wEC
+        8f8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+7/AAD2/wkMwf80QVn/SVxW/0BO
+        V/8vOEH/NkBK/xYdI/8iLjf/Slln/1BXYP9MUVv/TFJc/0xSXP9MU13/TFNd/0xTXf9MU13/TFNd/0xT
+        Xf9MU13/TFNd/0xTXf9MU13/TFFb/05VXv9LW23/MjxL/ypCWf82c7z/NXzN/zd7xv84esH/NnvI/zR5
+        yP8zdsL/OHvH/zl/zv82ecb/NHjE/zZ6yP88gdP/PIHS/zp9y/87e8T/PX3J/z6A0P9Ahdb/P4XV/z2B
+        0P8/gtD/QInb/0SQ4/9Fj+L/PIPV/ziAz/9AhMz/P4HK/z+D0v9Bg9H/QIPR/0OL3v86fMn/LUxt/zxK
+        Vf9QXGn/TVNd/0xSXP9MU13/TFNd/0xTXf9MU13/TFNd/0xTXf9MU13/TFNd/0xTXf9MU13/TFNd/0xS
+        XP9MUVv/UFZg/1Nicv8qOUL/FRog/zhCTf8zPUb/JC00/yUuNf8kLT3/JS5C/yQtQP8jLD//JCw//yQs
+        P/8kLED/Iyw//yIqPv8iKj3/Iis+/yIrPv8iKj3/ICg8/x8nNP8fJy3/NT9H/ysxNP8MDQz/GRwe/yw1
+        PP8fJy7/Hyct/x4mN/8eJjv/HSU5/x4lOv8eJzr/Hyc8/x4nO/8dJTn/HCQ4/xwkOP8cJDj/HCQ4/xwk
+        OP8cJDj/HCQ5/xsjMf8cJCn/GB4k/yk2QP8kLzf/DhEV/wsOEP8aISj/Iy43/xYcIf8cJSzoIi01Shkj
+        KwAjLjcAAAAAAAAAAAAmLjYAWGFmAR8nL10YHyXwFR0i/x4nL/8YHyT/DA8S/w8UF/8mMDn/MkBL/0FU
+        Vv8zQnL/CQzd/wAA9P8DA+r/AwPq/wMD6v8DBOr/AwTr/wME6/8DBOv/AwTr/wME6/8DBOv/AwTq/wID
+        8f8BAtn/Lzty/1FnZ/9NYXP/KzU9/wgJCP8gJyr/QFBM/zlHVP8PE7f/AAD5/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AgPs/wID7P8CA+z/AgPs/wID6/8BAfP/AgLk/yUvcP9FWEz/SVlf/zU+SP81P0r/Hycu/xQc
+        If8mMj3/PUpZ/1BXYv9NUlz/TFJc/0xSXP9MUlz/TFNd/0xTXf9MU13/TFNd/0xTXf9MU13/TFNd/0xT
+        Xf9MUlz/TFJc/0xRWv9RWmf/RVRr/ykyPv8vVoH/NXvM/zuA0f88fMj/NnrH/zR5xv81d8T/OnzJ/zt9
+        xP85ecP/OHzJ/z1/zv8+f8//OnzK/z1/zv8/gM7/PX/N/z6A0P8+gdD/PIDP/zyD1f8/hNL/O4LR/zyF
+        1/8/htf/N3nE/zR3wP86fcj/O33G/z1+xv89fcT/P4PR/0WM3v81Zp7/M0JR/05ca/9QVmD/TFFb/0xS
+        XP9MUlz/TFNd/0xTXf9MU13/TFNd/0xTXf9MU13/TFNd/0xTXf9MUlz/TFJc/0xSXP9OVF3/TVdi/zM/
+        Sf8nMzr/GyQq/x0lLP88SFP/LTY//yYuNf8lLjj/JCw//yQtQP8kLUD/JC1A/yMsP/8kLED/JCw//yMr
+        Pv8iKj3/Iio9/yIqPf8hKD3/ICc8/x4nOP8fJi7/JzA3/zhCR/8VGRr/DQ8O/yQsL/8oMTn/ICgu/x4m
+        Mf8eJTr/HSU6/x4lOf8fJzv/Hic7/x0lOv8dJTn/HSU5/x0lOf8dJTn/HCQ4/xwkOP8bIzj/GyM5/xsj
+        NP8cJCr/GSAl/yUwOf8uO0f/Exgd/wsOEf8WHCL/Ii01/xojKP8aIir8ICozgSo3PwUjLjcAAAAAAAAA
+        AAAmLjYALzhAByAoMI8WHCL/GiEn/yApMf8PEhb/DA8S/xAWGv8uPEb/OEdS/0JVUv8kLo//AwPo/wIC
+        7v8DA+r/AwPq/wMD6v8DA+r/AwTr/wME6/8DBOv/AwTr/wME6/8DBOr/AwTr/wAA9/8MD63/QVFl/1Rp
+        c/9CUmD/Fhoc/wsNDv8xPUH/Q1NJ/ygzcv8BAur/AQHy/wID6/8CA+z/AgPs/wID7P8CA+z/AgPs/wID
+        7P8CA+z/AgPs/wIC7v8AAPX/DxSo/z5PUf9GWlv/OEVO/yw1Pv8nMDj/FBof/yUxOv8lLzn/Iyw3/0FN
+        Wf9QV2H/TVJc/0xSXP9MUlz/TFJc/0xSXP9MU13/TFNd/0xTXf9MU13/TFJd/0xSXP9MUlz/TFJc/0xR
+        W/9OU1z/UF5w/zlFWv8tPEn/NnKy/zyC1v87e8n/OHvH/zd5xf87fsv/PoHQ/zx+y/86e8f/OXvI/zuD
+        0f86fcv/NnnF/zyAzv88fsr/PH/K/0WH1/9Bg87/PHzA/zx/zP8+gcv/OHnF/zR1v/82eMH/OHnD/zV1
+        vP81db7/OHnA/zl6wv83d73/O4DP/0CCzf8wSmf/QExc/1Ndaf9MUVr/TFJc/0xSXP9MUlz/TFJc/0xT
+        Xf9MU13/TFNd/0xTXf9MU13/TFNc/0xSXP9MUlz/TFJc/05SXP9QV2L/O0dS/xggJf8eKzX/KTY//xUb
+        If8hKTH/MTtF/ygwN/8mLzb/JCw6/yMrP/8kLD//JS1A/yUuQP8lLUD/Iy1A/yMsQP8kLED/Iyw//yMr
+        Pv8iKT3/ICg8/x4nO/8gKDP/ICku/zZAR/8mLjH/CwsM/xkeH/8pMTj/Iisy/x8nLv8fJzn/HiU6/x4l
+        Of8eJzv/Hyc7/x4nO/8dJjr/HiY6/x4mOv8eJjr/HSU6/xwkN/8bIzf/HCQ5/xwjNv8cJCz/GiIn/x8p
+        MP80Qk//GiEm/wsPEv8PExf/Iiw0/yErM/8YHyb/ISs0syk0PQ0lLzgAAAAAAAAAAAAfKDAAICoxGR0l
+        LcEVGyD/HCQr/yMsNP8NDxL/DA8S/xgfJv8wPkn/PE5W/0JVU/8aIbb/AAD3/wMD6/8DA+r/AwPq/wMD
+        6v8DBOr/AwTr/wME6/8DBOv/AwTr/wME6/8DBOn/AwPv/wAA7P8gKIT/TWBc/1NpeP84RlD/CQoL/xkf
+        Iv89S0r/PUtQ/xIXsP8AAPX/AgLt/wID6/8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+z/AgPr/wEB
+        9P8EBtn/KzZm/0ZZU/9CU1v/MDpD/ygxOv8WGyH/HSQo/yk+VP8jT4H/Gy9E/yYuM/9JVWD/UFZg/0xS
+        XP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUFr/UVpl/0hY
+        cf8vNkP/MFV3/zqA0P88fs7/OXvG/zZ6xv88gc//PYHQ/zx/zP84esf/NXbE/zZ8yv84esf/OHvI/zp/
+        zP87fcf/PH7J/0KG1/9Bg9D/PH7E/z6AzP8/f8j/OnrB/zZ1vP82dr3/N3m//zd4wP84d77/OXrE/zh7
+        x/84eMH/O3/O/zRil/8zQE//TFho/09UXv9MUVv/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xS
+        XP9MUlz/TFJc/0xSXP9MUlz/TVJc/1FYZP9CTlr/HCEj/xkkMf8lUYb/LEhk/yQrLf8VGyD/KTQ7/ys0
+        Pv8oMTf/JCw1/yMqO/8jLED/JC1A/yUtQP8lLUD/JC1A/yQuQf8lLkH/JS1B/yQsQP8jLD//Iys+/yAo
+        Pf8hKTn/ICgu/ykzOf83QUb/ExUW/w0QDv8mLjL/JzI6/x8oL/8gKDX/Hyc7/x4mOv8eJjn/HyY6/x8n
+        O/8eJjr/Hic6/x4mOv8dJTn/HiY7/x4mOf8bIzj/GyM3/xskOP8cJDH/HCQp/xsjKf8wPkn/Iy00/w4S
+        Ff8LEBL/Hygv/yErM/8WHSP/Hykx4iQvOC4gKzIAAAAAAAAAAAAXHyYAHicwPhkgJ+EWHSH/Hykw/xwj
+        K/8NEBT/DRAT/yItNf8vPUj/P1FS/zhHZ/8QFcv/AAD0/wMD6v8DA+r/AwPq/wMD6v8DBOr/AwTr/wME
+        6/8DBOv/AwTr/wME6v8DBOn/AQH2/wYHw/81Q2r/VWpv/01hcP8kLTL/BwgI/ycxNv9CUkz/MDxm/wQG
+        5v8BAfL/AgPr/wID6/8CA+z/AgPs/wID7P8CA+z/AgPs/wID7P8CA+v/AgLv/wAB9P8XHo7/QVJN/0ZZ
+        W/82Q0r/KjQ+/xkhKf8XHSH/LDdA/yxVhv8wetL/I0+G/yQqL/8wOkD/SlVh/09VXv9MUlz/TFJc/0xS
+        XP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUVv/TlNc/1Bddf8zPVP/KjdD/zt4
+        vf9AhNL/PH7K/zZ5xf83ecb/OHrF/zx8w/87fMX/N3nF/zV4xv82d8P/N3e+/zd5wv88fcX/QIHM/zx/
+        y/88fcj/O4DN/z2Czv9AgMn/OnvF/zZ2wf82dr7/NXa7/zh4v/87er7/OnvC/zp8xf85e8T/N3e//y1F
+        YP9ATV//U15q/0xRWv9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xS
+        XP9NUlz/UFhi/0RQXf8iKS3/FRse/yVNff87hd3/MGOd/yo3Qv8cISX/GyIo/yw4Qv8nLzb/JS40/yIr
+        N/8jKz7/JCw//yQsP/8kLUD/JS1A/yUuQf8lLUD/JSw//yMsP/8jLD//Iyw//yMrP/8hKT3/ICgy/yIq
+        MP82QUb/JCkq/wsLC/8gJyj/KTM6/yEpMf8gKDL/ICg7/x8nO/8eJTn/HiU5/x4mOv8eJjr/Hic6/x4m
+        Ov8eJjr/Hyc7/x4mOv8dJTr/GyM3/xsjN/8bJDT/HSUq/xsiKP8pND3/LDhC/xAUGf8LEBL/GSEm/yIr
+        NP8ZHyX/GiMq9B8qNFwWHyMAAAAAAAAAAAALEhkAIiszZRgfJfYZICb/Iy42/xAVGf8MEBP/DhIU/yk1
+        Pv8zQk7/QFNL/yg0hf8DBOb/AQHv/wMD6v8DA+r/AwPq/wMD6v8DA+r/AwTq/wME6/8DBOv/AwTr/wME
+        6v8DBOv/AAH2/xMYpv9GWFr/VGl3/0FRXv8OEhT/EBQW/zZDRf9AUEv/HSWQ/wEB8f8BAu//AgPq/wID
+        6/8CA+z/AgPs/wID7P8CA+z/AgPs/wID6/8CA+v/AAH2/wYHz/8vPGH/SFpT/z5NVf8sNz//Ii02/xEZ
+        Hv8lLDH/KUBZ/zBzwP83ftH/MHHA/yhIa/8cIiX/MTtC/0xXYf9NU17/S1Fb/0xSXP9MUlz/TFJc/0xS
+        XP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFFZ/1Jcaf8/S2T/KDA8/zRdh/9DhdH/QITT/zp9
+        yv85esT/OHnB/zp6wv84ecH/OnrC/zh6wv83d8P/OnrB/z19yP9Cgcv/RITM/z19x/88fMP/PX3G/z+A
+        yv8/gMf/OXrE/zZ3v/82drv/N3W7/zd5wf87fcb/P3/J/z+Cz/88gM7/M2KU/y05SP9MWm7/UVlj/0tR
+        Wv9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/01SXP9QV2L/RVJf/yQr
+        L/8WGRj/HzpY/zR2wf9Bi97/On/K/ytKav8oMDb/FBsg/yItNf8qNT3/JC0z/yMrM/8iKjr/JCxA/yQs
+        P/8kLD//JCw//yQsP/8kLUD/JC1A/yUtQP8kLD//JCw//yQtQP8jKz//Iis4/yAoLv8tNz3/ND1B/w0N
+        Dv8RFBT/KDE2/yQtNf8fJy//ICg3/yAoPP8gJzv/HiY6/x0lOf8dJTn/HiU6/x4mOv8eJTn/HiY6/x4m
+        Ov8eJjr/HSU5/xwkOf8cJDb/HSUs/xoiKP8hKzL/MkBM/xMZHf8MEBL/EBUY/yUvOf8fJy7/GSAn/CAq
+        NIgAAAAAAAAAACUtNAAnMDcDISoykxceJP0ZICf/JC43/w0RFP8MDxL/Fh0h/y06RP86S1f/QVRM/yAp
+        nv8AAPb/AgLr/wMD6v8DA+r/AwPq/wMD6v8DBOr/AwTq/wME6v8DBOr/AwTq/wME6v8CA/H/AQLc/yQt
+        f/9RZ2b/UmZ3/zA7Q/8HCAn/HSUp/0FSTf86SE3/DhLL/wAA9f8CA+z/AgPr/wID6/8CA+z/AgPs/wID
+        7P8CA+z/AgPs/wID6/8CAu3/AQH0/xcckv9AUUj/RFZb/zZBSP84Q0v/LDY8/zE5Pf88SFT/KliS/zN9
+        0P82e8r/On7Q/zBwvP8jP2H/Ki8w/0NOU/9TXmr/T1Vf/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xS
+        XP9MUlz/TFJc/0xSXP9MUlz/TFFb/1BXYP9JWHP/KjE9/yxATv9Bgcn/PYLT/zh5w/84ecX/O4HN/zh9
+        yf82eMP/N3a//zh4wv86esT/P4HM/0OG1P9GiNb/S43c/0aJ1/88gMr/PH3H/zx+yP85er//N3jC/zh3
+        vf83drr/N3W6/zh4wf8/gtH/QYLP/0SH2P8+gtH/LUli/y80QP9RXm7/TlVe/0tRW/9MUlz/TFJc/0xS
+        XP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TVNd/1BYYv9FUl7/JSsx/xYXFP8eNk3/Lmuv/z2C
+        zP88gMr/QIXQ/zNppf8uPk3/HiUm/xceIv8pMzr/JC00/yMrMv8iKjb/JS1A/yUtQf8kLD//Iio9/yMr
+        Pv8kLD//JS1A/yUuQf8lLkH/JC1A/yQtQP8kLD//Iio8/x8nL/8mLzX/NT9E/xccHP8LDAz/Jiww/yYv
+        Nv8eJiz/HiYy/x4mOv8eJTr/Hyc6/x8nO/8eJTn/HSU5/x4lOf8eJTn/HiY6/x4mOv8eJjr/HiY6/x0l
+        Ov8dJDf/HSQv/xsiKP8dJSz/MT9K/x0lLP8NERX/DRAT/yUvOP8hKTH/GCAm/yEsNrsoMzsPKDI6AB8o
+        MQAfKDEbHScvuhgeJf8cJCr/Hyct/w0QFP8MDhH/ICkw/zI/S/9AUlf/PE5k/xQav/8BAPP/AwPq/wMD
+        6v8DBOr/AwTq/wME6v8DBOr/AwTq/wME6v8DBOr/AwTq/wME6f8BAvX/BAbH/zM/YP9VanL/T2Ny/xoh
+        JP8JCwz/KzY6/0NTTP8pMnr/Bgfn/wAB8f8CA+v/AgPr/wID6/8CA+z/AgPs/wID7P8CA+z/AgPr/wID
+        6/8BAfX/BQbN/yw3X/9GWFP/PEtT/zE6Qf9ASlD/OEBC/1hhZ/9LY3//MXC8/zR5x/80dcP/O3/P/z2F
+        2f84dsX/Old7/z9GSP9LVVj/TVZf/01UXv9NU13/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xS
+        XP9MUlz/TFJb/05TXP9NWXH/MjlI/ycyN/86bqX/PILS/zh5wf89fsn/O3/N/zl5w/84d8H/Nna9/zd3
+        wP84eL7/PX7E/z5+xv9AgMn/SIzb/0mM2f8+gMv/O3rB/zt8yP84ecT/N3jC/zZ2u/83drn/OHe7/zp5
+        wf9Ehcz/RYbN/0KH2P84drz/JzlK/zY9TP9SWmf/TVNb/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xS
+        XP9MUlz/TFJc/0xSXP9OVF7/TlZh/0FLVP8jKCr/FhcT/xwzSv8sZ6n/O4HO/z6BzP87gc3/P4TS/zuC
+        1f8tTW//LDI0/xEUFP8dJCf/KTM7/yUtM/8lLTX/JS08/yQsQP8kLD//Iys+/yMqPv8jKz7/Iyw//yQs
+        P/8kLD//JCw//yQsP/8hKTz/ICc7/yAnM/8iKS//MTxC/yozNP8KDAz/Gx8g/ys0O/8iKzH/ICYx/x0l
+        OP8eJTn/HiY6/x4mOv8eJjr/HiY6/x4mOv8eJjr/HiY6/x4mOv8eJjn/HSY5/x0lOf8dJTr/HSU0/x0k
+        Kv8cIyv/LDhE/yg0Pf8PExb/DRAT/x8pL/8gKTD/GSEn/x8oMtYiKzYvIis2ACApMwAgKTM1HCQs1xce
+        Jf8hKjL/GSAl/w4RE/8MDxH/JS84/zZFU/9CVFL/NUN3/wgK2/8CAe7/AwPq/wMD6v8DA+r/AwTq/wME
+        6v8DBOr/AwTq/wME6v8DBOr/AwTq/wME6/8BAvL/DxKt/0NTUv9Uanf/P09a/wwODv8SFxj/OUdI/0BP
+        R/8WHKv/AADz/wID7f8CA+v/AgPr/wID6/8CA+z/AgPs/wID7P8CA+v/AgPr/wID7f8BAfH/FBid/z5O
+        RP9FVl3/N0JK/yYvNv8dIyX/QkpM/1tncP87aJ7/MXfF/zR2wP8zdsH/PYXU/z+D0/8+gtf/P4DU/zdZ
+        hv8mLC3/Ki0s/0JLUv9PVmH/TVNe/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/01S
+        W/9OWWr/OkJZ/yUsNv8yXo3/PYXW/zd3vf88fMb/PH/M/zl5wv88ecD/OXnA/zh3vv86eL//PHvC/zx8
+        xP9Af8X/QoTQ/0KEzv89fcf/OnrC/zt8x/84ecD/OXe8/zZ3wP84drj/N3e8/zd3v/89fcL/QYHG/z2B
+        zP8yZJj/JC84/0FLX/9TW2f/TFJa/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TVJc/09W
+        YP9MVV//OEFI/xwfH/8XGxr/KUho/zl5wf84f8//P4LN/zt+yP82fcn/PILP/zyF1/8waan/LjpH/yQm
+        Kv8VGRr/JzA2/ygwN/8mLTT/JCw3/yMrPv8jKz7/Iyo9/yIqPf8jKz7/Iys+/yQsPv8jKz//Iys+/yIq
+        Pf8gKTv/ICg8/yIpOf8hKTD/Lzg//zQ9Qv8PExP/DhAR/yoyN/8kLTP/Hycu/x4mNv8eJTr/HiU5/x4l
+        Of8eJTn/HiY6/x4mOv8eJjr/HiY6/x4mOv8eJjr/HiU5/x0lOf8dJTr/HSU2/x8nLf8cJCv/KTQ+/zA+
+        SP8PExb/DRAT/xgfJP8kLjb/GiIo/x0mLugiLTZMIi02ACQsNgAlLTZRGiIq6hceJP8kLjb/Exgc/wwQ
+        Ev8QFBj/KzZA/zpKWP9DVU7/LjqF/wME8P8CAur/AwPp/wMD6v8DA+r/AwPq/wMD6v8DBOr/AwTq/wME
+        6v8DBOr/AwTq/wME7/8BAeX/HCKM/1BkZP9TaHf/LTc+/wcIB/8bIiX/QVBN/zdGWf8PE8v/AAD1/wID
+        6/8CA+v/AgPr/wID6/8CA+v/AgPr/wID6/8CA+v/AgPr/wEC8/8BAtn/Iyxu/0daUf9DU1n/LjhA/yIq
+        L/8MEA3/PURK/1JphP8zcrb/MnnJ/zd4xf8ydsT/OYLT/z1/0P9Cg9H/SI7l/zp90P8kUoT/Gycw/yUo
+        Jf88Q0n/TFVf/09WYP9NU13/TFJc/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/01SW/9RWmP/Pkde/yYr
+        M/8xVnv/QI7m/zl/zP86fs3/PYTX/zyB0f87gMz/O4DP/zt+y/89gdD/RIvd/0CE0v9AhdH/RIjW/0SI
+        1/9Dhtb/QYbY/0KJ2v88gM3/On7K/zl/z/85fMT/P4bV/zyE1v85fcv/RIvc/0OP4/8yW4b/Iygr/0VQ
+        Yv9RWGT/TFJa/0xSXP9MUlz/TFJc/0xSXP9MUlz/TFJc/01TXf9PVF//UFdi/0ZQWP8tNDj/GBsY/xke
+        Hf8iR23/PIjd/1Oh9/9Citv/QojY/zyBzP8weMb/MnjH/zZ7x/8zecT/LlB0/zA0PP8TFBb/Iiot/yoz
+        Of8kLTL/JCw0/yMqO/8jKj3/JCs+/yQrPv8jKz7/JCw//yQsP/8kLD7/JCw//yIqPf8iKj3/Iyo9/yMq
+        PP8jKzP/KDE4/zY/Rv8dIyT/Cw0N/yMpLP8mLjX/Hycs/x0lM/8eJTr/HiY5/x4lOf8eJTn/HiY6/x8n
+        Ov8fJzv/HiY6/x4mOv8eJjr/HSU5/x4mOf8eJTr/HiU3/x8mL/8dJCv/JS84/zNBTf8SFhv/DBAT/xIW
+        Gv8nMjv/HCMq/xsjKvkiLTVrICszACIpNAAkLTZvGSIp+hYdI/8lMDn/ERYa/wwPEf8VGiD/KzZA/zxM
+        WP9EVlf/JzGa/wMD8/8DA+n/AwTp/wMD6v8DA+r/AwPq/wMD6v8DBOr/AwTq/wME6v8DBOr/AwTp/wID
+        8f8EBdT/KzZj/1Nobv9OYXD/HCEl/wcIB/8nMTT/QlFJ/yo1dv8GCN7/AQLy/wID6/8CA+v/AgPr/wID
+        6/8CA+v/AgPr/wID6/8CA+v/AgPr/wAB9v8MD73/NkNK/0ZZWP87R03/KTE3/xYbHP8aHib/MjhG/zFa
+        jf8zecr/NnjG/zyA0P80ecf/O4LR/z2AzP9DhMz/R4rc/0iQ5P8+ieD/J16c/x0vP/8fIiD/MDQz/0RN
+        Vf9NVmD/TlVg/05UXv9NUlz/TFJc/0xSXP9MUlz/TFJc/0xSW/9NVF7/RE9r/yswOf8tQU//OGWW/zNc
+        hv8yWYL/M1uE/zRdh/8zW4X/NFyG/zRbhv81XYj/OmSQ/zdfiP83YYz/OWKM/zlhi/87Yoz/OWKO/ztn
+        lf83YYz/NFuE/zRbhv8zWYP/NmCN/zZgi/8zWoP/OWOO/zpomf8uR17/Jy0x/0pVaf9PVmH/TFFa/0xS
+        XP9MUlv/TFJc/01TXf9OVF7/T1Vf/09XYf9LVF//OUJJ/yElJf8XGBX/Gyw7/ydWhv83e8n/PYzl/0aR
+        5P9Ditr/QYbV/0GI2P80esn/MHO//zJ0vP81fc3/Mmqp/y42QP8kJy3/ExYY/yQsMf8mLjX/JCwy/yMq
+        N/8jKj7/JCxA/yQrPv8jKj3/Iys+/yUtQP8lLUD/JS1B/yMrPv8iKj3/Iys+/yQsP/8lLTj/Iywz/zdB
+        SP8pLzL/CgsK/xgbHv8sNDv/Iiow/x4lMf8fJjn/Hyc6/x8mOv8eJTn/HiY6/x8nO/8fJzv/Hyc6/x8m
+        Ov8fJzv/HSU6/x4mOv8eJjr/HiU4/x8mMf8eJSz/ICkx/zNBTf8bIin/DA8T/xEUGP8nMjv/HCQr/xkh
+        KP8jLDaTNkJHBiMrNQogKTKSGiEo/xsiKP8iLDP/EBUa/wsOEP8bIij/LjpF/z5OVf9AUWL/GR+z/wEB
+        8v8DBOr/AwTq/wMD6v8DA+r/AwPq/wME6v8DBOr/AwTq/wME6v8DBOr/AwTq/wIC8v8LDsP/O0pW/1Nn
+        cP9DVF//EhUW/wwOD/80QUb/Q1JD/x0km/8AAPH/AgLt/wID6/8CA+v/AgPr/wID6/8CA+v/AgPr/wID
+        6/8CA+v/AgPv/wEB6v8aIIv/QlRM/0RVWf8zPEP/Ji4z/w4REP8kJjH/Lj9e/ylipP8zecj/NnfD/zt9
+        zP87fcr/QYLQ/z6Azf9Cg8//Q4XU/0GE0v9Ag9L/OH3O/y5nqP8gQ2f/GyYu/yImJP8zOj3/RE5X/0xU
+        Xv9OVWD/T1Zh/05UX/9NU13/TVNd/0xRW/9PVV//TVp6/y00QP8mLS//KjI5/ysyN/8rMzf/LDQ5/ywy
+        OP8sMjf/LDM4/ywzOf8rMzj/KzI3/ysyN/8rMzj/KjE2/yowNf8qMDb/KjA1/yoxNv8qMTb/KTA0/ykv
+        NP8pLzX/KTE2/ykxNv8pMDX/KC8z/yoxNv8oLzT/LDM+/05Zb/9QV2P/TVNc/09UXv9PVmD/TlVg/01V
+        X/9NVmH/SFJb/zZBSP8lKiz/GRoV/xkgJP8gP2D/KmSl/zN5xP86gdL/QYbW/0KDyv8+f8j/Pn7H/0CC
+        x/87gMz/M3W//zNzu/86hNX/NnjA/y1FXv8rLzX/DxAR/yQsMf8oLzf/JCsx/yMqNf8jKj7/JCw//yMr
+        Pf8jKj3/Iys+/yUuQf8lLUD/JS1A/yMrPv8iKj3/Iys+/yQtQP8kLTr/Iywz/zA5Qf8tNDj/DxER/xES
+        FP8qMzj/JC0z/yAoMP8fJjj/HyY6/x8mOv8fJjr/Hyg7/x8nO/8fJzv/Hyc7/x8mOv8fJzv/Hyc6/x8m
+        Ov8eJjr/HiU6/x8nM/8eJiv/Hicu/zE+Sf8iKzT/DQ8S/w8SFf8iLDP/Hycu/xohKP8gKjOuJC03FyIs
+        NhkfKTGvGSAm/yEqMf8eJSv/DxMW/woND/8fJy3/NkRQ/0JTVf89TGr/DhLK/wAB8P8DBOn/AwTq/wME
+        6v8DBOr/AwTq/wME6v8DBOr/AwTq/wME6v8DBOr/AwTs/wEB6/8RFpv/R1lh/1Rqdf80P0f/CQoK/xYb
+        Hf88S0z/PEtQ/xQZuf8BAfb/AgPr/wID6/8CA+v/AgPr/wID6/8CA+v/AgPr/wID6/8CA+v/AAH0/wYH
+        2/8rNlr/RFhR/0FPVv8vOD//GyIl/xMXGv8rLzv/KUlz/zJ0xP81eMP/NXbA/zd3w/85esX/P4LQ/0CE
+        0/9Dg9H/QoLO/z9/zf88fcn/PXzG/zt8yf8zd8b/J2Gh/x44U/8cIyb/IiMg/y81Nv88Rkz/Rk9X/0lS
+        W/9MVF//TVVg/05VX/9SWmP/Tlt0/y00P/8oLjL/LDI5/y41PP8vNT3/LzY+/y41Pf8uNj3/MDg//zA4
+        P/8uNjz/LTQ7/ywzOv8sMzn/LDM6/y0zOv8sMjn/KzA3/yswN/8rMDf/KzA3/yowNv8rMTf/LjQ7/y40
+        PP8tMzr/KzI4/ywyOf8qMTn/LjQ//05Zbv9OVmL/SVFb/0pUXv9IU13/QU1W/zhCSf8tNDn/IiUm/xoa
+        Fv8YHR3/IDNF/ydVh/8ucLn/NXjF/zl5v/88fsj/QoXQ/0KDy/89fsb/QH/G/0ODyP9Ag83/OHnB/zp8
+        xf9CiNj/On7I/ypTgf8uMjn/Gx8i/xwiJP8oMTf/Ji40/yQrNP8kKzz/JCs//yMrPf8jKj3/Iys9/yUt
+        P/8lLD//JSw//yMrPf8jKj7/JS0//yUtQP8kLD3/Iywz/ygyOv81P0T/GRwe/w8PEP8mLTH/JzA3/yAp
+        L/8fJzf/Hyc7/x8nOv8gJzz/ISg8/yAoO/8gJzv/Hyc7/yAnO/8fJzv/Hyc7/x8nOv8eJjr/HiY7/x8n
+        Nf8eJi3/HiUt/zA8SP8rNkD/DRAT/w4RFP8bIyj/Iy01/xoiKf8fKTLGIiw2JyQvOCchKTHHGSAm/yQu
+        N/8YHiT/DA8S/w0PEv8iKzL/OEZT/0NVUv83RnL/CQvl/wEB7v8DBOn/AwTq/wME6v8DBOr/AwTq/wME
+        6v8DBOr/AwTq/wME6v8DBOr/AwTt/wAA6f8cIov/T2Jp/1Nodf8nLzT/BQQE/yAnK/9AT0j/MT5q/wkM
+        0/8BAfP/AgPr/wID6/8CA+v/AgPr/wID6/8CA+v/AgPr/wID6/8CA+z/AADz/wsNvf84R07/RlhV/zpF
+        Tf8tNTz/ERYV/xkcJP8wO1T/KFaJ/zR5yP81dcH/N3bB/zV1v/87fsr/QYbV/0OFzf9FhM7/Q4PQ/0OG
+        1f9ChtT/P3/H/zt6xP88fsv/QYfY/zV2xP8lU4b/IDdK/xslK/8dHhv/ISMg/yguL/8vNzz/MzxD/zlE
+        Sv8+SVL/O0ZT/ykvN/8lKS7/Jisw/ykuM/8pLjT/KC40/ygtM/8oLjT/KTA1/yguNP8nLDL/Jiwy/yYs
+        Mf8mKzH/Jywy/ycsMf8mKzD/Jiov/yUqL/8lKi//JSov/yUqLv8lKy//Jy0y/yctMv8nLTL/Jywx/ycs
+        Mf8mLDL/KS83/zZAS/82QUn/Lzg//ygvNP8iJyr/HiIi/x0eHP8aGxf/GiEk/x80SP8mUYD/MXO9/zd9
+        yv84esT/Nna8/zR1vP9Ags3/RITN/0SDx/9Bgcj/QYTS/0aN3/8+f8v/PX7H/zyBz/8+g9D/OX7K/yxk
+        oP8vPE7/ISQn/xEVFP8sNTr/KjE4/yYuNP8mLjv/Ji1A/yQrP/8jKj3/Iyo9/yMpPf8kKj3/JSw//yQs
+        Pv8jKz//JS0//yUtQP8kLD7/JCs1/yQsM/83Qkn/ICQn/woLCv8dIiT/LDY9/yAoLv8gJzX/ICc7/x8m
+        Ov8fJzr/ISk7/yEpPP8hKTz/ICc7/yAnO/8fJzv/Hyc6/x8nOv8eJjr/HiY7/x4mN/8fJy7/HiUr/yw4
+        Qv8zQEr/EBYZ/wwPEv8TFxz/KDM8/xsiKf8eKDHeIi43OSYwODUgKTDdGSAm/ycyO/8WHSL/Cw4P/xAV
+        Gf8mMDj/OklW/0JVVP8uOoH/Bgfr/wIC7f8DA+n/AwTp/wME6v8DBOr/AwTq/wME6v8DBOr/AwTq/wME
+        6v8DBOn/AgPu/wME4f8nMGr/UmVn/0tdav8bIST/BgcG/ykyOP9CUUT/KDOA/wME6/8BAu7/AgPr/wID
+        6/8CA+v/AgPr/wID6/8CA+v/AgPr/wID6/8BAu7/AADv/xQYg/9AT07/RVZZ/zU+Rv8kLDD/ERUX/yMl
+        Mv8sQF//L2qr/zV2wv81dcD/NHbB/zd3wv9Bgs//RYfV/0aFy/9JidT/SYrZ/0iI1f9Fh9P/QIHM/zt5
+        w/88e8X/QIDJ/zx8xv87fcv/N3W7/y5fmP8lSHD/HTBE/xokK/8dHhz/Gx0b/x0jJv8nLTT/KTA2/yYs
+        Mv8fIyT/HyAe/yAhHf8gIh7/ICId/yAhHv8gIR//ICIf/yAiHv8gIR7/ICEf/yEiH/8gIh//ICEg/yAh
+        H/8gIh//ICIf/yAiH/8gIh//ICIf/yAiIP8hIiD/ISIg/yEhH/8hIR//ICIe/yAjIP8gJCP/Jisx/yow
+        N/8oLTT/HyQo/x0gHv8eHx7/HCMn/xwuP/8kRWf/KlmM/y5ssv84esb/PH7G/zh6wP84eMD/OnrF/zp8
+        x/9Fh9L/R4fQ/0aJ0v9HidH/PIDO/zuE1P85e8X/OX3J/zR5w/83fMn/OX3H/zJxtf8pQmD/Jigq/xQY
+        Gf8mLTL/KTA3/ygvNf8mLjn/Ji5A/yUtP/8jKz7/Iyo+/yQrPv8lLD//Ji5A/yYtQP8kLD//JS1A/yUt
+        QP8lLED/JCw4/yQsMv8yO0L/KC8z/w0OD/8XGxz/KzU7/yAoLv8fJjH/HyY5/x8mOf8fJjn/ICg7/yEp
+        PP8hKTz/ISk8/yAoO/8fJjv/HyY6/x8mOv8eJjr/HiY7/x4mOP8fJzD/HSUr/yYwOf8zQEv/Fx0h/wwP
+        Ef8UGR3/KjY//xoiKP8dJi/1Iiw3TiUvN0gfJy/yFx4k/ygyPP8YHiT/Cw4Q/xMZHf8oMjv/PEpU/0JU
+        W/8iKqH/AwTw/wIC6/8DA+n/AwPp/wME6v8DBOr/AwTq/wME6v8DBOr/AwTq/wME6v8DBOn/AgLw/wcJ
+        2/81QmL/VGhq/0FRXf8TFhf/CQoK/zM+Q/9CUUL/ICeN/wIC9f8CA+z/AgPr/wID6/8CA+v/AgPr/wID
+        6/8CA+v/AgPr/wID6/8BAfH/AgLt/ycvYf9DVUz/QFBW/zA5P/8cIiX/EhUX/yovQP8mRm3/M3fD/zV1
+        v/83d8H/OXrF/zx7xf89fcn/RIXS/0uL0/9Ojtn/TZHi/0mJ1P9Af8j/PnzF/zx7wv87esP/P37J/zx8
+        xv8+fcb/RYbS/0GH2f85fMz/M22w/zNloP8yYJP/JUZo/yAlJ/8oLjb/LTM7/ykuMv8nOkn/LFeH/ylS
+        fP8pUHn/KFN9/yhRev8qUXz/KlF6/ypRe/8sVH//KVF9/yhPfP8qUXz/LFJ9/ytSe/8rUnv/KlB4/ypQ
+        eP8qUHv/KU93/ylPdv8pT3b/KVB4/ylQef8qUXj/K1N//ytWh/8oQFX/KCwu/yswOP8oLTX/IiUl/ydB
+        Wf8tWo//NWad/zhxsv82eMb/OHzH/zt9xP87fMT/OXi+/zh3vf83d7v/Pn7G/0WJ1v9EiNX/SYvU/0mO
+        2/9Gi9r/PX/J/zd4wf84ecP/PX/M/0KF0P8/g9H/OXrA/zV7xv8nTXf/LzQ8/xocIP8ZHiD/KjI4/ycu
+        Nf8mLDX/JSw9/yUtP/8lLT//Ji1A/yYtP/8lLT//Ji1A/yYtP/8mLUD/Ji5A/yUtQP8lLUD/JS07/yQs
+        M/8sNDv/MTo+/xIUFf8UFxf/KTE1/yIpMP8eJTH/ICY6/yAoPP8gKDz/ISk8/yEpPP8hKTz/ISk8/yAo
+        PP8gJzv/HyY6/x8mOv8eJjr/HiY6/x4mOf8gKDH/HiYs/yQuNv8zQEv/GiEm/wsPEf8UGR3/KjZA/xoh
+        J/8dJS3+JC44aiUuNmIdJSz7Fx0i/yQvNv8WHCH/Cw4Q/xcdIv8tOEP/O0pS/0JTXP8dJKX/AgLw/wMD
+        6/8DA+n/AwPp/wME6v8DBOr/AwTq/wME6v8DBOr/AwTq/wME6v8DBOr/AQLv/wsNrv9CUGX/WG1z/zlH
+        UP8LDQv/DxMT/zlGR/89SlP/Fx2s/wEB9v8CA+v/AgPr/wID6/8CA+v/AgPr/wID6/8CA+v/AgPr/wID
+        7P8BAfH/BAXH/zNAU/9GWFH/PUlR/y43Pf8WGx3/ExQX/y45U/8pWJD/NnjF/zZ3wP84eMP/P3/J/z59
+        xv85e8f/RIXS/06O2P9Ojtn/S43c/0iH1P9Cgcv/QYHK/z19xf87e8T/QYDL/zx9yv88fsj/QIHM/0B/
+        zP9CgMv/QIDJ/0OF0v9Ile3/N26o/yIkJf8pLjb/LjU8/ycrLP8wSmL/RI7h/z2C0P89fcb/On7K/zl8
+        yP87fcv/PYHO/z+Cz/9EiNf/PoHM/z5/yP9Bgsz/Q4TN/0CCzP8/gMn/Pn3B/zt8x/88fsv/O33G/zt7
+        w/88fMP/PHzF/zx9xv88fcX/PoHM/0OJ3P8yVnv/Jygo/ysyOf8pLzf/ISMg/zReiv9Fkev/TpDa/02Q
+        2/9ChtL/Onm9/zl3uf86eb//O3m+/zl4v/84ecH/PXzB/0SFy/9Bg83/R4nS/0mL0v9HiMv/RYXL/0KC
+        zP86esP/QYDI/0uN2f9IkN//O37I/zd+zf8uY5v/MkBQ/xwdHv8TFhb/LTU8/ygwN/8nLjT/Ji08/yYt
+        Qf8mLkD/Jy9B/ycvQf8mLkD/JS1A/yUtP/8nLkH/Jy9B/yYuQP8kLD//JCw8/yQrMv8nLzb/N0FG/xUY
+        Gf8PERH/Jiwx/ycwN/8eJi7/HyY4/yAoPP8hKDv/ISg7/yEoO/8hKDv/ICg7/yAoO/8gKDv/ICc7/x8n
+        Ov8fJjn/HiU5/x4mOv8gKDP/HiYs/yMsNP80QUz/HSYs/wsOEf8TGBz/JS83/xkgJv8cJCz+JC84hyQt
+        NXgcJCv8GB8l/yErMv8TGR3/Cw4Q/xogJv8zQEz/PU1V/0JTXP8ZH6r/AQHv/wME6/8DBOn/AwTp/wME
+        6f8DBOr/AwTq/wME6v8DBOr/AwTq/wME6f8DBOr/AADw/w4RnP9HV2X/V2x0/zA8Q/8FBQT/GR4g/z1K
+        Rv83Q13/DRHA/wAB9f8CA+r/AgPr/wID6/8CA+v/AgPr/wID6/8CA+v/AgPr/wIC7f8BAPP/CAqk/zlI
+        U/9GV1b/OkJJ/yYtM/8TFxn/HyAq/yo6WP8vaq3/N3a9/zZ3v/86e8b/QIDJ/zx9x/83eMX/QoXT/0+O
+        1f9Ni8//S4vT/0OEzv9Af8T/R4TK/0KAyP89fMT/P33G/zt6w/8+gMn/RYPI/0iGz/9GhdD/Pn3E/z17
+        vv9FjuD/O22k/yIjJP8rMDj/LjU8/yYpKf8wS2X/RY7h/0CAxv9BfcH/QX/D/0B+wP9AfsH/Q4PL/0qJ
+        0v9JiM//R4bP/0qIzv9JiND/SonM/0uIzf9Egsr/QoDC/0WDyv9IhtL/QoLJ/0F+wv9CgMX/QoDG/0KB
+        yP9CgMP/RILG/0eJ1P80Vnj/Jicn/ywzOf8qMTj/ISIf/zVdiP9Jkub/U5PZ/0yQ2/89fcX/O3e5/zt3
+        uf86d7v/O3rA/zt7w/87fMT/Pn3E/0SDyv9EhMz/SIfL/0SEy/9Chs//QYjY/0OG1P88fcf/PH/J/0KG
+        0f9Mjtj/Q4XO/zd9zP8xcrj/K0FY/yMlJP8VGBn/Jy4z/ykvN/8oLjT/Ji06/ycuQP8nLkD/Jy5A/ycv
+        Qf8nLkH/Ji5A/ycuQP8mLkD/Ji5A/yQtP/8kKz//JCs7/yQqM/8mLDP/OENJ/xsfIf8KCwr/HyUn/yw3
+        PP8eJiz/HyY3/x8mOv8gJzr/ISg7/yEoO/8gKDv/ICc7/yAnO/8gKDv/ICg7/x8nOv8eJTn/HiU5/x4m
+        Ov8gKDP/HiYs/yAoMP8zQEv/Iisz/woOEf8RFRn/Iisy/x0lK/8bJCv+Iiw1nyMsNIwcIyv+HSQr/yAp
+        MP8RFhr/Cw4Q/xshJ/83RFH/QVJY/0NTZf8TF8r/AADx/wME6f8DBOn/AwTp/wME6f8DBOr/AwTq/wME
+        6v8DBOr/AwTq/wME6f8DBOr/AAHx/xUalP9LXWb/VGhx/ykzN/8FBQT/ICYq/z9ORf8yPmv/Bwnc/wAB
+        8f8CA+r/AgPr/wID6/8CA+v/AgPr/wID6/8CA+v/AgPr/wIC7f8AAPX/ExeM/z5NTf9FVVf/NkBG/yEn
+        K/8SFxf/JCg2/yM6WP80dLz/OHm//zd3wP87e8T/Q4XP/zh5xf80c7v/PIDM/02M0v9MitD/SYrT/0KF
+        0/9BgMn/RYPJ/0B+x/88fcX/QH/I/z58xf9Agcv/RITK/0iGyv9LiM//QoHK/zx5vv9BiNr/OG2l/yMk
+        JP8uMzz/MDg//ycpKf8rRmH/QYnc/0OBx/8/e7z/QX7C/0B8v/8/e7//QYHI/0eI0v9JiM//SIfP/0aD
+        yP9Ihsz/SojO/0mHy/9Dgcj/RIHI/0iGz/9HhMv/QX/G/z98vv9AfL7/QX/E/0CAyP9BfsL/RIPK/0OH
+        1P8yVHb/Jicm/y0zOf8rMTn/IiMg/zFXf/9Fitv/TY3V/0uM1P8/gMn/PHm8/zt6vv86eb//O3vA/z5+
+        xv8+fcb/RYTM/0uK1P9IiNP/SovS/0aI1P8+f8r/P4PQ/0eP3/9DhtP/QILL/0GFzv9Ljdb/R4fQ/zd6
+        xv80eMP/JkJc/yksK/8XGhz/ICcr/ykwN/8oMDX/Ji04/ycvQP8mLT//Ji0+/yYuQP8mLkD/Ji5A/ycu
+        QP8nL0H/Jy5B/yYtQP8lLD//JCs9/yQrNv8lLTT/Mz1D/yMqLf8LDA3/HSIj/yw1PP8gJy7/HyU2/yAn
+        Ov8gKDv/ISk8/yEpPP8hKDv/ICc6/x8nOv8gJzv/ICc7/x8nOv8eJTn/HiU5/x4mOv8fJzT/HyYs/x8m
+        Lf8yPkr/JS43/wsOD/8QFBf/ICkw/yErMf8bIyn/ISoztSMsNJ8cIyr+ISkw/x0kKv8OEhX/Cw4Q/xsj
+        J/86R1P/RFRY/0JSZ/8OEdv/AQHx/wME6f8DBOn/AwTp/wME6f8DBOr/AwTq/wME6v8DBOr/AwTq/wME
+        6f8CA+v/AQHv/x4kc/9TZGT/UmVy/yMqLf8GBgT/JS4y/0BQQv8tOHb/BAbu/wEB7f8CA+r/AgPr/wID
+        6/8CA+v/AgPr/wID6/8CA+v/AgPq/wEC7/8AAPb/Hydr/0JSQv9CUFf/Nj9G/xwiJf8ODxD/Jy09/ypL
+        cv84ecL/OXrF/zp5w/9AgMr/Q4jY/zd2v/83db3/On/K/0yM0/9Pjtn/TIrT/0ODz/9Bgs3/QoHJ/z9+
+        x/9AgMj/QYLN/z19x/9Bg83/RobR/0iFyP9LiMz/Q4DH/z18wv9Bh9j/OGqf/yIlJP8uNDz/MTg//ykr
+        K/8rRFn/QIXT/0SG0v9Af8X/Q4HK/0OBx/9BfcD/QYDG/0aEzP9Hhc7/Q4LK/0aDyv9KiND/SYnS/0SB
+        xf9Cf8L/RoTK/0aGzP9EgcX/QX7E/0B8v/9CfsD/Q3/E/0GAyP9Cf8L/Q4DB/0WJ1P8zVXj/Jigm/y4z
+        Ov8qMTn/IiMh/y9Td/9ChdD/Q4TL/0SDzP9Hhs3/QH7C/zt7wf87esH/Oni9/zt5vP9Bgcn/SIrU/0iH
+        zv9Eg8r/QofX/0KH1P8+f8T/PX3G/0SL2/9Hi9j/R4XH/0mHyf9Kjtj/RonW/zt7wf81eMD/KlF7/y43
+        Pf8TFBX/Gh4h/y01PP8pMTf/KC85/ygwQf8oL0L/Jy5A/ycuQf8nL0H/Jy9B/ycuQf8nLkH/Jy9B/ycu
+        Qf8kLT//JCs+/yQsN/8lLjT/MDpB/yw0OP8NDxD/GR0d/ykxN/8iKDD/ICc1/yEoO/8hKTz/ISk8/yEp
+        PP8hKTv/ICc6/x8mOv8gJzr/ICc6/x4mOf8eJTn/HiU5/x4lOf8eJTX/HyYt/x4mLP8yP0r/KDI7/wwO
+        EP8NERX/GiEo/yYvN/8aIij/ICoyyiIrNLEbIin/JC01/xsiKf8MDxL/DBAS/yAnLf87SVT/Q1RW/z5M
+        Zv8LDtv/AgLw/wME6P8DBOn/AwTp/wME6f8DBOn/AwTq/wME6v8DBOr/AwTq/wME6f8CA+z/AgLv/ycv
+        bf9ZbGj/UGJw/xgeIP8HBwb/KzQ5/0JRRP8qM3f/BATu/wEC7f8CA+n/AgPr/wID6/8CA+v/AgPr/wID
+        6/8CA+v/AgPq/wEC8v8AANz/JzFk/0VVSv9ATFP/NDxC/xgeIf8ODw//KTFB/y9cj/86e8b/N3a+/zl3
+        vv9Bgcv/QILQ/zt4vv87ecD/P4HN/02N1/9Sktv/Uo/T/0aEzP8+gMz/QoXP/0F+xv9Af8n/QIDL/0B/
+        yP9Fg8z/RoLI/0iGyP9OjtT/SYrW/0KAxv9Gidf/OWid/yIkJP8tNDv/MThA/ykrLP8sRFn/QIPQ/0OE
+        z/9Cgsz/RYXP/0eEy/9HgsX/RIDD/0F+v/9DfsH/S4nR/1GP2P9LidD/SIXJ/0J/wf9Df8H/RIHF/0mJ
+        0v9Hhcv/QX3A/0J9wv9Ef8H/Q3/B/0SCyf9Fgcb/RIDB/0mL1/80Vnr/Jygn/y41PP8rMTj/IiMg/y9T
+        eP9Bgsz/QoHH/0OByv9Jh8r/RIHI/0B/x/8+e77/PHi7/zp4vv86fsj/PYDM/z9+wv89f8b/OXzG/zp4
+        uv87er7/O3nA/z9/x/9GiNT/S4vS/0qKzf9KkeD/RYjV/z17v/81d73/LWGZ/yw5Rf8UFRP/FRkb/y43
+        Pf8rMzn/KTA4/ykxQf8qMkX/KjJF/ykxRP8pMEL/KTBC/ygwQv8oL0L/KDBC/ygvQv8nLkH/Ji5B/yYt
+        Ov8lLDL/LTU8/zI8QP8PEhH/FRgZ/ykxNv8lLDT/ISg0/yEoO/8iKTz/Iio9/yIpPP8hKDz/ISc6/yAo
+        O/8hKTv/HyY6/x4mOf8eJTn/HiU5/x4lOf8eJTT/HyYt/x0kKv8vO0b/LjlD/w8SFv8MDxL/Fhwh/ygy
+        O/8bISj/ICky3SIqM78aICf/Ji84/x0kKv8MDhH/DxMW/yQsNP86SFP/Q1VX/zhEeP8KDOH/AgLv/wME
+        6P8DBOn/AwTp/wME6f8DBOn/AwTq/wME6v8DBOr/AwTp/wME6f8CA+z/AwTr/zA6dP9ecm//TmBs/w4S
+        E/8HCAn/Lzk8/0FRS/8kLIr/AwPx/wIC7P8CA+r/AgPr/wID6/8CA+v/AgPr/wID6/8CA+v/AgPr/wEC
+        9P8BAbj/LTdW/0ZXUf8+SlH/MDg+/xccH/8XGRr/Ji8//zFnqP85esL/OHa6/zl5wP87ecD/O3rD/zx8
+        xf88fcj/RYbO/0+N0v9Qkt7/UJDc/0aF0P9ChM//RIXO/0B8wP88fcb/PH3I/0GAx/9Eg8r/Q4DF/0qH
+        zv9Qkdv/TI3Z/0iEyP9NkN7/Om2l/yEkI/8tMzv/MjlB/yosLv8tRVv/SIjS/0WDzP9BgMr/RoXL/0OA
+        xf9Ihc3/R4TK/0R/xP9Fgcf/SojR/1aV3P9Yltr/To7V/0WCxv9EgML/Q3/B/0eGzf9Fg8f/QX3A/0N/
+        w/9HgsX/RoLE/0WCxv9FgcP/RYHC/0mL1f81Vnf/Jygn/y81PP8rMjn/IiMh/y5Tef8/gs3/Q4HF/0F/
+        xv9DhM3/R4jT/0SG0v8+fcL/PXi5/z16v/88fcb/PXvC/0F+wv88e8T/OnrE/zx7wv86esD/PHvC/0WD
+        y/9DhdD/RIXO/0aH0f9JjNb/RIPK/zp3vP82drz/Mm2w/yk5Sf8eHx3/Fxsd/y42O/8sNTv/KzI5/yox
+        Qv8qMUT/KjJD/yoyQ/8qMUP/KTFD/yoxQ/8pMEL/KDBC/ygwQv8oMEL/KDBC/ycvPP8kLDL/KDA3/zZA
+        RP8QEhL/ERQU/ykyNv8oMjn/ISg0/yEpO/8iKTz/Iio8/yIqPf8iKT3/Iik8/yIpPP8hKTz/ICg7/yAn
+        O/8gJzr/ICc6/x8nO/8fJjb/Hycu/xwjKf8sNkL/MTxH/xIWG/8MDxH/Fx0i/yk0PP8aISf/Hygx7iIq
+        M80ZHyb/Ji83/x0kKv8MDhH/EBQY/yMsM/85RlD/RVVX/zVBjv8JC+f/AgLt/wME6P8DBOn/AwTp/wME
+        6f8DBOn/AwTp/wME6f8DBOn/AwTp/wME6v8CA+//BAXK/zdEbP9idnb/S1tn/wgICf8NDxD/Mz8//z5N
+        U/8bIar/AQL0/wID6/8CA+r/AgPq/wID6/8CA+v/AgPr/wID6/8CA+r/AgPr/wAB9f8GB7b/Mz5Y/0dW
+        Uv87R03/KTE3/xQaG/8bHSH/ISs3/zd1u/88fsn/O3m//zp5wf88eL//O3i9/zt5vv89f8n/SIzZ/0+P
+        1v9Pj9n/UZHa/0yK0f9Hhs//RIXP/0B/w/89esL/P37H/0F/xf9BfsT/RILI/02K0v9OjdX/SojQ/0aC
+        x/9Lj97/O2yk/yEjIv8tMjr/MzpD/ywuMP8sRF3/So3b/0+Q2f9EhM3/QX/G/0J/xf9Fgsr/RILJ/0yJ
+        z/9RjM//T4/W/12h7P9enN7/UJDZ/0aDy/9HhMn/R4XK/0aDyf9FgMP/RIDE/0KAyP9HhMv/SIXJ/0aC
+        xP9GgcL/R4TH/0qO2/81V3f/Jicm/y81O/8tMjn/IiIg/y9Uev9ChNH/RoPJ/0WEy/9Cg83/RobP/0B+
+        xf8+e8D/PXm6/zt7wP9AgMj/Q4LI/0eGzv9BfsL/P3/H/0OF0f87e8T/PH7J/0mN2/9Fitj/RYTJ/0iK
+        1P9FhMv/QoPK/zh4vv82drz/NXa+/yQ2R/8hIyD/Fhob/yoyN/8tNT3/LTQ7/yoyP/8qMkP/KjJE/yoy
+        RP8qMUP/KjJD/yoyRP8qMUP/KDBC/ygwQv8oL0L/Jy5C/yYuPP8lLTP/KDE4/zpDR/8TFhX/CwwM/yYt
+        Mf8tNj3/Iio0/yMrPf8jKT3/Iio8/yMqPf8jKj3/Iik8/yEpPP8hKDv/ICc7/yAoO/8gKDv/ICg7/yAn
+        O/8fJjj/ICgw/x4lK/8qNT7/MD1G/xQZHv8MDhH/Fx0i/ykzPP8ZISb/Hycw+yIqM9cZHiX/JS43/xwj
+        Kf8MDBD/EhUZ/yUuNf85Rk//RVZZ/y05lv8GCOn/AgPs/wME6f8DBOn/AwTp/wME6f8DBOn/AwTp/wME
+        6f8DBOn/AwTp/wME6v8CAvL/BAWw/ztIYv9gdXj/RVRf/wYICP8QFBX/NUJA/z1KVP8VGqz/AAHz/wID
+        6/8CA+r/AgPq/wID6/8CA+v/AgPr/wID6v8CA+r/AgPr/wAA9/8LDbL/NUNW/0RVUv86Q0r/Jy40/xMY
+        GP8dICT/IzVJ/0J/xv9Dg83/O3m+/zx9xP9Agcv/PHm//zt3vP8+f8j/R4bP/06Kzv9Sk93/VZXc/0yI
+        yP9Ef8X/RoXO/0SBxf9CfsP/QH/H/0F9xP9EgcX/SIbP/0+O1v9PjNP/SIXL/0SBx/9JjNv/OGec/yEk
+        JP8uNDv/NDtC/y0vMP8sRFv/RIbU/0eFy/9Fgsj/RITM/0N/w/9Ef8P/RYDF/0qHzv9RjtH/Vpnk/1id
+        6v9Wldn/T43T/0aBxf9HgsP/SYbL/0iDyP9GgcP/RIDD/0SBxf9Hg8f/R4PF/0WBwv9EgMH/RoHE/0WI
+        1f8wU3X/Jykn/zE2Pv8uMzr/ISIf/zFYgP9GidX/SIXI/0eHzf9Cf8b/QX/E/0J/w/9CfsD/P3q6/zx7
+        wP9Ag87/P4LN/0SF0P9Cgcj/PnzB/0WGzv9Agcv/PH7J/0SFzP9Ih9D/TY7X/0uN2P9GhMj/RYjR/zt7
+        w/84d77/OXnC/yY/WP8hJSX/FRgZ/ycvNP8uNj3/LTU8/ysyP/8sM0X/KzNF/yszRP8qMkT/KzNF/ysz
+        RP8qMkT/KjFD/ykxQ/8oL0H/KC5B/yYuPf8mLjX/KDA4/zlCR/8aHh//CgoK/yMqLv8tNj3/Iyoz/yQs
+        Pv8kKz7/Iyo9/yMqPf8jKjz/Iik8/yIpPP8iKTv/ICc6/yAnOv8gJzv/ICc7/yAnO/8gJzn/ISgw/x8m
+        LP8pMz3/MTxG/xUaH/8LDhL/Fx0j/yk0PP8ZISb/Hicw/yEpMuAZHiX/Ji83/xsjKf8LDBD/EhUa/yYu
+        Nf85RlD/R1da/yYwmf8EBen/AgPs/wME6f8DBOn/AwTp/wME6f8DBOn/AwTp/wME6f8DBOn/AwTp/wME
+        6v8BAvP/BAWr/z5KY/9dcXb/PUxV/wYICP8TGBn/N0ND/z1JU/8UGar/AAHz/wID6/8CA+r/AgPq/wID
+        6v8CA+v/AgPr/wID6v8CA+r/AgPr/wAA+P8PEpP/OUdE/0NTVf85Qkj/Jiwy/xAUFP8hJCr/KEFe/0KC
+        zf9ChM7/One9/z18wv9Bgcr/PnzD/zx4vf89e8P/RYHF/0+Lzv9Tk97/VJTe/06L0f9KiM//RYHG/0OA
+        yP9Dgcf/P33D/z9+xf9Hg8n/SonQ/02L0f9NiM7/SYXL/0SBxv9IiND/NWGR/yIlJf8xNj7/NTxE/ywu
+        L/8sQlf/RITK/0aDxv9HhMr/SYjQ/0iH0P9Fg8j/S4fN/0qFyf9MitH/V5zs/02P2/9QjdP/VZXd/0eF
+        yf9Ffr7/SoXH/0uGyv9Khcj/RYDA/0V/wP9HgsP/R4LE/0aBw/9Hg8b/R4LF/0SG0f8vUXL/Jyoo/zE3
+        P/8uMzv/ISIg/zFWe/9HidT/R4TF/0aDxv9DgML/QX3B/0SAxv9Df8T/QHu+/z57vP9Cg83/QIHM/z16
+        wP9FhMr/Q3/B/0iJ0P9Mjtn/RobR/0SDyP9KiMr/UI/V/1KS2v9Pktv/SYzZ/zl5w/83d77/OXrA/yxL
+        a/8pLzL/ExYW/yQsMf8vNj7/LjY8/ysyP/8sNEb/LDRG/ywzRf8rNEX/LDNF/ysyRP8rMkT/KjJE/yoy
+        Q/8pMEL/KTBD/ygwP/8oLzf/KTA4/zZARv8fJCf/CgsK/yIqK/8sNjz/Iysz/yQsPv8kKz//Iyo9/yIq
+        PP8iKTz/Iik8/yIpPP8iKTz/ISg7/yAnOv8fJjr/ICc6/yAnO/8gJjr/ISkx/x8mLP8pMzz/MDxF/xUb
+        IP8LDhH/Fx0i/yo0Pf8aISf/Hicw/yEqMugZHyX/JS01/xshKP8KDA//EhYa/yYvN/85Rk//SFdb/ycw
+        lv8DBOj/AgPt/wME6f8DBOn/AwTp/wME6f8DBOn/AwTp/wME6f8DBOn/AwTp/wME6v8BAvP/BAWr/0FO
+        aP9fcnf/OkdP/wYHB/8WGxz/OEVE/zxJUv8TGK7/AAHz/wID6/8CA+r/AgPq/wID6v8CA+v/AgPq/wID
+        6v8CA+r/AgPs/wAA+f8SFYL/Okg5/0NSWP86REn/JSsv/w4QEP8kKS7/LUtp/0SDzv9Bgc3/One9/zx5
+        wP89er//Pnq+/z16vv8+fsf/RYPH/1ST2/9VleT/UY/Y/02O1v9Ki9b/R4LG/0J/xf9Af8X/P33C/0SC
+        yf9IhMj/TIrO/1CN1P9KidL/S4nR/0aDyv9Hidb/NWOU/yIlI/8yOD//NTxE/ystLv8qQ1r/RobO/02M
+        0/9Uktz/TIzV/0uJ0v9KiNH/To7Y/02J0P9OjNb/VJro/0mI0P9MiM//TY/c/0aGzv9DfsH/RoHB/0yG
+        yf9Mh8n/R4LD/0SBx/9GgsX/R4PG/0eBxf9KhMX/SoXH/0uM1f8yVHT/Jyko/zI4P/8uNDv/IiEg/y5S
+        d/9EhdD/RYDC/0SAw/9FgcX/Q37D/0F9v/9Fgsj/SITL/z57v/9Bgcn/SYnT/02M1v9KidD/S4nN/0qM
+        1v9Mjtj/S4vW/0qI0f9KiMv/SonQ/1GP1f9PlOT/SYrX/zp5wf83eL7/OXrA/y1Qc/8qMTT/EhMU/yUq
+        Lv8xOED/LzY9/ysyP/8sM0X/LDNG/y0zRf8tNEX/LDRF/ysyRP8rMkT/KjJE/yoyQ/8pMUP/KTBD/ygw
+        QP8pLzj/KjE3/zQ9Qv8iKCr/CgsK/yIoKv8sNjz/JSsz/yUsPf8kKz7/Iyo9/yMqPf8jKj3/Iik8/yIp
+        PP8iKTz/ISg7/yAnOv8gJzr/ICc6/yAnO/8fJzv/ISkx/x8mLP8pMjv/Mz5J/xgdIf8LDhD/Fx0h/yoz
+        PP8aISf/Higw/yIqNO4ZHyT/JCw0/xoiJ/8KDA//Excc/ykyO/86R1D/SFda/yYwlP8DBej/AgPu/wME
+        6f8DBOn/AwTp/wME6f8DBOn/AwTp/wME6f8DBOn/AwTp/wQE6v8CAvP/BQWr/0VTbf9idXr/OUZO/wYH
+        B/8XGx3/OUZC/ztIVP8RFbb/AADz/wID6/8CA+r/AgPq/wID6v8CA+r/AgPq/wID6v8CA+r/AgPs/wAA
+        +f8TFoH/O0k5/0NSWP88Rkz/JSsx/w0ODf8iJir/ME1t/0qJ0P9Eh9T/Ona8/zt4vf8+e8H/PXm9/zx6
+        wf88fcT/RILH/1aT2/9Vk9v/TovR/02L0f9Khs7/R4LF/0N9wP8+e8H/P33D/0WBx/9GgcT/SITH/0mG
+        y/9HhtD/R4XO/0iDx/9Njtv/NmOV/yEjIv8xOD7/Nj1E/ystLf8rRFv/SYrW/06M0v9NjNT/SYTI/0aB
+        xv9JhMf/TovQ/1GM0v9VlN7/V5vq/0aCx/9HgcX/RYLI/0qGyv9Gg8n/Q37A/0eEyP9Hg8X/RoLE/0SE
+        zP9FgcP/R4HD/0aDxv9Hg8P/SoXI/1CT4f83WX3/KCko/zQ6Qv8vNTz/IiIf/y5TeP9HiND/SILB/0WC
+        xf9Jh83/S4bK/0N/w/9Ghcz/TInP/0OAxf9Af8X/SorU/1GT3f9Kjdf/RYfS/0mI0P9Oj9f/TY7Y/0yM
+        1v9IiM7/R4PK/0+N0/9Okt7/R4bN/zt5v/84ecL/PYDM/zFXgf8oLzL/ERIR/yQpLv8xOkL/LzY9/ywz
+        P/8sM0b/LTRG/y00Rf8tNEb/LDRF/yszRP8rM0T/KzJE/yoyQ/8pMUL/KTBD/ykwQP8pMDj/KTE3/zM7
+        QP8kKiz/CQwL/yEnKf8sNTv/JCoz/yQqPP8jKz7/Iyo9/yIpPP8jKj3/Iyw9/yIqPf8hKTz/ISg7/yAn
+        O/8fJzr/HyY6/yAnOv8fJjr/ISgx/x8mLP8pMzz/NUJM/xkfI/8LDRD/Fxwh/ygxOv8aISb/Hygv/yMq
+        M/AaHyX/JCwy/xsgJv8LDA//Ehcb/yw2P/89S1T/SFlc/yYulP8DBOj/AgPt/wME6f8DBOn/AwTp/wME
+        6f8DBOn/AwTp/wME6f8DBOn/BATp/wQE6v8CAvL/Bgev/0dWcP9hdHn/N0JJ/wUGBv8YHR//OkZD/zpH
+        V/8PE8T/AADy/wID6v8CA+r/AgPq/wID6v8CA+r/AgPq/wID6v8CA+r/AgPs/wAA+f8VGYP/PEs6/0NR
+        V/88Rkz/JCow/woLCv8gJSn/L05z/0OByf9Ehc7/PnvA/z55vf9AfsX/QoDI/zt3uv8+fcH/TYvS/1iZ
+        4v9Ul+L/UIzQ/0yHyP9IhMj/RH/B/0SAxP9EgMb/QX3B/0N+wP9Ff8T/RYHI/0aDyP9Khsz/SITK/0iE
+        xP9Rkdn/N2SW/yAkIv8xNz7/Nz1G/ywvLv8qQ1v/TI7c/1CO1v9KidD/SILE/0eBwv9Ig8X/UIvO/1SQ
+        1f9XluD/WJrm/02Iy/9Oh8n/TYjM/0+Jzf9Lh83/RoPJ/0mGzP9Jhcj/R4LE/0eEzP9FgMP/RoHB/0mE
+        xv9Lhsf/TIbI/06Q3/8yVXn/KSoo/zU8Q/8wNj7/IiIg/y1Rdv9Fhs//SIPE/0R/wf9KidD/UpDX/0mD
+        xv9MiM3/TovQ/0iFyv9DgcX/SYbL/0yL1P9QkNj/To7X/0uL1P9NjNP/UY7U/0yN1/9Ljdj/R4fP/02R
+        3v9Ljdr/RILJ/zt5v/85d77/O33I/zBZhP8oMDT/Dw4N/yInLP8zPET/Lzc9/ywzP/8tNUb/LTRG/y00
+        Rv8tNEb/LTRF/yw0Rf8rM0X/KzJE/yoyQ/8qMUL/KTBD/ykwQP8pMDj/KS82/zE5P/8mLC7/CwwL/x8k
+        Jv8rNDr/JCsz/yQqPP8jKj3/Iik8/yIpO/8iKTz/Iyo9/yMqPP8iKDv/ISg7/yEoO/8gJjr/HyY6/yAn
+        Ov8fJjr/ISgx/x8mK/8pMzz/NkJN/xkfI/8LDRD/Fhwh/ygyOv8bISf/Hykw/yIrM/AaISf/Iysx/xof
+        JP8LDQ//FBgc/y86Q/8+S1X/SFdZ/yQsk/8DA+j/AgPs/wME6f8DBOn/AwTp/wME6f8DBOn/AwTp/wME
+        6f8DBOn/AwTp/wQE6v8CAvL/CAqy/0lYcf9ecXb/Mz5E/wUHBv8cIiT/PEhE/zhGWv8OENH/AADy/wID
+        6f8CA+r/AgPq/wID6v8CA+r/AgPq/wID6v8CA+r/AgPs/wAA+v8WHIb/Pk07/0JRV/89SE7/Iiku/wcH
+        Bv8hJin/MVF1/0SBxv9Hhs//Q4HL/z96v/9Dgcj/S4jQ/0F8wf9EgMf/T47U/1ib5/9VlN3/Uo3P/06J
+        zP9Ihcr/RYLH/0eH0f9Mi9T/Qn3B/0aCxf9GgMX/RYDD/0mI0P9Lic//RoPJ/0mEyP9Qkdr/OGaa/yEj
+        Iv8zOT//OD9I/y0vL/8pQ1r/TZLh/1yc5f9Xk9r/TIfL/0uGyv9Jhcj/TIfM/1KNz/9bl9v/VJLZ/1CM
+        0v9Wk9r/W5vl/1eS1f9Risv/TYjL/1WQ1f9SjtL/SoTF/0yHyf9Kg8X/SILD/0qFyP9Mh8f/U43M/12g
+        7P86XoL/Jygm/zQ7Qv8xNz7/IiMg/y1Tev9ChdH/RYPH/0N/w/9JidL/T43X/0mGzP9Qjc//UIzP/0aC
+        yP9Egcj/UY7U/1ua4f9Zltz/VpXb/06P2f9Jhcj/SIbL/0uM1/9Pk+H/RofQ/0aI0/9Bg87/P37G/zx7
+        wf85drj/O3rC/zFZg/8qMDT/CwoJ/yAmKv83P0b/Lzc9/y00Pv8uNUf/LTVH/y00Rf8tNEX/LTRG/yw0
+        Rf8rMkT/KzNE/yozQ/8pMEL/KTBD/ykwQP8pMTn/KTA2/zE4Pv8pMDL/DA0M/xsgIf8qMTf/JSw0/yQr
+        PP8kKj3/Iyo9/yMqPf8jKTz/Iik8/yIpPP8hKDv/ISg7/yAnOv8gJjr/ICc6/yAnOv8fJjr/ICcw/x4l
+        Kv8pMjr/N0NO/xkfJP8LDQ//Fhsf/ycwN/8bISj/Hygx/yMsNe0bISj/JS00/xshJ/8LDQ//Exca/yo0
+        Pf87R1D/R1VX/yQskv8DA+j/AgPs/wME6f8DBOn/AwTp/wME6f8DBOn/AwTp/wME6f8DBOn/BATp/wQE
+        6v8CAvL/Bgiv/0lXcP9gcnf/MDo//wUGBv8dIiX/PUlE/zlFWv8OEdH/AADy/wID6f8CA+r/AgPq/wID
+        6v8CA+r/AgPq/wID6v8CA+r/AgPs/wAA+v8VGYT/PUs6/0NRV/8/SE7/JCsw/wgJCP8hJij/MlFz/0N/
+        w/9Eg8r/PnzD/z15vv9Df8X/Q4HH/0F/yP9EgMf/S4nP/1mZ4/9Zl97/UY/T/0qHy/9LiND/S4bO/0qJ
+        1P9JidP/Q37C/0yJ0P9Mh8z/SoTF/02IzP9Lh8v/SYTL/0eBwv9KitL/NmOV/yAjIv80OkD/OkBK/y0v
+        L/8pQln/UJTk/2Cf5P9bltj/TorR/0qFyf9Jg8P/TIfL/0yHyf9al9z/Wpje/0uHy/9SjtP/W5vi/1WR
+        1f9NiMn/TYfK/1ya4f9Wktf/SYPC/0qExP9Kg8P/SoPC/02Hyf9Oicr/UYzN/1qe6/85XoP/KCgn/zY7
+        Q/8yOD//IiMg/zFUd/9JitT/SoPG/0mCxv9Li9T/UY/Y/0qI0P9Ihcn/S4jN/0aCxf9Df8H/SojN/1CS
+        3v9PkNr/TYrP/0yJ0f9MidD/SonS/0+M0v9LjNb/QYDJ/0KByP8/gMr/PXzD/zx5u/87d7j/O3vE/zJa
+        hv8qMTX/Dg0M/yMpLP82Pkb/MDc+/y00Pv8uNUf/LzZH/y41Rv8tNEb/LTRH/y01Rv8sM0T/KzJE/ysy
+        Q/8qMUP/KzJD/ykxQf8qMTn/KTA2/zE4P/8qMDP/Cw0M/xsgIv8qMTj/JSw0/yUrPf8kKz7/JCs9/yMq
+        Pf8iKj3/Iig7/yEoO/8hJzr/ISc6/yAnOv8gJzr/ICc6/yAnOv8gJzr/ISgw/x8mK/8pMjr/NEBJ/xkd
+        Iv8LDRD/Fhwh/ygxOf8bIij/ICky/yMsNOccISf/Ji42/xwiKP8LDBD/ExYb/ycvN/85RU3/R1dY/yUt
+        k/8DBOj/AgPt/wME6P8DBOn/AwTp/wME6f8DBOn/AwTp/wME6f8EBOn/BATp/wQE6v8CAvL/BQWs/0lW
+        cP9idXn/Ljk+/wUGBf8dIyb/PUlG/zlEVf8OEsH/AADy/wID6v8CA+r/AgPq/wID6v8CA+r/AgPq/wID
+        6v8CA+r/AgPs/wAA+v8VGIL/PEo4/0NRVv89Rk3/Ji4z/wsNDP8jJin/MVBv/z99wf8/fcP/PHi7/z55
+        uv8/fML/PHm+/0J+xP9Ggcf/SonR/1aW3f9Wk9j/U5DX/1CN0/9NidD/SoTI/0uGzf9Ig8j/RYHF/0qH
+        zP9Nis3/TIbI/0+IyP9Nhsj/SobM/0eDyP9MjNf/NmGS/yAiIP81OkD/O0FK/y0vL/8qQVb/Vpjj/2Oh
+        5f9aldb/TYvS/0uFxv9NhsX/TojK/0+Kz/9fm+H/Y6Dk/1WS2P9MiMz/UIvN/1KLz/9Mhsb/TonM/1yc
+        5f9YlNb/S4XH/0qFyP9LhMb/T4nL/0+Jyv9Ri87/UYzP/1aX4f81Vnr/Kisp/zk/Rv80O0L/ISIf/zda
+        fv9Tk9v/TovO/1CN0/9NjtX/UpLa/0qHzf9CfcH/QoDF/0OAxv9Df8H/Q3/F/0CE0P9Fh9H/RYHF/0uH
+        yf9Pi8//Vpbf/1iW2/9Qi83/TIjL/0mHzf9FhMz/P3m9/zx3uf88ebv/PHm9/y9Wff8qMjb/EREP/yQp
+        Lf80PUT/MThA/y41P/8uNUf/LzZI/y82R/8uNUb/LTRF/y00Rf8sM0T/KzJD/ysyQ/8rMkP/KzJE/ykw
+        QP8qMTn/KTE3/zM7Qf8rMjT/Cw0M/xofIf8qMTf/Jiw1/yUsPf8lKz7/JCs9/yMrPf8iKj3/Iyk8/yMp
+        PP8iKDv/ISg6/yEnOv8gJzr/ICY6/yAnOv8fJzr/ICcw/x8mK/8pMjv/ND9I/xgeI/8LDhD/Fhwh/ygx
+        Ov8bIij/ICkx/yIrM98aICb/JS01/x0iKP8MDRD/Excb/ygwOf87SFH/Slpc/ygwlf8EBej/AgPt/wME
+        6P8DBOj/AwTp/wME6f8DBOn/BATp/wQE6f8EBOn/BATp/wQE6v8CAvL/BQWr/0hUbv9hdHj/MDo//wUG
+        Bv8dIyb/PElG/zlEUv8QFbj/AADy/wID6v8CA+r/AgPq/wID6v8CA+r/AgPq/wID6v8CA+r/AgPs/wAA
+        +f8UFoL/PEg5/0NRVv88RUv/KC40/w0PDv8lKCr/M1Bu/0aEyv9Df8b/Pni6/z97vP9DfsD/QXzA/0WB
+        xf9JhMz/UI7V/1SS1P9QjdD/W5bY/1yY3/9RjtX/S4jN/0iFyP9Gg8n/RIDF/0WAxP9OitH/VI/S/1eS
+        0/9Ujc3/TYfL/0yHzf9Xl+f/PWqe/x8iIP82O0L/PERL/y0wMP8pP1P/WJvl/2Sl7P9Wkdb/UY/X/1GL
+        z/9WkNb/VI/S/1iU2f9op+7/YZ/m/2Gg6f9XluD/TYvV/0+L0P9Nhsf/UIvP/1mX2/9Uj8//TIbJ/0uE
+        yP9PiMn/XZne/1WQ0v9OiMn/TonL/1OS3f8zVHX/Ki0q/zpBSP81O0P/IB8e/zlehP9cnun/UY3P/0yJ
+        zv9Mi9T/SojP/0aCyP9DgMP/Q4DF/0OBx/9Df8P/Q3/E/0KByf9Fhc3/R4TJ/0+KzP9PjM7/UpTg/1WX
+        4/9SkNT/V5bc/0yM1f9KidX/QX7F/zx3u/8+e8H/PnzB/zBVev8rNDf/ERMR/yMpLf8yOkH/MTg//y00
+        P/8uNUf/LjVG/y82R/8vNkb/LTRF/y00Rf8sMkT/KzJE/ywzRP8rM0P/KTBD/ygvP/8oLzf/KTA2/zI7
+        QP8qMjX/Cg0M/xogIf8qMjf/Ji02/yUtPv8lLD//Jiw//yQrPv8kKj3/Iyo9/yMqPP8iKTz/Iig7/yEo
+        Ov8fJjn/HyY5/x8mOv8fJjn/ICcw/x4lK/8qND3/NEBJ/xgeIv8LDhH/Fhwh/ygxOv8bIij/ISky/yMs
+        NNUbIif/Ji81/x0jKP8LDRD/EhYa/ygwOP8+S1T/TF1f/yozm/8EBen/AgPs/wME6P8DBOj/AwTp/wME
+        6f8EBOn/BATp/wQE6f8EBOn/BATp/wQE6v8CAvP/BAWq/0NOaf9gcnb/Mj1D/wUGBv8bIST/OkdG/zpH
+        T/8TGKv/AADy/wID6/8CA+r/AgPq/wID6v8CA+r/AgPq/wID6v8CA+r/AgPs/wAA+f8RFIP/Okc5/0RR
+        Vv89Rkv/KTA1/w8REf8mKSr/Mk9t/0mJ1P9Egsr/Pni5/0B7v/9DgMX/QH7D/0R/w/9Ff8T/TIjL/1OP
+        zv9Uj9H/W5na/1mV1/9VktX/UYzO/0iDx/9Ggsv/RYDF/0eAwf9Mhsj/TonL/1WS1/9Yldj/UIvN/1mU
+        1f9dnef/PWqd/x4iIP82O0L/PUNM/y4wMP8pQFb/VJXg/2Gg4/9Zlt3/WZfh/1KMz/9YlNn/VZTc/1mV
+        1/9mper/XZvh/16a3f9lo+f/VpXe/0uJ0f9Picr/VI7S/1iW3v9Vj9L/TobF/0yFxf9Qisr/XJja/1WP
+        0P9MhsX/TojH/1CP1v8yUXD/Ky0s/z1ES/84Pkb/ISEf/zNXev9cn+7/U47T/0uFyP9VluD/VJDW/1CK
+        zf9Mh8f/SYPF/0eDx/9FgcT/RH7A/0N+w/9DgMj/RoPJ/0mEyP9Gg8f/SojN/1OT3P9Rj9T/V5bf/1KR
+        2v9Mjtr/QoHI/zx4uv8/fcb/P3/F/zBSdf8sMjX/EBQS/yMpLP8wOD7/MDc+/y00QP8vNkj/LzZI/zA3
+        R/8vNkf/LjVG/y00Rf8rMkP/KzJD/yszRP8rMkT/KTBD/ykvP/8nLzb/Jy80/zE5P/8oLzL/Cg0M/xsh
+        Iv8rMjj/Ji02/yYtPv8mLkD/Jiw//yUsPv8kKz3/Iyo9/yMqPP8iKTz/Iik7/yIpO/8gJzr/Hyc6/x8l
+        Ov8fJjn/ISkw/yAnLP8rNT7/Mz5I/xcdIf8LDxD/Fx0h/ygzO/8bISf/ISky/yUuNsscIyr/KDE4/x0k
+        Kf8KDQ//EhUZ/ycvN/8+SlT/TFxf/y44nP8FBun/AgPs/wME6P8DBOj/AwTp/wME6f8DBOn/BATp/wQE
+        6f8EBOn/BATp/wQE6v8CAvL/BAWs/0BKZP9fcXT/NUBH/wUHBv8YHiD/OUVE/zpITv8UGKj/AAHy/wID
+        6/8CA+r/AgPq/wID6v8CA+r/AgPq/wID6v8CA+r/AgPr/wAA+f8ND5T/N0RC/0VTVP9ASVD/KzI5/xEU
+        FP8gJCX/LERe/0eGzv9GhMv/P3m6/0F7vv9DgMb/Q3/D/0eBxP9Fgcj/TInR/1aS1f9VkNX/VpTZ/1OO
+        0P9Tkdf/UIzR/02Gyf9KhMj/R4DD/0iCxP9Mhcj/SoPG/1KN0/9Ukdr/VpPZ/2ai5P9cm+T/OGST/x4i
+        H/82O0L/PUNL/y0wMP8qQVb/UZDX/1mW2f9Vk9v/Wpnj/1GKyf9Ri8z/Uo7T/1yW2P9jnuH/Wpba/1qV
+        2P9fmtr/Ypzc/1mW3f9Tj9T/U4zM/1qW2/9altr/UInL/0uFxf9Picn/VY/Q/1GKyv9Nh8b/UIvJ/1CQ
+        1f8xUXD/Kiwr/z1ES/87QEn/IiIg/zNWe/9en+z/XJXY/0yHyf9Qkt7/VJPa/06Lzf9IhMT/RoDC/0eC
+        yf9Gg8j/RX+//0WBxf9Gg8v/R4PJ/0iCxv9FgcX/R4LF/0+M0v9Micz/TInM/1SQ1f9MjNT/RIPK/z15
+        u/8/fcb/QIDH/yxLav8lKiz/ExYV/yUsMf8vNj3/Lzc9/y40QP8wN0j/MDhJ/zA3SP8vNkf/LjVG/y00
+        Rf8rMkP/KzJD/ysyQ/8qMUL/KTBC/ykuPf8mLTT/Jy0z/zE4Pv8mLS//CQwL/x0jJf8sNDr/Ji02/yct
+        Pv8nLj//JSw+/yUsPv8lKz7/JCo9/yMqPP8jKTz/Iik8/yIpPP8iKjz/ISg7/x8lOf8fJjn/Iikx/yAn
+        K/8sNj//ND9J/xYbIP8MDxH/GB4j/yo0Pf8bIif/ICkx+SUvOL0eJSz/KjI6/x8lKv8LDhH/ERUZ/yYt
+        Nf88SVL/Slpb/zVAlv8HCej/AgLt/wME6P8DBOj/AwTo/wME6f8DBOn/AwTp/wME6f8EBOn/BATp/wQE
+        6f8DA/H/BAW1/zxHZP9gcXL/N0RK/wUHBv8WHB3/OURC/zxIUP8VGa3/AADy/wID6v8CA+r/AgPq/wID
+        6v8CA+r/AgPq/wID6v8CA+r/AgPq/wAA9/8HCbH/ND9U/0VVUf8+SlH/LzY8/xQYGf8bHh7/JDRC/0R+
+        wP9Egsb/P3q7/0F8vP9DfL7/RH7A/0WAw/9Egcj/TYnQ/1eS1f9YktP/VpDQ/1KO0v9Uj9P/UozN/06I
+        yf9KhMf/RoHF/0eCxf9Lhsv/T4nP/1CJyv9SjdL/W5fa/2Ca2P9dneP/PWeV/x8iIP83PUP/PUNL/y0u
+        L/8sQVX/VZLZ/1OP1P9Qis//UpDV/1OMzv9RjMz/VpDS/2Kd4P9emtr/Uo3Q/1KMz/9ZkdH/Z6Li/2Ge
+        5f9Tktr/T4vN/1+a3v9hneH/WZPV/0+IyP9Picf/U4zL/1GKy/9Oh8b/TojH/0+O1v8wUHD/KSop/ztB
+        SP85P0b/ISIf/zJXff9goev/aqXl/1iR1P9PjNH/TYzS/0eGzv9Ggsj/RoDA/0aAwv9GgMP/RH/C/0R/
+        wv9EgMT/RYHE/0eDyv9Ggsf/SYPD/02IyP9Ig8b/SoTE/1GO0P9OjNP/RYHH/z96u/9Bf8f/QYHI/yc8
+        Uv8hIyL/FRkZ/yoyN/8xOD//Lzc9/y0zP/8uM0X/LzVG/y82Rv8vNkb/LjRF/ywyQ/8rMkP/KzJD/ysx
+        Q/8qL0L/KS9C/yguO/8oLjT/KS40/zI7QP8kKiz/CgwK/x8kJv8uNTv/Ji03/ycuP/8nLT//Ji0//yYs
+        Pv8lLD7/JCo9/yQqPf8jKTz/Iyk8/yMpPP8iKTz/ISc7/x8lOf8eJTf/ISgv/x8mKv8sN0D/Mj1H/xUa
+        HP8NDhL/GB4j/ys1Pf8cIij/ISoy6yYvOa0fJi7/KjI6/x8mK/8MDxL/EBQX/yUtNP8/TVf/Slpc/zhE
+        i/8JC+b/AgLt/wME6P8DBOj/AwTo/wME6P8DBOn/BATp/wQE6f8EBOn/BATp/wQE6P8DA+7/BATW/zhB
+        cP9hcm//O0hQ/wUHB/8XHB3/OUNE/z5LUP8cIqn/AgLz/wID6v8CA+n/AgPq/wID6v8CA+r/AgPq/wID
+        6v8CA+r/AgPq/wEB9P8EBLL/MTtT/0ZVT/8+SlD/MzpB/xgcH/8YGxr/Ji81/0N7u/9Dgcb/QHu7/0J8
+        vP9CfL//Q32+/0iDyf9Hgcb/TIjM/1WS0/9YktD/WJLQ/1iT1P9UkdX/VI/Q/0+Jyv9KhMj/R4LF/0yF
+        xf9Lhcr/TIjN/1GMzP9Zk9T/WJLT/1aQzv9Xltz/O2aW/x8hIP84PUP/PkRM/y4vMP8uQ1f/Xpzi/1eT
+        2P9Si87/VZHV/1mU2P9Vjs7/W5XX/2im7P9aldn/TojN/0+Kzv9Vj9H/X53l/1eS2f9hn+f/YaLq/1yb
+        4/9ind7/WZPV/1CIyP9Qicj/UovK/1CKyv9Ri87/WJLU/1aT2v8xUG//KCko/zpAR/83PUT/ISEe/zFV
+        ef9dn+n/aafr/16a3f9Ujs//VI7R/1KMz/9SjdL/TojL/0yEw/9JgsP/RoDC/0Z+v/9Ff8H/RoHE/0WC
+        x/9Fgcf/R4LD/0mFyf9QjNL/VZDQ/1iY4f9Sj9X/Q3y+/0B9wv9Gh9L/Q4HH/ys5SP8fIBz/Fhob/y41
+        O/8yOUD/LzY8/ywzQP8tMkT/LjRF/zA3Rv8vNkb/LjVG/y41Rf8tNEX/LTRE/y0zQ/8rMUL/KTBC/ygv
+        Pf8qMDb/KjE3/zU+RP8jKSr/CgsK/yAmJ/8uNjz/Ji04/ycuQP8nLkH/Jy4//yYtP/8lLD7/JCs9/yQq
+        Pf8jKjz/Iig7/yEnOv8hJzr/ISc6/yAnOv8fJjb/ISgu/x8mKv8wOkX/Mz5H/xQYG/8NDxL/GB0j/ys0
+        PP8dIyr/Iioz2ScxO5whKDH+JzA3/x0kKP8NEBL/DxMV/yUsM/9DUFz/TFpd/z9LdP8LDd//AgLv/wME
+        6P8DBOj/BATo/wQE6P8EBOn/BATp/wQE6f8EBOn/BATp/wQE6P8DA+v/AgPu/y40cf9hcmz/QlBY/wYH
+        B/8VGRr/OURH/0FORv8lLIX/AwTw/wIC6/8CA+n/AgPq/wID6v8CA+r/AgPq/wID6v8CA+r/AgPq/wEC
+        8/8BArz/KzRU/0VUTf9BTVP/OUJJ/xsfI/8SExH/KjQ5/0B0rv9Egcf/Q329/0N8vP9DfL7/RH7A/0yJ
+        0P9Lhcr/Uo3R/1qU1P9Zk9P/XZjc/2Cc3/9Zlt3/UY7U/1GMzv9KhMT/SYHA/02Fxf9MiM3/U47R/1iV
+        2P9bltj/V5HS/1WOzP9WlNj/O2aT/x8hH/85PkX/QEdO/y8xMv8tQ1b/X5zf/16Z3P9ZktP/WZTV/1WR
+        1v9Si8n/XJbW/2Ke4/9RjM7/VI/T/1qW2P9alNT/W5XY/1aP0f9gmtr/aKfr/1ub5P9Vkdf/U4zN/1CI
+        x/9Ph8f/UIjI/1CIx/9UjtH/ZKPr/1yb5P8yT27/KSop/zpAR/82PEP/ISEe/zRVd/9am+L/YZ7e/2Cd
+        4P9bltn/WZPV/1+b3/9gnN7/WJPU/1CIyP9Mhcf/SYPD/0iBwv9Gf8D/RH/C/0R/wf9CfsL/QXy//0N/
+        w/9Qj9f/XZve/12c5P9Tkdr/RX/B/0B8v/9GhMn/QXm1/y49Sf8ZGRb/Fxwd/zQ8Qv8yOD//LjQ6/y41
+        Q/8uNEb/LjVF/zA4R/8wN0j/LzdI/y82R/8vNUb/LjRF/y41Rf8tM0X/KzJE/yoxPv8qMTb/KjE4/zlC
+        Rv8hJyf/CQoJ/yInKv8uNj3/JSw4/ycuQP8nLkD/Jy4//yctP/8mLT//JCs9/yQrPf8kKz3/Iyk8/yEn
+        Ov8hJzr/ISc6/yEnO/8gJzb/IScv/yAmLP8zPkj/MDpD/xEUF/8OEBP/GB0i/yozPP8dJSz/Iiw1xicw
+        OokiKTH+JS00/x8nLP8QFBb/DA8R/yAmK/9DUFz/Slpc/0NQZf8MDtr/AgLw/wME6P8DBOj/BATo/wQE
+        6P8EBOj/BATp/wQE6f8EBOn/BATp/wQE6P8DBOv/AgLu/yQqaf9ic27/S1lh/wYICP8RFBT/NUBD/0JQ
+        Qf8pMXD/AwTt/wIC7P8CA+j/AgPq/wID6v8CA+r/AgPq/wID6v8CA+r/AgPp/wEC8P8AAOP/Iilg/0JR
+        Q/9CT1b/QEhO/yAlKf8LCwn/LDM1/zdch/9Fgsb/RH6//0N8vP9Ff8L/RX/C/0qFyf9Hg8r/U4/W/1uV
+        1P9bltn/YJzj/12X2f9altv/VpDS/1CJyP9HgcH/SIPH/0yGx/9TjtL/W5jf/1uW1/9YktL/V5PX/1+a
+        3P9ioej/PGiX/x8gH/86P0b/QUdP/y8wMf8uQlf/YJ7i/2Wf3v9fmNf/XZbV/1WOz/9TjMz/W5XX/1qW
+        2f9Si8z/WpTV/1yX2P9moeD/a6jr/2Kg5f9em97/WJPW/12Z3v9XlNv/UYrO/1SMy/9Vjcz/VY3L/1KK
+        yP9WkdT/aKfw/1qZ4f8wT27/KSop/zlARv81O0L/ISEd/y9Qdf9Qjtb/V5LU/2Cd4f9gm93/VpHV/1eV
+        3P9amN7/WZXU/1GKyf9Mhcf/SoPD/0qCw/9IgcL/RoC//0qFyf9Jhcv/Rn/A/0yGyP9PkNn/VJTb/1SR
+        1P9Kh8z/RH+//0N/wP9KiM3/PWud/y45QP8QEA3/Gx8i/zdASP8yOD//LzU7/zA2Rf8uNUf/LjRF/y41
+        Rf8vNUb/LjRF/y00Rf8sNEX/KzJD/ysyQ/8rMUT/KzFE/ywzP/8rMjj/KjI5/zlBRf8dISL/CAoK/yMp
+        LP8vNz3/JSs4/yctP/8nLT//Jy0//ycuP/8nLT//JSw+/yQrPf8kKz3/Iyk8/yIoO/8hKDr/ISc6/yEn
+        O/8hKDf/IScu/yAmLP80P0j/KDE4/wwOEP8QEhX/GyEm/ycwN/8fJi7/Iyw1sScwOXQjKjH7JCsy/yQs
+        Mv8TFxr/DA4Q/x4jKP9BTFj/SVhb/0ZUaf8PEtr/AQHw/wME6P8EBOj/BATo/wQE6P8EBOj/BATo/wQE
+        6P8EBOn/BATo/wQF6P8EBer/AQHv/xsffP9jc3X/U2Jq/wcICP8LCwz/MzxA/0NSRP8sNnT/BQbu/wEC
+        7P8CA+n/AgPp/wID6v8CA+r/AgPq/wID6v8CA+n/AgPp/wEC7v8AAPX/GR5p/0BMP/9EUVb/P0lO/yYt
+        Mf8PERD/KS4u/y5KaP9EgcX/RX7A/0V+wf9Ig8v/SYPF/1CHxv9KiMz/XZ7q/1uX2P9WkdT/YZ3g/1+a
+        2f9Yk9f/VY7O/1OLy/9Nh8j/S4XI/06Hyv9TjM//WJTa/1qV2f9Ri8z/UIrM/1yX2P9kpOv/P2mZ/x4g
+        Hv86QEf/QUhP/y8xMf8rQFb/XJ3l/2ej5P9fmtv/WJLV/1iS0/9ak9L/WZTZ/1yZ4P9UjtP/U47R/1eR
+        0v9ln9//bKfn/2Gd4P9ZlNn/WpTV/1uV1/9emt7/VpLY/1CKzf9YkM7/XJTT/1SMy/9Yltv/aKjx/1qZ
+        4v8wUHH/KCon/zpAR/82PEP/ICEd/y9Qcf9Oi9P/UYvM/1eS0/9XkdH/Uo3Q/1SQ2f9Tktr/VpLW/1WO
+        z/9Qicz/UozP/1SP0/9PjND/SoTH/0uFyP9KhMf/RH6+/0N+wf9GhM3/R4bR/0aEyv9Egsf/Qn29/0N9
+        v/9Mi9H/OF2F/ykxM/8TFBT/Iicq/zU9RP80O0D/MDY//zA4R/8vNkf/LjVF/y41Rf8tM0T/LDFC/y0z
+        RP8tM0T/LDBD/yowQf8qMEL/LDJD/y00Pv8sMzn/LTU8/zlCR/8WGhr/CgsL/yUqLv8uNTz/JSs5/ycs
+        P/8mLD//Ji0//yctP/8nLT//Ji0//yUsPv8kKzz/JCo8/yMpPP8iKDv/Iig7/yIoO/8iKDX/ICYs/yEo
+        L/81QUv/Ji40/wsMD/8RFBf/ICYs/yQrM/8eJS3+Iyw1migyO14kLDT6Iigv/yYtNf8VGh7/DA8R/x0i
+        J/89SVP/SFdd/0xZZ/8ZHsL/AADu/wME6f8DBOj/BATo/wQE6P8EBOj/BATo/wQE6P8EBOj/BAXo/wQF
+        6P8EBer/AQHw/xETlv9fbnz/Wmlv/w4PEf8HCAf/MDo+/0JRR/8xPGj/CQvc/wAA7/8CA+n/AgPp/wID
+        6f8CA+r/AgPq/wID6v8CA+n/AgPp/wID7P8AAfT/DhGK/zxISf9GVFT/QUtQ/y41O/8TFhf/HyIf/yw/
+        Uf9Ig8b/RoDD/0qDw/9OitD/TYfK/06Hxv9Lic7/XJ7p/1uV1/9Vj9H/YZzf/12Z2f9Ujs7/VIzL/1KM
+        zf9Oic7/TojL/1GLzv9Tjc3/VI3M/1SMzf9Tisr/U4zM/1qU1v9lo+j/Q2yZ/x4hHv88Qkj/Q0pS/zI0
+        NP8oPVP/V5fi/2ej5/9emdr/WZPX/1mS0/9bk9L/V5HU/1yY3/9bl9v/WZLR/16X0/9jndv/ZJ3Z/1uU
+        0/9VkNL/W5TV/1eQ0P9YkM//WZHS/1WO0v9bl9v/aKPj/1ySzv9bldf/b63z/2al6v8yUG//KCkn/ztB
+        R/82PEP/ICAd/zFSc/9SkNf/UYnJ/1CKy/9Lh8n/SoTD/1uY3f9hnuP/WJLS/1aQz/9TjtD/VY/Q/1mU
+        2P9Vktf/VI3O/1ON0P9Qi8//SoPD/0Z/wf9Khs3/UIvR/0iBw/9HhMr/SIPE/0eBwf9KiMz/MUxo/yQm
+        Iv8VGBn/KjE2/zc/Rv81PEL/MjhC/zE5SP8xOEn/MThI/zA3Rv8uNUX/LzRF/y0zRP8rMUL/KS9A/ykv
+        QP8rMUL/LTNE/y00Pv8sMzn/MDk//zhBRf8QExH/DhEQ/ygvMv8rMjj/JSo7/yYsP/8mLD7/Jiw+/yYs
+        Pv8mLD7/Jiw//yYsPv8lKz3/JSs9/yQqPf8jKTz/Iyk8/yMoPP8jKDT/IScs/yUtNP86RlH/JSwz/wsN
+        D/8RFRj/Iyow/yIpL/8fJi/+JC03giczO0IkLjbvHyUs/ygwN/8YHSL/DA8S/xofI/84Q0v/SVdf/05c
+        Zf8gJKf/AgHs/wMD6v8EBOj/BATo/wQE6P8EBOj/BATo/wQE6P8EBOj/BAXo/wQF6P8EBer/AgPv/w0P
+        mP9XZHT/Xm5y/xkeH/8GBwb/KzI1/z9MSP83Qlj/ERXB/wEB8/8CA+n/AgPp/wID6f8CA+n/AgPq/wID
+        6v8CA+n/AgPp/wID6/8BAfH/Bgai/zdAS/9GVFD/QkxT/zpCSP8WGhz/FBUR/zE+Sf9DeLX/SIXL/1CJ
+        y/9QjM//TYjI/0yGx/9NiMv/WJbc/1mW2/9alNf/Xpnb/12Y2P9Zk9T/VpDS/1GKyf9PiMr/Uo7V/1qU
+        2P9blNP/WJHQ/1iQ0f9WkM//V5HS/2Ga2f9qqOz/Q26d/x0fHf89Q0n/RUxV/zI0Nf8qP1L/V5bf/2Cf
+        6P9cmNz/Xpnd/2Gc3v9fmtz/X5nc/2Ca2/9ppOn/aKPn/2Kc3v9hm93/ZaDg/12X2P9bl9z/ZJ/f/16Y
+        2v9Zk9L/XZXT/1+Z2v9fn+j/Y6Pr/2ah4v9nouL/crT6/3a8+f84V3X/Jycl/zpARv81PEL/IB8c/zFT
+        dv9Vk9v/U4vM/0+Hxv9Ph8b/TYfJ/1iZ4/9bnOX/V5LU/1uX3f9TkNb/UovK/1GNz/9Ujcz/WZHQ/1qU
+        1f9YlNr/VI3Q/0+Kzv9Tkdv/Wpfd/1ONzv9Ig8f/SYPD/0yJzv9Kg8X/M0dZ/xkaFf8RFRb/Mjk+/zg/
+        R/80OkH/MjhE/zE4SP8xN0j/MjhJ/zE3SP8wN0b/MThI/zA2R/8sMkP/KjBB/yswQv8sNET/LTRD/y00
+        Ov8sMzn/MztB/zM7P/8PEBD/EhUV/yowNf8pMDb/Jy08/ycuP/8nLT//Jiw+/yYsPv8mLD7/JSw9/yYs
+        Pv8lLD7/JSs9/yQqPf8jKjz/Iyo8/yMoPP8jKDT/ICcs/ycvNv86RE//HyYs/wsOD/8TFxv/KC82/x8l
+        K/8hKTH9Ji84ZCgxOjMlLjfZHyUs/y01O/8bICT/DQ4S/xccIP8zPUb/Slhg/1BfaP8lK6z/AwPt/wMD
+        6f8EBOj/BATo/wQE6P8EBOj/BATo/wQE6P8EBOj/BAXo/wQF6P8EBen/AgPv/wkKuv9GUGj/YG9x/yMr
+        L/8FBQX/JSot/z9LTP89SUv/HCGo/wEC9f8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID
+        6v8BAvD/AwTO/y42TP9FUkr/Q05V/z5HTP8dIiX/DxEP/y84PP83X4z/S4nQ/02GyP9Nis//TojJ/06G
+        x/9Kg8f/UYvO/1mW3P9XlNj/WpPR/12W1f9clNX/W5TX/1uU1v9Zk9X/UI3T/1uX2/9inN3/WZLQ/1uV
+        1f9gm+D/Y6Dm/26q7P9ur/L/RHKj/xwdHP88QUj/REpS/zAyM/8qPVL/VZLX/1mW3P9cltr/XZfb/1+Z
+        2v9bldf/W5bZ/2Cb3P9kn+P/Xp3k/2Cc4f9hm9z/YJva/1uU1P9bldn/ZKHm/2aj5/9dl9f/V5HP/1eR
+        0f9dmNr/YZ7i/2il6/9zsPL/cK/v/2yv7/84VnX/JiYl/zk+Rf80OkD/Hh0b/y5Pcf9SkNb/VI/R/1WQ
+        0v9Vjs//U47S/1WT3P9altz/YJve/1uY3/9Pis//UovL/1OP1P9Uj9L/VpDP/1KLzP9Qi9D/T4vQ/0yJ
+        z/9KidL/S4fM/0qFxv9Jhsz/R4PE/0yK0v9Cc6z/M0BK/xUXFP8YHB3/Nz5F/zg+Rf8zOD//MjlG/zE3
+        SP8vNUX/LzVG/y81Rv8wNkb/MThJ/zE4SP8uNUX/LDJD/y0yRP8tNEX/LjVC/y81Ov8sMjn/ND1E/y41
+        Of8MDw7/FRga/ywzOP8pMDr/KS8//ykxQf8pL0D/Jy4//yctP/8nLT//Jiw+/yYsPv8lLD3/JSs9/yQq
+        PP8jKTv/Iyo8/yMoPP8iKDP/ICYr/ykxOv84Qk3/HCIm/wsOD/8UGRz/KjM7/x0jKf8gKDHxIyw1SSUt
+        NiUlLTjEICYt/yw1PP8aHyP/DQ8S/xUZHP8yOkT/TFlk/1JhZv8xOaD/BQbt/wMD6f8EBOf/BATo/wQE
+        6P8EBOj/BAXo/wQF6P8EBej/BAXo/wQF6P8EBej/AwTv/wQF2v8zO2D/ZHNy/y85P/8DBAT/Gx8h/z1I
+        Tf9CTj3/JCuM/wIC9P8CAur/AgPp/wID6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8BAu//AQHs/x0i
+        Vv9DT0b/RVFW/0BITf8oLTL/EBIT/yIjHv8uSGH/SofM/0uFxf9Mhcb/UYnJ/0+Jy/9KhMj/U47T/2Wh
+        5f9jnuD/X5nd/12X1/9ak9H/WJDP/1uV1f9VkdP/UInN/1mU2P9hnN3/X5vc/2Cc3v9fmNj/W4/K/1eE
+        sv9JbZH/MUlg/yQnKP8+REv/QkhR/zI2Of8jLzn/NVNx/zpWdP88WHX/PFh1/ztYdv84VHL/OVVy/ztY
+        dv87WHb/OVd2/0Bfff9BX33/Old0/zhVc/85VXT/O1p6/0Fffv89Wnb/OFRw/zdTcP85VXH/PVl2/zxa
+        ef9CYH//R2SB/0RjhP8rO0n/KS0u/zpAR/84PkX/JSco/yM1Rv82V3r/P2eS/0l7sv9Qh8T/V5LT/1ya
+        4P9ioOj/Z6Pp/1aR1P9Oh8j/U4vJ/1ON0P9TkNb/Vo/P/1iS1P9VkdT/TYjL/0iDxv9Ggsf/Q3y8/0R+
+        vv9Ihcn/SYTG/0qIzv85X4f/Jysr/xQVFf8mLC//OUBG/zY8Qv8xNz//MTdF/y81Rv8uNET/LzVF/y40
+        RP8uNET/MDZG/y82Rv8tNET/LDJD/ywyQ/8sMkT/LjRA/y41Ov8rMjn/OD9F/yctMf8LDA3/GR0f/y83
+        PP8qMDr/KjBA/ykvQf8oLkD/Jy4//yctP/8nLT//Jy0//yctP/8mLD7/JSw+/yQqPf8jKTz/Iyk8/yMp
+        Ov8jKTL/IScs/y84Qv84Q03/GB0h/wwOEf8UGBv/KzQ7/x4kKv8fKDHaICkyNSQsNhcmLjerICYt/yox
+        Of8bICX/DxIT/w8RE/8sNDv/TFlm/1NiYP89R4H/CAnq/wMC6v8EBOf/BATo/wQE6P8EBOj/BAXo/wQF
+        6P8EBej/BAXo/wQF6P8EBej/BATt/wEC4f8kKHH/aXl8/z5JTv8CAwP/ERUV/zxGS/9DUEH/LDR5/wQF
+        6P8BAe3/AgPp/wID6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8CA+z/AADu/w4Qif8/S0v/R1RV/0NM
+        Uv82P0P/DxMU/xQUEf8yRVf/Q3m2/0+Jy/9Si83/UYzP/02HyP9Pis//VpDT/2ai5v9loeb/ZaDi/2Ca
+        3f9bltv/WpPU/1SMy/9NhcT/VIzO/1uX3f9fm93/U4jB/0Nrmf84UGv/LDY+/y4yNv82Oz//OkBF/z5G
+        TP9BSU//P0dN/z1DS/83PEL/NTk+/zU5Pf82Oz7/OT1A/zk9Qf85PUH/ODxB/zc7P/83Oz7/ODw//zk9
+        Qf86PkP/Oz5D/zo9Qv86PUL/Oj5C/ztARP89QUb/PkJH/zxARf85PEL/Njs//zU6Pf81ODz/Njk+/zY6
+        P/80OT7/NjtB/0JJUf9FT1T/QUpN/ztDRv84PkH/LzU2/ykyN/8uQ1b/O1+G/1KJx/9trfX/b7H6/1aQ
+        1P9Oh8j/T4jK/1GJzv9XkdP/XZbU/2Kc3P9cmd7/VY7Q/1OMz/9Ukdj/TofL/0iCxv9IhMj/SITI/0N8
+        vf80TWb/Hh8c/w8QEf8uNDn/OUBH/zM5Pv8vND7/MDRF/y81Rf8wNkb/MDZH/zA2Rv8uNEX/LzVF/y40
+        RP8tM0T/LDJD/ywxQv8rMUL/LDE8/ywyOP8rMjn/OUFG/xwhIv8JCgr/HSIl/zE5P/8pLjv/KS9B/ygu
+        QP8oLkD/Jy1A/yYsPv8mLD7/Jiw+/yctP/8nLT//Jiw+/yUrPf8lKz3/Iyk9/yMpOf8jKTD/Iigu/zU/
+        Sv82P0r/EhUZ/w0QE/8VGR3/LDM8/x4lLP8gKDLCISkzJCcxOggoMTqNIyox/ykwN/8iKC3/ERQX/w0O
+        Ef8nLDL/RlJe/1JhX/9IVXv/DhDf/wEB7P8EBOf/BATo/wQE6P8EBej/BAXo/wQF6P8EBej/BATo/wQF
+        6P8EBej/BAXr/wEB5/8WGYf/ZnZ8/0xZXv8HCQj/CQsL/zdARf9BTkn/MTxf/woOzf8BAfL/AgPp/wID
+        6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8CA+r/AADx/wkKu/81PkP/R1VO/0RPVP88RUr/GR4g/xMV
+        Ff8qMjX/N16I/1CM0f9Uj9T/VZHX/1OLyv9VjtH/VY/R/16Z2v9ind//ZJ7d/2Od3P9hm97/X5jY/1OM
+        y/9Ri9D/XJjg/1CGwf8+YYj/MEBQ/youL/8yNTj/OT9A/z9HS/9FTVD/R05S/0hQVf9IUFb/TFVb/0VL
+        Vf89Q0r/PEFH/zxBR/8/REv/QUVM/0FGTf9BRk3/QUdO/0JITv9CSE//QkhP/0FHTf9CR07/Q0hP/0RJ
+        UP9FSlH/RUpR/0RJUP9FS1L/RkxT/0VJUv9CR07/P0VL/z1DSf89Qkj/PENI/ztBRv86P0X/OT9G/09Z
+        Zv9RWmL/TFRb/05VW/9NVVn/S1NV/0hPUP9AR0f/Mjg4/zJCTv9Iaov/X5TP/1mX3/9TjtH/UInK/1ON
+        0v9em+H/Y57e/2Cb3P9YlNb/VI/S/1aR1f9YlNj/W5TV/06Hyf9HgcX/TIrO/z9upP8tOUP/GBsZ/xYZ
+        G/8zOkH/OD5G/zE3Pf8vNUH/MDZH/zA2Rv8yOEj/MTdI/zI4R/8yOEn/MjhJ/zE3R/8wNkf/LjRG/y40
+        Rf8tM0L/LDI7/ysyN/8wNz3/OUNH/xQXGP8KDAv/Iyks/zA4Pv8oLjz/KS9B/ykvQP8pL0D/KC9A/ygv
+        P/8oLj//Jyw+/yYsPv8mLD3/JSs9/yUrPf8lKz3/Iyk9/yMpN/8jKTD/JCsy/zpFT/8xOUH/DhAT/w8S
+        Fv8dIij/KDA4/x8mLv8gKjKqIyw0FCoxPAAsND1qJS029yMqMf8nLjX/FBcb/w4QE/8fJCn/O0VQ/1Bd
+        YP9MWnH/GBvD/wEB7v8EBOf/BATn/wQE6P8EBOj/BAXo/wQF6P8EBej/BAXo/wQF6P8EBej/BAXp/wIC
+        7f8QE6f/VmNq/1ZkaP8WGhv/BwgI/y84O/9BTU7/PElJ/xYbtP8AAfX/AgPp/wID6f8CA+n/AgPp/wID
+        6f8CA+n/AgPp/wID6f8CA+n/AQLy/wID2v8iJ1X/R1RL/0ZSVv8/SE7/KzI2/w0QEf8dHhr/NU5p/06I
+        yv9Vk9v/VI7R/1iQz/9UjM7/WZPW/2Se3/9noOD/Z6Hg/2Kb2/9gmNf/YJrb/1eU2f9Ti83/RWuY/zBB
+        Uf8pLS3/Njo7/0NLTf9HUFP/SlJY/0tTWv9OVV7/TlVe/05VXv9RV2D/W2Rw/0BGT/8nKy3/Jyst/ygr
+        Lf8pLC7/KSwu/yotL/8qLS//Ky4w/ywvMf8rLzH/Ki4w/yotMP8rLTD/Ki0w/youMP8qLzH/Ki4x/yst
+        MP8qLTD/Ki4x/youMP8qLS//KSsu/ygrLf8oLC3/KCwt/ygrLf8mKi3/Mzk+/1Rdaf9SWWP/SE5Y/0xQ
+        Wv9PVV7/UFhh/09WYP9RWV//Ulpe/0dMS/80ODX/N0ZS/z1hh/9OhL//WJPV/1mU2f9hour/WpXW/1aP
+        0f9XkND/U4rJ/1CIx/9WkNL/W5XW/06Fxf9HgsX/S4jO/zpehf8lJyj/DxAP/yctMP85P0b/Nz1D/zI3
+        P/8wNUT/MTZH/zE3R/8xN0f/MTdH/zE3R/8xN0j/MjhJ/zI4SP8xN0f/LzVG/y81Rv8tM0H/LTQ6/ywy
+        OP8zOkD/NDxA/xETFP8PEhL/KC4x/y0zO/8oLj3/KS9A/ykvQP8oLj//KC9A/ygvQP8oLkD/Jy0//yct
+        Pv8mLD3/JSs9/yQqPP8kKjz/JCo9/yQqNv8jKS7/Ji42/z1JU/8qMjj/DhET/xATFv8kKzH/Iiow/x8n
+        L/8iKzOMQUhKAys0PgArND5MJzE75yIpL/8uNz7/Fhse/w4SE/8YHSH/N0BI/05bY/9QXmj/KC6w/wMD
+        8P8EA+j/BATn/wQE5/8EBej/BAXo/wQF6P8EBej/BAXo/wQF6P8EBej/BAXm/wMD8f8HCMf/QEhb/2Jy
+        dP8iKSv/AwUE/yUsLv9ATFH/QU46/yEomP8BAfP/AQLq/wID6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID
+        6f8CA+n/AgPs/wAA6v8SFIr/Pkg//0hVVv9FTlP/Nz5F/xATFf8aHBv/LTxI/0l6sv9dnOX/VI/U/1uV
+        1v9Ris7/Ypzf/3Cr7f9spuT/ZqDd/2Oc3f9gneH/W5ri/0h2qv8vQ1j/KzA0/zQ3Nv9CSUz/TFVb/05W
+        Xv9NVV7/TVNd/0pPWf9KT1r/SU5Z/0dNV/9JTln/WGBt/zg9Qv8UFxb/ExgY/xQYF/8TFxb/EhcX/xMW
+        GP8TFxb/EhcX/xIWFv8SFRX/ExUW/xMWFv8TFhb/ExYX/xMWGP8SFhj/ExYW/xMWFv8TFhb/ExYW/xMW
+        Fv8TFhf/FBcX/xUYGP8VGBf/FRgY/xQZGf8UGBb/LDAy/1BYYv9PV2D/SE5Y/0lOWf9ITlj/SE5Y/0hO
+        Wf9LUFv/T1Re/1FXYP9SWV7/RUpK/zM5Of8tPk//QWqY/1eT1/9kpvH/YJrb/1iR0/9ak9L/WI7L/1OL
+        y/9enOL/YqDl/1CHxf9OiMz/Rn29/zBDVf8iJSL/DxEQ/y82O/87Qkn/NjxC/zM5Qv8yOEf/MjhH/zI4
+        SP8xNkb/MTZG/zE3Rv8wNkb/MTdH/zI5Sf8yOEj/MDZG/y81Rv8tMz//LTM6/ywxOf82PkT/LjU4/w4Q
+        EP8UFhj/LTM3/ysxO/8qMEH/KS9A/ykvQP8pL0D/KS9A/yguQP8nLT//Jy0//ycuP/8mLT7/JSs9/yUr
+        Pf8kKjz/JCo9/yQrN/8iKi7/KjQ8/z9LVf8iKC7/DxIT/xEUF/8qMjn/ISgu/yApMvYkLTZlIiw1ACkx
+        OwApMTswKTM70iQsMv8wOED/GBwf/w8SFP8SFRn/Nj5H/01aZv9TYlv/NDyS/wQE8f8DA+j/BATn/wQF
+        5/8EBej/BAXo/wQF6P8EBej/BAXo/wQF6P8EBej/BAXm/wME7/8BAdb/KC5z/3GBhf8xOD3/AAAA/xcc
+        HP9ASk//QU5D/ys0c/8ICdv/AQHw/wID6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8CA+n/AgPp/wEB
+        9P8GB7X/LjY8/0pXVP9GUFX/P0dN/yInKv8REhL/Iycl/z9ljP9Ukdf/T4rK/1aOzv9Qi8//YJzg/2+q
+        6/9qo+D/Y57f/2en8/9fm97/PmaR/ygyO/8uMC//PEFD/0lRWP9NVFz/TFNc/0pQWv9ITlj/SE5Y/0lP
+        Wf9JT1n/SU9Z/0hOWP9KUFr/WGBq/zM3Ov8bLkL/L16Q/zRilP8yYZL/Nmec/zxrof81YZH/MV6R/zJf
+        kf84ZJP/Pmqa/zlnlv84ZJX/OGaY/zZmnf85Z5v/N2KT/zJejf8yXo7/NGGT/zFdjf8vXIv/MV+T/zBe
+        kv8vW4z/L1yP/zFhl/8iO1f/KCot/01SWv9SWWL/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9ITlj/SE5Y/0lP
+        Wf9MUlz/UVdh/05VWf86PT3/JzA0/zVVd/9dmt7/aqnv/2Gc3v9joOj/ZaHn/1qT1f9gnuP/aKTl/1yW
+        2P9Xktb/Q2+e/yguMf8VFxb/HSEj/zg/Rf86QEf/NjxC/zM5Rv80Okr/MzlI/zE3R/8wNUX/MjdH/zE3
+        R/8xNkb/MTdH/zE3R/8xN0f/MTdH/zE2Rv8wNT7/LjM5/y0zOv86Q0j/Iico/wgJCv8YGx3/MDc7/yow
+        PP8rMUP/KjFB/ykwQP8pL0D/KS9A/ykuQP8nLT//Jy0//ycuP/8nLT7/Jiw+/yUrPf8kKT3/JCo7/yUs
+        M/8jKS//MjtF/z5IVP8WGh7/DxIU/xMWGf8sNDv/Iikv/yErM+QjLTVHIy01ACgwOgApMToWKjI7tSUs
+        M/8tNjz/HyQq/xETF/8OERT/MTlB/0tYZP9XZVz/P0qI/wUG6f8DAur/BAXn/wQF5/8EBej/BAXo/wQF
+        6P8EBej/BAXo/wQF6P8EBej/BAXn/wQF6/8CAuX/Gh2U/2t6ef9DTVP/BQgH/w0REP84QUX/Q09K/ztG
+        TP8TFsX/AAD1/wIC6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8CA+n/AgPo/wID7/8BAdr/HSJs/0hU
+        R/9IU1j/R1BV/zQ8Qv8NEBD/HiAd/zBCUP9PhsX/U47Q/1GKzP9Ri9D/X5vh/2ql5/9qpeT/bq/1/1yV
+        1/84U3P/KS80/zU4N/9CS03/SlFZ/0tSXP9KUFv/SU5Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0hO
+        WP9LUVv/WGBn/yovMf8qRmX/X5zh/2Gd4v9fnN//bq3y/3Sx9f9jnd7/Y5/h/2uo6/94tfT/fLn4/3Sw
+        7/9vq+r/bKjp/2+s7/9wrO3/a6bm/2ej4v9ln9//ZqHk/2Wf3/9gmtr/YZvb/2Ca2/9fmNn/X5rb/2Sj
+        6P85XYf/ISQq/0dMU/9VXmb/SVBZ/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9ITln/SU9a/0xT
+        XP9OVVz/REpM/y80NP8ySGH/VIjC/2em7f9tr/n/aajw/1qT0/9bldX/XJXU/1iT1/9PiMn/Mklh/yMl
+        I/8NDw//LDA2/z1DSv83PUP/NDpB/zQ5SP80Okv/NDpJ/zI3R/8yN0f/MzhI/zE3R/8yN0f/MjhI/zA1
+        Rf8wNkb/MjhI/zE3R/8yOD//LzQ6/zE4P/86Q0j/GBwd/woLDP8hJin/Lzc8/ykvPP8rMUL/KzFC/ysx
+        Qv8qMEH/KTBB/ycuQf8nLT7/Jy0//yctP/8mLT7/Jy0+/yYsPf8kKj3/JCo6/yQrMf8lKzH/OEJN/zxG
+        Uf8RFBf/DxEU/xofIv8rMzr/Iykw/yMsNdMjLTUpIy01ACwyPAAyNkIBKzM8iyQtNfwnLjT/Jy0z/xIV
+        GP8QEhT/KzE4/0dSXv9WZWT/SVV6/xIUzv8BAe7/BATn/wQF5/8EBef/BAXo/wQF6P8EBej/BAXo/wQF
+        6P8EBej/BAXn/wQF5/8CAvP/CQu2/01XYP9cam//FBka/wYICP8rMjX/RE9Q/0BNQf8cIaj/AQDx/wEC
+        6/8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8BAfX/Cw2h/zlDPv9MWFj/SVNY/0FK
+        UP8gJCj/Dg8O/yYpKP9FbZv/UozR/1KJyv9Qicj/WpXY/22o6f92s/T/YZjV/zFGW/8sLzD/PEJF/0VM
+        Uv9LU1v/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lOWP9NVF7/UFdc/yAm
+        Kf8zV33/ZJ7f/2KY1f9gl9P/ZZ/e/2ig3v9hmNf/a6Xl/3Ct8f98uPb/f7r2/3Su6/9vqOX/bqfn/3Kr
+        6f9spOD/aqHd/2qj4P9nn9z/Z53a/2if3P9imtn/ZJvX/2Sa1v9jmdb/ZZvY/2ei4v9Dapj/HCMq/zs/
+        Qv9VXWX/SlBZ/0hOWP9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9KUFr/Ulhi/0xS
+        Vv8xNTP/Lj1M/1OEvP9us/v/aafr/12V1v9emd3/VI7P/1GN0v9Ecqf/KjE2/xMSEP8bHiH/NzxD/zg+
+        RP81OkD/MzhC/zM5Sf80Okn/NDlJ/zM4SP8zOUn/MzpJ/zI3R/8xN0f/MTdI/zE3R/8yOEj/MjhI/zE4
+        RP8yOj//MTY8/zc/Rf8zOz7/EhQV/xASEv8sMzb/LTM8/yguPv8qMED/KjBA/ysxQv8rMUL/KjBB/ygu
+        QP8nLT//Jy0//yctPv8mLD7/Jy0+/yYsPv8kKj3/JSs5/yUrMf8mLjT/PUhS/zQ9Rf8RFBf/DxIU/yMp
+        L/8mLTT/ISkx/yUuOLIpMTkKKTE5AAAAAAAlLzsALDQ9XSYtNvIjKi//LTQ7/xIVGP8RExX/ICUq/0NN
+        Wf9VY2n/U2Bp/yEnt/8BAfL/BAPn/wQF5/8EBef/BAXn/wQF6P8EBej/BAXo/wQF6P8EBej/BAXn/wUF
+        5v8EBPL/AgLE/zc/b/91h4j/JCos/wEAAP8fIyb/RE9T/0FNRP8vN2v/CAng/wAA8P8CA+n/AgPp/wID
+        6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID5/8BAvH/AgLR/yMpXv9JVUv/SVVa/0VOU/8yOD7/Dg8Q/xwd
+        G/8sPUz/S4C8/1KLy/9PhsP/VY7O/3Sx8/9sn9P/N0lb/ykrKv9ASEr/TFVb/0tQWv9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9SWWP/PkJD/xshJ/9Ecqf/Y53d/2qh
+        3P9nn93/X5bS/2CX0/9kmtf/Z57b/2Wd3v90r+z/gLv4/3Wv7v9wqeb/cKvs/2+o5/9qot7/ZZzY/2Wc
+        2f9mndn/Zp3Z/2Sc2f9jm9f/Zp7b/2Sb2/9hmNX/YJjV/2Se3/9Pgrv/Hyw5/zAyMv9RWWD/S1Fb/0hO
+        WP9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9a/0xTXf9LU1f/Nzw6/yw6
+        R/9Th73/bKzx/2GZ2f9bldf/WJTW/1KN0v82UG3/JCYl/w8REf8oLjL/Nz5E/zQ7QP8yOD//MzhH/zM4
+        Sf8zOkj/MzlJ/zQ6Sf80Okn/NDlJ/zM6SP8zOUj/MjlI/zM4SP8yOEj/MTZH/zE3Qf8yNzz/MTc+/ztE
+        S/8nLS//CgsL/xQWGP8yODz/LDI8/ykvQP8qMEH/KjBA/yowQf8qMEH/KS9A/ykvQP8pL0D/KC4//ycu
+        P/8nLD3/Jiw9/yUrPf8lKjz/Jis3/yUqMP8sNDz/QUxX/yctM/8RExf/DxIW/ygwN/8mLDT/ISkz+yYw
+        OYAeJjUAAAAAAAAAAAAqMz0AKzM9NycvONwnLTT/Lzg//xUYGv8SFBb/FBcb/z9IUv9TYGv/XGpf/zE4
+        ov8BAPH/AwPo/wQF5/8EBef/BAXn/wQF5/8EBej/BAXo/wQF6P8EBej/BQXn/wUF5/8FBez/AQHj/yQp
+        kf9xgn3/OEJF/wMDA/8SFBX/OkNH/0NPSf87R03/EhXI/wAA8f8BAun/AgPp/wID6f8CA+n/AgPp/wID
+        6f8CA+n/AgPp/wID6P8CA+r/AADy/w0Pj/89RUT/TVhZ/0dRVf9ASU7/ISUp/w0NDP8kKSn/PGCG/1SO
+        z/9Ti8r/WpTV/12Qy/82SFr/MzMy/0FITP9OVl3/TVNd/0pPWv9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0pQWv9VW2P/Kiwr/x4vQP9ck9H/ZZ/f/2+m5P9tpeT/YZjV/2OZ
+        1P9lnNf/Y5nV/2KY1P9speP/f7j1/3m07/97tfH/cavr/2yk4v9rpOH/ZJzZ/2qi4P9ontr/Y5rW/2Wc
+        2f9lm9f/ZJ3Y/2Ka2v9km9j/Y5rV/2ac2f9kndv/LEdj/yAiIf9MUVb/Ulli/0hOWP9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lOWf9NVF3/T1dd/zU4N/8qOEf/TH22/12Z
+        3f9XkM//XZrd/0ZypP8tNz3/ExMQ/xodH/82O0H/NTpA/zM4Pf8xN0L/NTpL/zY7S/80OUn/NDlJ/zU7
+        S/82O0v/MzpK/zU7Sv83PUv/NjxK/zM5SP8xN0f/MTZF/zE3Pv8wNTr/MThA/zxFSv8eIyT/CQoL/xwh
+        Iv8wNz3/LDE+/ywxQ/8rMUH/LDJB/ywyQv8qMED/KC4//yguQP8oLj//KC4//ygtP/8nLT7/Jis9/yUq
+        Pf8kKjv/JSsz/yQqL/8zPEX/Q05a/xkdIf8PEhX/EhQY/ysyOv8oLzf/Iys08iYvOFUlLzoAAAAAAAAA
+        AAArND0AKzU9EykyO7goLzj/LDM7/yAlKv8SFRf/EBMV/zI5QP9MV2P/XGpn/0FLhP8LDNb/AQHt/wQF
+        5/8EBef/BAXn/wQF5/8EBef/BAXo/wQF6P8FBej/BQXo/wUF5/8FBej/AQH1/wsMpP9VX2z/W2ls/w0Q
+        EP8GCAn/LDM1/0VQUP8/S0b/JSqS/wIC7/8BAuz/AgPo/wID6f8CA+n/AgPp/wID6f8CA+n/AgPp/wID
+        6f8CA+j/AQLz/wIDzf8lKln/S1ZN/01YXP9IUVf/Nz1D/xIVFv8TExD/LDlF/0+Dvv9ZlNn/T4TC/y5B
+        Wf8tLzD/SE5S/1BYX/9NUlz/SE5Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/01TXf9LUFT/HiEh/zFVfv9lnd3/ZZzb/2ef3f9mndz/Y5rY/2Oa1f9lm9b/Zp3b/2if
+        2/9qo+P/ebX1/3Kt7P9yre7/bKXj/2ef2/9qod7/Z57a/3Go5f90quf/b6bi/22m4/9mnNr/Z57b/2Sb
+        2v9imdX/ZJvW/2Wc2P9po+L/Qm6g/xggJP88P0H/V15n/0lOWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/T1Zf/05UWv8zNjT/KDZF/0+Auf9Zltz/V5DS/zVK
+        X/8aGRX/ERMT/y4yN/85P0b/NjtA/zM3Pf80OUf/Nz1N/zc9TP82O0v/NTtK/zU7Sv82PEv/NjtL/zU7
+        S/81O0v/NTtK/zM4SP8yOEn/MzlD/zI4Pv8wNz3/OEBH/zQ7P/8TFRb/DA4O/yoxM/8vNj3/LTJB/y0z
+        RP8sMUP/LDFC/ywyQf8qL0D/KS8//yguP/8nLT7/Jy0+/ygtP/8mLD7/Jis9/yUpPP8kKTn/JCow/yQr
+        Mv85Q03/PUhS/xQYG/8PEhT/HCEm/ysyOf8lLTT/JSw22ycwOScmLTcAAAAAAAAAAAAtNT0AMTg8BSw0
+        PYQmLTf9KC41/yoyOP8RFBb/ERMX/yUrMf9HUV3/Wmdr/1Vidf8dIMn/AADw/wQF5/8EBef/BAXn/wQF
+        5/8EBef/BAXn/wUF5/8FBej/BQXn/wUF5/8FBef/BAXw/wEByv87Qnv/cYB8/x4iJP8BAwL/HiQl/0JM
+        Uf9DT0L/OEBZ/wcJ4f8AAfD/AgPn/wID6P8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8CA+j/AgPs/wAA
+        8v8MDo//PkdH/1BcWf9LVVn/RU5T/yYqLf8LDAr/HyIh/z9fgv9emd7/MlB0/yQmKf9ESk7/U1th/0xT
+        XP9ITlj/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SE5Y/1Na
+        Y/84Ozv/GCQv/1CEvP9moN7/bqfm/2yn5v9jmdf/ZJvZ/2Wc1/9lm9f/a6Lg/22l4f9nndr/ZZ/g/2ae
+        3f9mnd3/ZZzZ/2me3P9so9//a6He/3au6/9+uPP/dq/r/2+o5f9nntn/a6Pj/2yk4/9km9f/Y5rX/2if
+        3f9pouD/XJPS/yAzSP8nKSj/U1lg/01TXv9ITlj/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9ITlj/SU9Z/01UXP9KUlX/LzIv/yxCWv9VkNX/SXSk/yUrLf8PDwz/ISUm/z1E
+        Sv89Qkn/Nz1D/zQ6RP83PEz/OT9O/zg+Tf84Pk3/Nz1M/zY7S/81O0r/NjtL/zQ6S/81Okr/NDpJ/zM4
+        Sf80Okn/NTtE/zU6QP8yOED/PEVL/ygvMP8JCgr/EhUV/zI6Pv8xOEH/LzRF/y80Rf8tM0T/KzFC/ysx
+        Qf8qMEH/KjBA/yowQf8oLz//Jy4+/ykuP/8nLT7/JSs9/yUqPP8kKTf/JCku/ysxOf9CTFf/LTU9/xIV
+        GP8PEBP/Ji0z/ywzOv8iKjH/Ji44qSgtNwsnLjcAAAAAAAAAAAAsNDsAeF0AACs0PVMnLzjqKTA3/yw0
+        O/8SFhn/ERMW/xkdIf9DT1f/VWJq/2BtaP8rMbH/AADu/wME6P8EBef/BAXn/wQF5/8EBef/BAXn/wQF
+        5/8FBej/BQXo/wUF5/8FBef/BQXq/wAA8v8bH5D/a3h3/0NNT/8FBwf/EBMU/zlBRv9FUU3/P0pI/xsg
+        qv8AAPP/AQLq/wID5/8CA+n/AgPp/wID6f8CA+n/AgPp/wID6f8CA+j/AgPo/wEC8/8BAdj/ICVZ/05Z
+        Tv9QWl3/SFFW/zpBR/8WGRz/Dg4L/zI/Sf86Wn7/JDA8/zg8Pf9PWF3/TlRe/0lOWf9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9ITlj/S1Jb/09VWf8kJyb/LExv/2Oc
+        2v9mntz/cavs/2yn5/9jmtf/aJ/b/2ed2v9lm9f/cajm/3Wt6/9upeH/aqDd/2mg3v9lnNr/bqXh/3y0
+        8P95sOz/b6jl/3iy7v95su3/b6fj/26l4f9on9r/aqHe/26l4P9qoN3/aJ7d/2uh3v9poNv/a6Xl/z1k
+        k/8WGx7/PkJE/1RcZP9ITlj/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lOWP9QVl7/S1FU/ygwNf8vT3P/MURX/xQTD/8UFhf/Nj1B/z9GTP89Q0r/OT5H/zg+
+        TP84P07/OT9O/zk9TP85Pk3/OD5N/zY8S/80O0r/NDpK/zQ6Sv81O0r/NjxL/zM5Sv80O0b/NjxC/zQ6
+        P/81PET/O0RI/xogIP8ICgn/HyMk/zI4Pv8xN0T/LjRF/y40RP8uM0T/LTJD/ywyQv8rMEL/KjBB/yow
+        Qf8pMEH/KS4//ykuP/8nLD7/JSs8/yUsPP8nKzT/JCkv/zA5QP9FUFv/HyQq/w4RFP8RExb/KS82/yw0
+        PP8jKjP5KDA6dyUwNgQmMDgAAAAAAAAAAAAoMDkALjc/AC42PyYrMzzJKTA4/ysyOP8cISX/ERMV/xQX
+        Gf82P0f/UFtk/19tbP8/R5b/CQri/wEC6/8EBef/BAXn/wQF5/8EBef/BAXn/wQF5/8FBef/BQXn/wUF
+        5/8FBef/BQXo/wMD8f8FBrP/U1x4/2h3dP8RFBX/BQYG/ywzNv9DT1L/Q05C/zI5cP8GB+L/AQDv/wID
+        6P8CA+j/AgPo/wID6f8CA+n/AgPp/wID6f8CA+j/AgPo/wID6/8BAfL/BQel/zlBQf9UXln/Tlld/0ZO
+        VP8zOj7/DxAQ/xodHf8kKi7/Mzk//01UWf9NVFz/SU5Y/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0hPWP9HTlf/U1lh/zs9PP8ZKDT/UIO8/2qj5P9lm9f/ZJzb/2Ob
+        2v9mnNr/Z5/c/2Wd3P9nntj/bKPe/2+n4/96s/D/ebPv/2+o5v9to97/fbXw/4nE/v+Bu/X/d6/q/3Ss
+        6P90rOb/b6fj/2qh4P9tot7/baTf/3Or6P91rer/baPe/26k3/9ontr/a6Th/1+W0f8iNEn/IiMg/09V
+        W/9OVV7/SE5Y/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lO
+        WP9KT1n/UFdf/z9HSv8lKy7/HCAf/w4QDv8sMTT/P0VM/z5DSv86QEf/Oj5L/zxBUP86QE//OT5N/zg9
+        TP84PU3/OD5N/zc9S/83PEz/NzxM/zY8S/82PEv/NjxM/zQ6Sf80OUT/NDk+/zE3PP85QUj/NDs+/w4R
+        Ef8NEA//LDM2/zI4Qf8vNUX/LzRF/y80RP8tM0T/LTNE/y0zQ/8sMkL/KzBB/yovQP8qL0D/KS4//ygu
+        Pv8nKz7/Jis9/yYsO/8oLDL/JSkv/zU/R/89R1D/GR0g/w8RFP8aHyT/KzI5/yYtNP8mLTfiKjM6QCox
+        PAAoMjkAAAAAAAAAAAAAAAAAMDhAADE5QA4tNkCaKC84/iwzOP8nLDL/EBIU/xIUFv8pLjX/TVlj/1to
+        av9RXHj/EhTU/wAA7/8EBef/BAXn/wQF5/8EBef/BAXn/wUF5/8FBef/BQXn/wUF5/8FBef/BQXn/wQE
+        7f8AAOH/MDR1/3GAev8sMzb/AgID/xofIP9AR0z/RExK/z5KT/8aHbH/AAD1/wID6f8CA+j/AgPo/wID
+        6P8CA+j/AgPp/wID6P8CA+j/AgPo/wID6P8BAvD/AADl/xgbbP9KU0n/VmBg/01WW/9CTFL/JSot/wsM
+        Df8tMDL/TlZc/1BXYP9IT1j/SE9Y/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lP
+        Wf9JT1n/SU9Y/0dOV/9OVV7/TFBU/x4iJP84XIL/aaPj/2qh3f9pntn/aZ/a/2ed2f9roNz/bqXh/2ui
+        3/9sotz/bKLd/2qh3v9zq+n/drHv/22m5P9wp+L/fLbw/4O/+f9/uPT/ebDr/3qz7v94sOv/canm/2qh
+        4f9tpN//b6bj/2+n5v9up+f/bqXh/3Or6P9qoNv/a6Hc/3Kt7f9Ic6P/Ehgc/zk8O/9RWWL/SVBZ/0hP
+        WP9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWP9ITlf/SlBa/1FZ
+        Yf81PD3/DhEP/x8jJP8+REr/P0VM/ztBRv85Pkb/O0BP/z1BUf87QVD/OT9P/zs/Tv86P07/O0FQ/ztB
+        UP86QE//OD5N/zc9TP82PEz/NjtM/zU7SP80OkH/Mjc9/zM5QP88REr/JCgq/wkKCf8YHR3/MDc8/zA1
+        QP8vNET/MDVG/y81Rf8uM0T/LTND/y0zQ/8tM0P/LDFC/yovQP8nLT7/Jy0+/yguPv8nLT7/Jis9/ycs
+        Of8mLDH/Jy0z/z5IUv8yOkH/ExcZ/xASE/8iKC7/Lzc+/yIoMP8oMDm6KjI5HSkxOQAAAAAAAAAAAAAA
+        AAAAAAAALTU/ADoqOAAtNj9hKTE57i42Pf8rMTb/ExUY/w8SFP8dISX/SVJd/1hka/9ebGz/KS+z/wEB
+        6/8CA+j/BAXn/wQF5/8EBef/BQXn/wUF5/8FBef/BQXn/wUF5/8FBef/BQXn/wUF6v8CAu//Dg+e/2Vx
+        ef9SXl3/CAoL/wsNDv82PEH/RE9T/0RQQv8vNn7/Bgfp/wAA7/8CAuj/AgPo/wID6P8CA+j/AgPo/wID
+        6P8CA+j/AgPo/wID6P8CA+n/AAH0/wQEw/8sMFD/Vl9T/1RdYf9IUVb/PkZK/xkdH/8XGBn/RUpQ/05V
+        X/9IT1n/SE9Y/0hPWP9JT1j/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWP9IT1j/SE9Y/0pQ
+        Wv9RV17/LjEv/yE1TP9hltL/cqrq/2ec1/9ontr/cKjk/2yk3v9qoNz/cKjk/3Gn4v9upN7/a6Hc/2yi
+        3f9xqOP/cKfk/2qh3v9yqef/eLHs/4C59P94sOz/eLDr/4XA+v9+tvL/dq3p/3Go5P9wp+P/b6bi/2if
+        2/9lnNj/a6Lg/3Go5f9vpuH/dq3o/3av7P9ln9//KkVl/xsbGf9ITlH/UFdg/0dOWP9IT1j/SU9Y/0lP
+        Wf9JT1n/SU9Z/0lPWf9JT1n/SU9Z/0lPWf9JT1j/SU9Y/0lPWP9HT1j/TVRe/0hPVv8aHh//ExYW/zU7
+        QP9AR0//PkRK/ztAR/87QEv/PEFQ/z1CUf89Q1L/PEJR/zxCUf87QlH/O0FQ/ztBUP87QE//OkBP/zg/
+        Tv83PUz/NzxL/zY8Rf82PEH/Mzk//zlBSP86Q0b/FBYY/woKCv8jKCn/Mjg+/y4zQv8vNUX/MDVF/zA1
+        Rf8wNUX/LjND/y0yQv8tMkP/LDFC/yowQP8oLj7/KC0+/yguPv8oLT7/Jis9/yYrNP8lKi//MDc//0dT
+        Xf8mLDL/DxEU/xITFv8mLDH/MDhA/yMrM/onMDmFJi02CCcvNwAAAAAAAAAAAAAAAAAAAAAAFx8uAC42
+        PwAuNj4vKzI80ioxOf8wNz7/HyMo/xASFf8VGBv/NjxE/1ZgbP9hbm//R1GO/wcI5f8CAuv/BAXm/wQF
+        5/8FBef/BQXn/wUF5/8FBef/BQXn/wUF5/8FBef/BQXn/wUG5/8DBO7/AQLc/zlAcv9te3f/IScp/wMD
+        BP8fJCf/QktP/0NOSf8+SFX/Fhm7/wAA9f8CAun/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID
+        6P8CA+j/AgPs/wAA8v8LDJf/PUND/1pkX/9SW1//SFFW/zg+Rf8RExT/Gx4f/0ZMU/9MU13/SE9Z/0hP
+        WP9IT1j/SU9Y/0lPWP9JT1j/SU9Y/0lPWP9JT1j/SE9Y/0hPWP9ITlj/SE5Y/1JYYf9AQ0L/FyIr/0h0
+        pv9yru//b6jo/2ie2/9upeH/gLn3/3Sr5/9ondr/baPe/2ui3v9rot3/baTf/26k3/9uo97/baPe/26k
+        3/9wpuD/dKzn/3+49P+Evff/e7Tw/3y49v95su3/c6vm/3St6/9yqOP/c6vo/2yj4P9roNv/a6Hd/2+l
+        4v97s+7/frfz/2yi4f9upub/U4fB/xssPv8nJyP/T1Ra/05VX/9HTlf/SE9Y/0lPWP9JT1j/SU9Y/0lP
+        WP9JT1j/SU9Y/0lPWP9JT1j/SU9Y/0hPWP9KUVv/S1Jb/yYrLv8OERD/MDQ3/0JGTv8/RUv/PEFI/zpA
+        Sv88QlD/PUNS/z5EU/8/RFP/PUNS/z1DUf88QlH/O0JQ/ztAT/85P07/OT9O/zk/Tv85P07/OT9M/zg+
+        RP82O0L/NjxD/z5ITf8qMDH/CwwL/xQWFf8uNDf/MzhC/zA0Rf8wNUX/MDVF/zA1Rf8vNUX/LjVF/y0z
+        Q/8tMkL/LDFC/ysxQf8rMEH/KS4//yguP/8oLT//Jiw7/yYsMv8mLDL/PUVP/0BJU/8aHiH/EBET/xkc
+        If8uNj3/KDA4/ycvOOUpMjtKKjM8ACQsNgAAAAAAAAAAAAAAAAAAAAAAAAAAAC42PwAuNj8KKzU8mScv
+        N/0yOUL/Jiow/xIUF/8RExb/KC0y/1Jcaf9daWz/XGhz/xgaz/8AAO3/AwTm/wQF5v8FBef/BQXn/wUF
+        5/8FBef/BQXn/wUF5/8FBuf/BQbn/wUG5/8FBur/AQHs/xIUn/9odXn/TVdV/wQFBv8MDhH/Nj1B/0NN
+        UP9FUEX/Mjl4/wgJ4f8BAfD/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wIC
+        7/8AAOL/Fxty/0xVSf9cZmX/Ulxf/0lSWP80O0D/DA4P/yIlJ/9KUFj/S1Jc/0hPWP9IT1j/SE9Y/0hP
+        WP9IT1j/SE9Y/0hPWP9IT1j/SE9Y/0hOWP9HTVj/T1Vg/0tNTv8hJSf/MlZ//2eg4P9spOL/aqHe/2qg
+        3P97suv/icL7/3Wt6v9qoN3/bKLe/2uh3v9rodz/baTf/22k3v9totz/bKLc/2yi3v9tot3/cajk/3au
+        6v9/uPP/ebHs/2+m4f9wp+P/b6bi/3Sr5/9yqeT/da/t/22k4f9poNv/bqXf/3at6f+Evfn/ebLw/2ad
+        3f9on93/a6bo/ztlk/8XHyX/MzU0/1BXX/9LUlz/R05X/0hPWP9IT1j/SE9Y/0hPWP9IT1j/SU9Y/0hP
+        WP9IT1j/SE9Y/0pRW/9NVF7/LTI2/w0PEP8qLjD/Q0pP/0JIT/89Qkn/Oj9J/zxBT/89QlH/PUNR/z1D
+        Uf8+RFP/PUNS/zxCUf88QlD/PEJR/ztBUP86Pk3/OT5N/zo/T/85Pk7/OT9I/zg+RP82O0L/OUFI/ztD
+        R/8XGRn/CQoJ/yAmKP81PEL/MDVD/zA1Rv8wNkb/MDZG/zA1Rv8vNUX/LzVF/y40RP8sM0L/LDJC/ywx
+        Qv8sMUL/Ki9A/ykuP/8oLT//KC04/yctMv8rMzn/RE5Y/zA3P/8QEhT/ERMW/x8kKf8yOkP/JCs0/ycv
+        ObsoMToeJzE6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMbJAAsNkEALDU9WSkyO/MsMzv/LDM4/xkc
+        H/8QEhX/HSIl/0RMVv9YY2z/YW5u/zY8of8DA+r/AwPp/wQF5v8FBef/BQXn/wUF5/8FBef/BQXn/wUG
+        5/8FBuf/BQbn/wUG5/8FBub/BAXv/wEB0P8/RnX/cX97/xwgIv8DBAX/HiMl/0NMUP9DTUz/RlBL/xsf
+        sf8AAfL/AQLq/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8BAfP/AgLK/yUp
+        W/9WYFT/XGZn/09ZXf9HUFX/KzA1/wgKCv8nKy7/TVJb/0tRXP9IT1j/SE9Y/0hPWP9IT1j/SE9Y/0hP
+        WP9IT1j/SE5Y/0hNWP9OVV//TVFW/yIjJP8mQF//X5jW/3Gq5/9sot3/aqDa/3Gn4f+DvPb/jMj+/322
+        9f9rod//aqHc/22j3v9vpd//b6Xf/22j3v9vpd//baTe/22j3v9wpuH/cKbk/3Sr6P+BuvX/f7fy/3Kp
+        5f9tpOH/bKPd/2+m4P90q+f/canl/3Cm4/9zqub/fLbx/3228v99tfL/cKfm/2if2/9nndr/baXk/2Oe
+        4P8vUnf/FRgX/zg6Ov9TW2T/SlFb/0dNV/9ITlj/SE9Y/0hPWP9IT1j/SE9Y/0hPWP9IT1j/SlBb/1BW
+        X/82PEH/DhES/ycrLv9HTVT/R01V/0NJT/8+Q0r/PUNQ/z5DUv8/RFL/P0VT/z5EUv89Q1H/PEFQ/ztB
+        T/87QE//O0FQ/zo/Tv87QU//O0FQ/ztAUP85Pkv/OD5E/zc9Q/84PkX/PkdL/ygtLv8LDAz/ERQU/y83
+        Ov81OkX/MTZF/zE2Rv8xNkb/MDZG/zA2Rf8vNUX/LzRE/y40RP8tMkP/LDFB/ysxQf8rMEH/KjBA/yow
+        QP8pLj7/KS42/ykvM/82Pkf/RlBa/yMpLv8OERP/FBca/ykuNf8qMTn/JS02+ScwOXwmLTYEJS02AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArMz4ALzY/ICw0PcsoLzX/Nj5F/x8kJ/8RFBb/ERQW/zI4
+        P/9WYG3/YW1s/1BahP8MDeH/AgLs/wQF5v8FBeb/BQXn/wUF5/8FBef/BQbn/wUG5/8FBuf/BQbn/wUG
+        5/8FBuf/BQbq/wIC6f8YG5r/cHx8/0hRU/8DBAX/DQ8R/zc+Qf9ETlH/R1JH/zlBa/8LDNz/AAHx/wID
+        6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AAH0/wUGtP8uNEv/XWVa/19n
+        av9QWF3/Rk1T/ykuMf8JCwz/LTE0/1BWX/9KUVv/SE5Y/0hOWP9ITlj/SE5Y/0hOWP9ITlj/R01Y/05V
+        X/9NUlb/JiYj/x0zSv9Wi8f/carn/26k3/9vpeD/bqTh/3Or6f+Auff/gLn0/3av7P9vpeL/bqTg/2+k
+        3/9wpuH/cabh/3Cm4P9wpuD/cKbg/3Gn4v93rur/d6/s/3at6v9/uPT/f7fy/3Kq5/9so97/a6Hd/2uh
+        2/9xqOT/cqro/3ar5/99tPD/hsH7/4C69f98tO7/dKzo/2mg3P9ondn/bKPh/4C7+/9ln9v/Ij1c/xUW
+        E/89QED/U1pi/0tRXP9HTVf/SE5Y/0hOWP9IT1j/SE9Y/0hOWP9JUFr/TlVf/zk+Q/8QExP/HyMl/0VM
+        Uf9LUVj/SE5U/0NIUP9ARVL/QUZV/z9FU/8/RlP/QEZV/z9FVP89Q1H/PUFQ/zxBUP87QU//OkBO/zo+
+        Tf87QE//O0FR/zo/Tv85P0f/OT5E/zc9Q/87Q0n/OkJF/xYZGf8ICQn/HyMk/zlBR/80OUf/NDhJ/zI4
+        R/8xNkb/LzVF/y81RP8vNUT/LjRE/y4zQ/8tM0P/LDFB/ysyQP8qL0D/Ki9A/yovQf8pLzv/KC80/ywy
+        N/9FTlj/PERN/xIUF/8RExb/GR0h/zQ7Q/8lLTL/JS424ikxOj0lLTgAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAsNT0ALTY/Biw0PYsqMjn/MTg//ykvM/8VGRv/DxET/yYrMP9LVF//X2pw/19s
+        eP8kKrz/AQHw/wME5/8FBeb/BQXn/wUF5/8FBuf/BQbn/wUG5/8FBuf/BQbn/wUG5/8FBuf/BQbm/wQF
+        8f8CAsX/QUh3/215c/8bHyH/AwQE/yAkJv9ETVL/R1BR/0lSSv8lK5z/AwTv/wEC6/8CA+j/AgPo/wID
+        6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+f/AgPr/wAA7/8KC57/PEFK/2JrYf9haWz/VFxf/0VN
+        Uv8mKi3/DA4O/zA0N/9OVF3/SlFb/0hOWP9ITlj/SE5Y/0hOWP9HTlj/T1Vg/01RVv8oKCb/Gis9/1aH
+        vP94sO7/cKXh/3Op5P98tO7/ebDt/3Kr6f94se3/ebHr/3eu6v+BuvT/dq7q/3Cl4v9xp+H/cqnl/3Cn
+        4/9vpN//cKbi/3iw7f+Iwvf/hsD5/3y08v96su3/c6vm/3Cn4v9xqOL/b6bi/3Cn4v93rur/ebHs/3Wr
+        5v98s+3/gbn0/4K79f+HwPj/ebHt/2uh3/9touD/dq7t/3iy8f97tfT/XJLO/x41T/8VFRT/Oz4+/1FY
+        YP9MUlz/R01X/0hOWP9ITlj/SE5Y/0lPWv9NVF//Nz5C/xASE/8dISL/PEFH/0ZNVP9GTVT/RUtS/0NJ
+        VP9ESln/REpY/0FHVv9ARlT/QEVT/z5EUv8+Q1L/PUJR/z1CUf88QlD/PEFP/zpBTv86P07/OT9P/zk/
+        S/85P0X/OD1D/zc9RP8/SE7/KS8w/woMC/8QEhL/MDU5/zc9R/81Okr/MzlJ/zM3R/8xNUX/LzVE/y81
+        RP8vNEP/LjND/y4zQ/8tM0P/LTND/ysxQf8qLz//Ki9A/ykuP/8pLjj/KC4y/zA3P/9GUFv/LTM4/w4Q
+        Ev8SFRj/JCkv/y82Pv8mLjb/Ji43qSgwOhEnLzkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAwOD8AKjI9AC41PkArND3kKC82/zc+Rf8bHyH/ERMV/xkdIf9ASFD/XGZx/2h0b/9IUpT/CQvo/wEB
+        6v8FBeb/BQXm/wUF5/8FBuf/BQbn/wUG5/8FBuf/BQbn/wUG5/8FBuf/BQbm/wUG6P8CAu3/EhSc/2t2
+        d/9KU1L/BAUF/w0PEP83PUD/SVJY/0lSSv9CSlr/ExbH/wAA9P8CA+n/AgPo/wID6P8CA+j/AgPo/wID
+        6P8CA+j/AgPo/wID6P8CA+j/AgPn/wEC7v8AAOn/DxCM/0ZLS/9nb2f/ZGxv/1VfY/9HT1T/Jywu/wwO
+        Dv8tMTT/TVNb/0tSXf9ITlj/SE5X/0hOWP9QVl//TE9S/yUlIv8YKj7/T4C3/3249v92ren/cabh/3eu
+        6P+BuPP/erHt/3Gp5/93run/da3o/3et5/+Evvf/fLTu/3Kp4/9zqeL/cafi/3Ko4v92rOj/e7Lu/43I
+        +f+V0f7/icP6/4C69/9+t/D/eLDp/3iv6v98tO7/c6rm/3Sq5v9/t/L/fLTv/2+l4/9upeH/cKfl/3qy
+        8P+Bu/b/dazp/3Or6/9xqOb/ebLv/3au6/90q+j/fLf2/1mNx/8dNFD/FBMT/zc5Nv9OVFr/TVNd/0dN
+        WP9ITlj/SlBb/1BWX/84PUL/ERQU/x4gIv8+Q0j/RktT/0JKT/9ARkz/QkdR/0RKV/9ESlj/RUtY/0NJ
+        V/9BR1X/P0RT/z5EUv8+Q1L/PUFQ/zxBUP88Qk//PUJR/zxDUf86QVD/OT9M/zk/Rv84PkP/NTpA/ztC
+        SP85QEP/Fxsa/wcKCf8fJCX/OD5E/zU6SP81Okr/MzlI/zI3R/8wNUb/MDVF/zA1Rf8uM0T/LTJC/ywx
+        Qf8tMkL/LTJC/ywyQv8rMUH/KzBB/ykuPv8qLjX/KS81/z5HUf9GT1r/HiMm/xAUFf8UFxr/MTg//ygu
+        Nv8mLjfyKDE6YTo9SAErMzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALTU+AC00
+        PhYtNT6tKzQ7/zU9RP8iJyv/ExYZ/xEUFv8vNDv/UVpl/2Rvc/9jb3z/JSrC/wIC8f8FBeb/BQXm/wUF
+        5v8FBuf/BQbn/wUG5/8FBuf/BQbn/wUG5/8FBuf/BQbm/wUG5v8EBe7/AgPU/zg+g/9yfnj/ISUm/wEB
+        Af8eISL/Q0xQ/0dQU/9MVUj/OEB8/wkK5f8BAe//AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID
+        6P8CA+j/AgPo/wID5v8BAvD/AADk/xUWgf9KUE//aXJq/2dwcv9YYWb/SVJW/yswM/8KDAv/Jyst/0xS
+        Wv9OVF7/SE9Z/1BWXv9ISkr/JyYk/x0zSv9Rg7v/eLDv/3ev7P90q+b/dq3o/3St6f99tvP/d7Ds/2+l
+        4f9upN//bqXf/3Gn4f99tO3/hL33/3qy7v9zqeP/c6rk/3et5/+Fvvb/kcv//53b//+Oy/v/icb7/4O+
+        +f96suz/eLDr/3+49P+Iwfr/davl/22k3/9/uPH/jsz7/4K78P93ruv/cajl/3mw6v+HwPb/eK/s/26k
+        4/9upN7/dazm/3uz8P94r+//gLr2/3649/9Zj83/IkJl/xQZG/8vLyz/S1BW/05VXv9LUlz/TVNc/zY5
+        Pf8TFRX/JCco/z5DSP9GTVT/RUpS/0BGTP8/RE3/QUZU/0JIVv9DSFb/Q0lX/0NIVv9CSFb/QUZV/0BF
+        VP89RFH/PEFQ/ztAT/87QE7/PEJQ/zxBUP87P07/Oz9I/zo/Rf83PEL/NzxD/z1FSv8lLC3/CgsK/xIV
+        Ff8xOTv/NTpF/zM4SP8zOUj/MzlI/zM5SP8yN0b/MTZF/zA2Rf8uNEP/LTJC/y0yQv8sMUH/LTJC/y0z
+        Q/8tM0P/LDFC/yswPP8qLzX/MDc//0tUXv84QEf/ExUY/xIUF/8dISb/MzpA/ykwOP8nLzjHKDM5JiYx
+        OAAvNz4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALzc/AD08OAAuN0BlLTY+8C41
+        Pf8zOkH/FRgb/xITFv8aHCH/RU1W/1xmcf9reHH/REyg/wgI6P8DA+n/BQXm/wUF5v8FBeb/BQbn/wUG
+        5/8FBuf/BQbn/wUG5/8FBuf/BQbn/wUG5v8FBuf/AgLy/w0Oq/9eaHz/WGJe/wYHCP8ICAn/LzQ3/0dP
+        Vv9IUU//TFZQ/ycsoP8CAu7/AQHr/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID
+        5/8CA+j/AQLz/wAA3f8UFXb/TVNP/211bf9rcnX/WmJn/0hSVv8vNTj/DxER/yIlJf9HS1H/Vl1l/0JF
+        R/8iKzX/L05z/1qOyf95s/H/e7Pr/3iu5/92rej/dazp/3Sr5v96su7/dKvn/3Gn4f9xp+L/dazn/3yy
+        6/96sez/h8D3/4O78/9yqeT/dKnk/3iu6f+Gvvj/jsr+/5HN/f+AuPL/fLTv/3+28v+CuvP/frXy/3y1
+        8v+BuvT/dKvl/2+l3/9yqeT/jMr4/5zd//+Pyvv/fbTw/4O78v+Tzv//hr/5/3Sr5/9vpuD/bqbk/3Cq
+        7P9yrOv/fLXx/3y19P91rez/YJ7i/zljkv8WJjb/Jikq/05TWP9SWF//LTAz/w0PEP8rLzL/REpQ/0VK
+        Uf9FS1L/Q0hP/0NIUv9ESVf/QkhW/0NIVv9ESlj/RUpZ/0VLWf9ESlj/QkhW/0FGVf8/RFP/PUJR/zo/
+        T/85Pk3/OT5N/zk+Tv86P0r/PEBH/zo/Rv83PkT/PUVL/zQ7Pf8QExL/CgsL/ycsLv84PUX/NDlH/zM4
+        SP80Okr/NDpJ/zI4R/8zN0b/MjZF/zA2Rf8vNUT/LjND/y0yQv8sMUH/LDFB/ywxQv8rMUL/LDFA/ywx
+        OP8sMjn/PkZQ/0tTXv8gJCj/ERMW/xQWGf8uNTz/LzY9/ygvOPopMTyEKzY8Byo0PAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC01PgAtNT4mLTU+yy42P/84Pkb/IiYq/xIU
+        F/8SFBf/MDU7/1NcZv9jb3P/YWx6/yAjx/8CAu//BQXm/wUF5v8FBub/BQbm/wUG5/8FBuf/BQbn/wUG
+        5/8FBuf/BQbn/wYG5/8GBub/BQXs/wAA4P8qLoj/doOB/y4zM/8BAQH/FRka/0FJTP9HUFb/TFVK/0dP
+        X/8XGcf/AAD0/wED6f8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+f/AgPo/wEC
+        8/8AANr/ExR6/05TUf9weG//bnZ5/1pjZv9LVFn/OT9C/xMVFv8XGRn/OTw9/ywtLP86XYT/a6nq/3ey
+        8P91q+f/c6nj/3Gn4f9yp+H/caji/3iv6f+At/L/dazn/3Go4v92rej/ebDs/3yz7f98tPD/isT4/5DK
+        +f93run/dKnk/3qw6v+Eu/X/hsD5/4bB+/97s/D/fbTw/43I+f+m5f7/odz+/4rE9v94sOv/davm/3Wq
+        4/9xp+D/erHt/4bE+P+Sz/3/hr/5/4G68/+Cu/P/hL31/4C69f90q+j/canp/3Cp6/9xqeX/e7Ls/3mw
+        7P95r+z/isb8/4PD+P9KdaP/JSsu/zE0M/8jJSf/FBUX/y8yNv9LUVj/SU9X/0VLUv9BRkz/QUZQ/0ZM
+        Wf9HTFv/Rkxa/0ZLWf9GS1n/RUtZ/0ZMWv9FS1n/Q0hX/0FGVP9ARVP/P0ZT/zxBUP86P03/OT5N/zk/
+        TP86QEf/Oj5G/zg9Q/87Q0r/PEZK/x0iI/8HCQn/Fhoa/zQ7Pv83PEn/NjpK/zY7Sv82O0v/NDpK/zI3
+        R/8yN0b/MTdF/zE2Rf8wNET/LjND/y4zQ/8tM0P/LDFB/yswQP8rMEL/LDI9/ywxNv8yOED/SlNf/zlB
+        Sf8UFxr/EBIV/x8iJ/80O0L/LDM7/ykxOtwqMjs8KjI8ACouOQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8zPQAvMTwCLjY/eiw0PfkzPEP/NTxC/xUWGf8SFRf/GBoe/0lR
+        Wv9dZ3P/bHlx/0BHoP8HB+X/AwPp/wUF5v8FBub/BQbm/wUG5v8FBub/BQbn/wUG5/8FBuf/Bgbn/wYG
+        5/8GBub/Bgbn/wMD8f8GB8L/SVB2/2Vwav8REhL/AwQE/ycrLf9FTlP/Rk9S/1FbTf8+RHf/DQ/Z/wAA
+        8f8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPn/wID5/8BAvP/AADh/xES
+        hv9IS1H/c3tu/3R7ff9ja2//Ulxg/z9GS/8eISL/CgsM/xoaGv88R1L/XH6i/3Sp4P98tvP/eLHt/3Ko
+        4v9yqOL/c6nj/3iv6f96sez/dKvo/3Sr6P95sOn/erHs/3mv6f96sOr/hb71/4vF+v96sev/dKrj/3mw
+        6f+AuPH/fLPt/4G59P+DvPf/g7v3/4W/+P+Pzvz/k878/4vE+f98s+3/dqzn/3Wq5P91q+X/fbPu/4O8
+        +P+Oyf7/h7/6/4K58/96sev/f7bw/3mw7P9wpuH/dq3o/3iv7P92rOn/gbjz/4G68f9/uvb/g73s/3GZ
+        vv9GVWT/HyEh/w4QDv8YGRr/Njo+/0tQV/9MUln/Sk9W/0VKUf9DSFL/RUpY/0VLWf9GTVz/SE9d/0hO
+        XP9GTFr/RUtZ/0VMWv9GTFr/RUpY/0JIVv9BRlT/QUdV/0BGVP8+RFL/PEBP/ztASf87QUb/OT5E/zo/
+        R/8+Rkz/LDI0/wsNDf8LDw7/KzEy/zk/R/80Okn/NTtL/zU7Sv81Okn/NTpK/zM4R/8xN0b/MTZG/zE2
+        Rv8wNUT/LzRD/y4zQ/8uM0P/LjNC/ywxQf8rMED/LTI5/ywxOP8+Rk//Tlhi/yEkKf8RExX/EhQW/ywy
+        OP8zOkL/Jy43/SoyO5kqMjsJKjI7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAvN0AALjY/LS01PtcvOED/Nz1E/yMnK/8TFRf/FBYY/zI4Pv9cZnL/and6/2Fr
+        f/8cHsz/AADt/wQE5v8FBub/BQbm/wUG5v8FBub/BQbm/wUG5v8GBuf/Bgbn/wYG5/8GBub/Bgbm/wYF
+        6/8CAev/EhSk/2Nsdv9KUU7/BgcH/woLDP8zOTv/Rk9W/0tTU/9TXE//NTuR/wcH5/8AAe3/AgPn/wID
+        5/8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID5/8CA+j/AgLx/wAA5P8NDpT/QEVT/3F3
+        af96gID/bHN2/1hfY/9GTFD/LDAz/xITFP8RDwv/LC0s/0dYZ/9tlb7/c6jh/3ex8f94se3/dqzm/3es
+        5f96ser/eLDu/3iw7/96sez/e7Lt/3qw6/94r+j/g7z1/4e/+f+At/H/d63n/3iv6f99tfD/ea/q/3iv
+        6f9/tfD/h773/4S99/95sO//eK7t/3uz7v98s+3/eK3o/3Sr5f96sez/gbn2/4vE+/+Oyf3/frXx/4G4
+        8v+Evff/gLjz/3at6P9wpuD/c6rn/3Wt7P92r/H/hcL7/4S98P9tm8f/TGN6/zA1Nv8UEg7/Dg4O/yQn
+        KP9BRkr/S1BX/0xRWf9JTVX/RUpR/0RJVP9GS1n/RUtZ/0NJV/9FS1n/R01b/0dOXP9HTVv/RktZ/0VL
+        Wf9FSln/RUpY/0NJV/9CSFf/QkdW/0FHVv9ARlT/P0NN/z1CSf87Qkf/OkFH/0BHTv83PkH/EhUV/wgK
+        Cf8gJSX/OT9G/zg9S/83PEz/NjxK/zU7Sv81Okn/NjtK/zM3R/8wNUX/MDVF/zA1Rf8vNET/LzRE/y4z
+        Q/8tMkL/LDFB/yovQf8rMTz/LDE2/zE4P/9KVF7/PENL/xYYG/8QExX/HSEl/zM6Qf8sNTz/KjE76Ssy
+        PEgrMT0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAxOUEANDtBBjA4QoksND3+NT1E/zE4Pf8WGRv/ExUY/x0fI/9SW2X/ZnF7/255dv9DSqD/CAnn/wEC
+        6v8FBub/BQbm/wUG5v8FBub/BQbm/wUG5v8FBub/BQbn/wYG5/8GBuf/Bgbm/wYG5v8FBe7/AQHf/yww
+        h/90fnb/MDQy/wEBAv8WGRn/P0dK/0dPVv9QWFP/VVxT/ycrpf8DA/D/AQHs/wID5v8CA+f/AgPo/wID
+        6P8CA+j/AgPo/wID6P8CA+j/AgPo/wID6P8CA+f/AgPn/wID7v8AAez/Bwim/zI1Vv9tc2b/gYeD/3Z9
+        gP9fZWn/TVVZ/zpARP8dHyH/DAwJ/xYWEv81ODn/Vml9/2qQu/9yqOH/e7b0/3au6/97su3/fLTx/3qy
+        7v96sez/dq3r/3iv7P96su3/f7fz/4G58/99tO3/ea/p/3mu6P94r+n/eK/p/3mu6f97se3/jMX6/5fR
+        /v+Iv/X/e7Hr/3et5/92rOb/d63m/3et6P94rej/erHs/3628v9+t/D/ebDq/4K48v+Fvfb/fbPs/3ev
+        6/9zquT/c63r/3i19v9xqOX/apXB/112jP86QUX/HRwZ/wkJBv8WGRn/NTo8/05UWP9IT1T/SU9X/0xR
+        WP9HTFP/Q0hS/0NIV/9DSFb/Q0hW/0VLWP9GTFr/REpY/0VLWf9GTFr/RktZ/0VLWf9DSVf/QkhW/0NJ
+        V/9DSVf/QkdX/z9EVP8+Q0//P0RK/z5ESf88QUj/PkVN/z9IS/8fJCX/BwkJ/xUXF/81Oz//OkBK/zc8
+        S/84Pkz/OD1M/zY7Sv81Okn/NTpJ/zM4SP8yNkb/MTZE/zA1Rf8vNEP/LzRD/y4zQ/8uM0P/LTJD/ywy
+        QP8sMjj/LDI4/z9IUv9RW2b/KC0y/xIUFv8TFhj/Ki82/zc/R/8oLzf/KzM9qC41PQ8rMjsAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0PEQALjdBADI6
+        RDcuN0HVLjY+/zc+Rf8kJyz/ExUY/xUYGv83PEP/YGl2/2x3ev9rdoH/KCvG/wEB7P8EBef/BQbm/wUG
+        5v8FBub/BQbm/wUG5v8FBub/BQbn/wYG5/8GBub/Bgbm/wYG5v8GBuf/AwPw/wUFwv9KUXr/aHJp/xUY
+        F/8FBgb/JSoq/0RNUv9IT1b/VFtU/1BXYP8dIL3/AQH0/wEC6/8CA+f/AgPn/wID6P8CA+j/AgPo/wID
+        6P8CA+j/AgPo/wID6P8CA+f/AgPn/wID5/8CA+z/AADy/wMEvv8mKGn/XmRa/4KIff+CiIj/b3Z6/1Zg
+        ZP9GTlH/NDk8/xkbHP8ODgz/JyYi/zw+P/9UZ3r/YIOn/2+i2f99t/b/erT0/3639f+BufL/ebDq/3mv
+        6P9+tO7/f7bw/3217v99tOz/fLPt/3qx6/95r+j/eK7p/3uy7v+Iwfj/j8r9/5XQ//+Oxvr/fbXv/3qx
+        6/+Cu/L/fLHr/3it5/92rOf/dazm/3ar5f92rOb/eK7o/3ux6/97s+3/erLu/3my8f93se//bqLb/2CF
+        sP9XbYb/OkBG/yQkIf8QEA3/DQ8O/yYqK/9JUFL/Zm5w/3V7fv9ZYGP/QkhO/0lPVv9LUFf/SE1W/0VK
+        WP9FS1n/R0tZ/0hMW/9HS1r/REpY/0RLWf9FS1n/RktZ/0VKWP9DSFb/QUZT/0JGVf9DSFb/QUdW/z9F
+        UP9ARUz/QERL/z1CSP89RUz/QkpQ/yoxMf8KDQ3/Cw0O/ysxM/86P0n/NztL/zc8S/84Pkz/OD5M/zc8
+        S/81Okn/NDlI/zM4SP8zOEf/MjhH/zE3R/8wNUX/LzRD/y80RP8vNET/LjNE/y80Pf8sMTf/MzpD/09Z
+        ZP8+RU7/Fxod/xIUFv8cICX/NTtC/yw0Ov8qMTrqKjI7U1BhOwAqMzsAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMztEADY+RQsvN0GKLDQ9+jg/
+        SP8wNTv/Fhoc/xMVF/8eISX/S1Nc/2Vwe/9xfXr/VF2S/woL4P8CAun/BQbm/wUG5v8FBub/BQbm/wUG
+        5v8FBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbp/wEB7P8QEqP/ZG15/1BYUP8JCgr/CQoK/y80
+        N/9FT1P/SlFV/1dfVv9KUW3/Gx3D/wEB8v8BAun/AgPn/wID5/8CA+f/AgPo/wID6P8CA+j/AgPo/wID
+        6P8CA+j/AgPn/wID5/8CA+f/AgPq/wEC8/8AAM7/FBWE/0dKVv96gHL/ipCL/36Eh/9ocHP/WGBk/0ZN
+        UP8uMzT/DxER/xESEP8fHRn/Nzo5/1dkc/9Zc47/apbF/3218P+AuvT/e7Tv/3218f9/t/H/f7bv/360
+        7f9/te7/fbTv/32z7f96sOn/ebDq/3618P+FvfX/g7zz/4nD+P+At/D/erHs/4S88v+V0P//grnx/3as
+        5/94rej/d67p/3mw6v97su3/fbby/3218/98tfL/fbPv/22ay/9YdpX/UmJx/z5CRf8lJCH/FhcV/w8R
+        EP8nKy3/PkRG/1xiZv92fX//hIqL/4KIif9xeHv/SlBV/0JHTv9NUVn/TVJZ/0tRXP9MUmD/S1Be/0ZM
+        Wf9FSlj/RktY/0dMWv9GS1n/RUpY/0NIVv9CR1X/QUdU/0FGVP9CR1X/QUdU/0FHTv9DSE7/QEVL/zxE
+        S/9BSk//NDw+/xEUE/8HCgr/ICUm/zpBR/84PUv/ODxM/zc8Sv83PEv/OD5M/zg+TP82O0r/NTpJ/zQ5
+        SP8zOEf/MjhH/zI4R/8yN0b/MDVE/zA1RP8wNUX/MDVD/zA1PP8wNT3/Q0xW/0xWX/8iJir/EBIU/xQX
+        Gf8oLDL/NT1F/ycuNv8qMTqqKjI8FioyOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMztBADE2QQAyOEE2LzZA0zA4QP88REv/JCcr/xUX
+        Gf8UFxn/MDY7/15mc/9teX3/bXl9/y8zuf8BAev/BATo/wUG5v8FBub/BQbm/wYG5v8GBub/Bgbm/wYG
+        5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wUF7P8BAeP/ISSU/2t1c/85Pjj/AwME/xEUFP85P0L/Rk5T/01V
+        Vv9cZFf/TlRy/xkbyv8AAPH/AQLp/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID6P8CA+j/AgPn/wID
+        5/8CA+f/AgPn/wID6P8BAvH/AADp/wYGqv8sLV//aW1k/4yShf+PlJL/gIaI/2dvc/9RWV3/QEhL/ykt
+        L/8SFBT/ExQT/xgVEf8uLSv/U1pg/1hpef9ffp7/dKHR/4C27f+Du/T/hsD6/4O++v+Hwfv/grr2/4G4
+        9P9/tvD/fbXu/4G48f+BuPL/fbTu/3+28P98suz/erHr/4S79P+Uzv7/kMv8/3638/98tPH/e7Xz/3y1
+        9P+At/L/gbfx/3el1v9ffqD/U2Jy/05WXP8wMTH/GhcT/xQVE/8OEBD/Jikr/0BGSf9aYWT/dn2B/4eN
+        jf+Ij4f/c3hy/3F2c/+Bh4b/ZGpt/0JITv9GS1P/TVJZ/01TW/9MUl7/SU9c/0ZMWf9FS1j/RUtY/0ZM
+        Wf9FS1n/RElX/0NIVv9CSFX/QkdV/0JHVf9CR1X/Q0hQ/0NIT/9BRUz/PkRM/0FJUP85QUP/Fhka/wYI
+        CP8XGxv/Nz5D/zxCTf84Pkz/NzxK/zY7Sv82O0r/NzxL/zc8S/83PEv/NjtL/zQ5SP8zOEf/MTZG/zE2
+        Rv8xNkX/MDRE/y80RP8wNUT/MTY//y80Ov87Qkv/VF1o/zlAR/8SFBf/EhQW/x0hI/83PUT/LDM6/ykw
+        OecqMjpSKDE1ACoyOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAADU8QwA1PUQHLzdAfy02P/g3P0j/OD1E/xocIP8TFxn/GRse/0hP
+        WP9ncn7/cn97/19okf8VGNn/AADs/wUG5v8FBub/BQbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG
+        5v8GBub/Bgbm/wYG5v8EBO7/AgLZ/zI2g/9sdW7/KSwp/wICAv8aHR3/QEdJ/0ZOVf9RV1r/YWhZ/0tR
+        eP8WGM7/AQHy/wEC6f8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPt/wAA8f8BAc//EhOF/0NFX/95fXL/k5iP/5OZmv+DiYz/aXJ1/1FaXf9JUFP/MTU4/xsd
+        Hv8WFhb/EBAN/yMiH/9AQ0L/TFBQ/1FcZf9dc4n/dJa7/4ay2/+GuOD/f7Lk/3606/99tO7/fbbz/4C6
+        9/+Cvfr/hMD7/4TA+v+Ev/v/fbj2/4XA+v+NyPr/k8zv/3615v91p9v/eqbW/3acxf9kfJX/UmBs/0pO
+        UP86Ozv/JCMg/xEQDf8REhH/FhkZ/yovMP9FS07/WmBj/3h9gf+LkZP/kZeS/4CFdv9PVGP/Fxlu/zE0
+        dv99g3r/foSD/1ZdYf9BR03/SE1U/0pPVv9ITVb/RkxZ/0hNW/9HTFr/RUpX/0RKV/9FSlj/RElX/0NI
+        Vv9DSFb/QkdV/0FGU/9CSE//Q0lP/0JHTv8/REz/QEdO/zxER/8eIiP/BwgJ/xEUE/8yNzr/QEVQ/z1C
+        Uf85Pk3/NjtK/zY7Sf82O0n/NjtK/zY7Sv83PEr/NjtK/zQ5SP80OUj/NDlH/zE2Rv8wNET/LzRD/zA0
+        Rf8xNkL/MDU6/zI3Pv9JUlz/TVVe/xsfIv8SFBb/FRcZ/zA2O/82PET/LDM7/i00PaMtNj4TLDY+AAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAvN0AALzdAJS42P8gvNz//PkZN/ykuMv8WGRz/ExUY/yovM/9YYWv/bnh//3aA
+        gP9DSa//BQbp/wID6P8FBuX/BQbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG
+        5v8GBuf/BAPv/wYHyf9ESoD/Z29o/xocG/8DBAT/JCco/0JJTf9GTlb/VFpa/2RqXP9LUIT/FhjS/wAB
+        8f8BAun/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        6f8BAu//AADt/wMDvP8cHXT/UFNh/4CEdP+Znpb/mp6f/4iPkf9yeHz/XmVq/1VbX/8+Q0b/Jyst/x8i
+        I/8WFhb/DAoH/x0bGP8zMzH/Pj8+/0tMSv9RWF7/VmNx/2J1iv9shaH/cZCy/3eYvP97nsP/gabI/4ar
+        yf+Bpsf/dpi8/3mau/94lrL/Z32N/1Znd/9QWmT/RkdI/0FBQP82NjT/IB8b/xAOCv8XFhb/Gx0e/yAk
+        Jf84Pj//Vl1f/2Vsb/9+g4b/kpeY/5ecmv+IjX7/XWFj/ycpaf8HB6L/AADo/wkJwv9RVW//hYt9/3N5
+        e/9NVFn/RUpQ/0pPVv9JTlX/SU1a/0tQX/9KT1z/R0xZ/0VKWP9FS1n/RUpY/0RJVv9DSFb/QUZU/0JH
+        UP9DSE3/QEZM/z5ES/8+RU3/PkVK/yQoKv8JCgv/DhAQ/y8zNf8+RE3/O0BP/zxBUP87QE//Oj9O/zo/
+        Tf84PUv/NjpK/zU6Sf80Okj/NDlI/zQ5SP80OUj/NDlI/zM3R/8xNkX/MDVE/zA0Q/8xNj7/MDY7/z1E
+        Tf9RW2X/MTg8/xIVFv8UFRj/ISMn/zlASP8uNT7/KzM74C02PUEsNTwAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAxOEEAMjpDAzA4QWwvN0DyNTxE/z5ETP8cHyP/FBcZ/xcaHP9FTFT/Z3B7/3N+gP9ve4r/JyzH/wEB
+        7P8EBeb/BQbl/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbo/wIC
+        7v8LDLP/VFt3/1piV/8NDg3/BAQE/ygsLP9NVVn/SVBY/1ZdXP9nbl//TlSA/xkbzP8BAfH/AQLq/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgLs/wEC
+        8v8AAOP/Bgaj/yEjc/9RVGD/g4Z3/6Onnv+kqKb/mJ2f/4CHiv9tdHb/YGhs/09XWf82PED/MDU3/ygq
+        K/8eHx//FhcW/w0LCf8aGhj/JSMh/ywpJv8zMC7/NTEt/zYzLv84NS//OTYy/zk2MP83NC//NTEt/zc0
+        L/80MS7/KSck/yMiIP8fHxz/DgwK/w4ODf8cHRz/IiUl/ygtLv85PkH/UFZZ/2hwcv91e37/jJKU/6Ck
+        o/+gpJ7/jZKC/2JmYv8vMnH/CwuW/wAA2P8BAfD/AQLw/wAA7P8dHpb/cHRt/4WLhf9lbHD/RkxT/0hN
+        VP9MUVf/TFFZ/0xSX/9LUF7/SU5c/0hOW/9ITVv/RElX/0NIVv9DSFb/RElS/0VKUf9CR0//PUFI/z1D
+        Sv9ASUz/KS4w/wkLDP8JCwz/Jior/0BFTf8+QlH/Oj9N/zk+Tf85Pk3/Oz9O/ztAT/85Pk7/ODxL/zc7
+        Sf80OUj/NDlI/zU5SP8yN0b/MTZF/zI2Rf8yNkX/MDVF/zE0P/8wNTr/NDlB/05WYf9LU1z/Gx4g/xQW
+        GP8WGRz/Mzk+/zI4QP8pMTn8KzM7jy0yOwosMjsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyOEEAMTlCADI6
+        QxsvN0GxMDdA/z1DS/8wNTr/Fxkb/xUXGf8kKCv/Vl5n/2t2gf96hoP/X2ia/xET3v8CAuz/BQbl/wYG
+        5f8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbl/wYG6v8CAuz/EhSo/1tj
+        df9NVEn/CQoI/wcICP8wNDT/SVJW/0hRV/9YX2D/anFg/1ZcfP8eH8n/AQHy/wEC6v8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID5/8BA+3/AAHz/wAA
+        4P8DBKv/ICF//09SYP97fnT/n6KX/6uwpv+qrqv/mqCh/4mOkf93foH/bnZ5/1thZP9ETE7/QUhK/zpA
+        Qv81Ojv/KCss/yMlJf8iIyP/Ghsa/xYXFv8MDQz/CQgH/wkJCP8NDQ3/FBQU/xcZGP8eHh//ISMk/yot
+        Lf8xNDb/Nzs//zk/Qv9FS03/XmRo/3R7fv+Bh4r/kJaY/6Onpf+prab/oqaa/4aKf/9WWV3/LC5x/woL
+        of8BAdL/AADy/wEC7v8CA+j/AgPm/wEC7/8BAdv/ODp+/4CFdf9+g4T/WF9k/0VLUf9MUVj/TlNZ/0xR
+        W/9KT13/Sk9e/0pPXf9ITVv/RElX/0NIVv9ESVL/RUpQ/0RJUP9ARU3/PUVK/0BHS/8uMjX/Cw0O/wgK
+        C/8jKCn/PUNK/z9DUf88QE//Oz9N/zk+Tf85PUz/OT1M/zg8TP84PUz/OT5N/zk9TP81Okn/NDlI/zU5
+        SP8zOEf/MTZF/zA2Rf8wNUX/MDVB/zE2O/8xOD7/RU5X/1VfaP8rMDX/FBYZ/xQWGf8nLTH/OUBG/y0z
+        O/8sMzvLLzU8LjA2PQAtMzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMztEAEhTXQEvNz9SLjU95jU7
+        RP8/Rk3/IyYr/xQXGv8VFxr/Mzg+/2Ruef9zfYf/fYiI/0dNtf8ICOf/AwTo/wYG5f8GBub/Bgbm/wYG
+        5v8GBub/Bgfm/wYH5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5f8FBez/AQLr/xkcpf9gZ3f/Sk9F/wkK
+        CP8HCAn/LTM0/0tUWP9JUVn/W2Fj/250Z/9aX37/ISLH/wEB8v8BAez/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5v8CA+b/AgPm/wID7P8BAvT/AADe/wME
+        t/8YGY7/NTZo/2Vobf+RlY3/paqa/6+zqP+xtbD/pqur/5yhov+Qlpj/gomL/3h/gv9tdHf/W2Fk/0xS
+        Vf9IT1H/R05Q/0hOUf9FS03/RElK/0NJS/9GS03/R05Q/0dNT/9HTlL/T1ZZ/19lZ/9wdXj/gIaJ/4yT
+        lP+Vm5z/n6Ol/6uwrf+vs6r/p6ud/5GVjP9rbW7/P0Bh/yAhgf8ICav/AADS/wAB8v8BAu//AgPn/wID
+        5v8CA+b/AgPm/wID5/8AAfL/Cwu6/1tfbf+GjID/cnh7/01TWP9HTFP/TVNa/0tPVv9ITVj/SE1b/0hN
+        W/9GS1n/RUpX/0hNVv9JTlT/RUpQ/0BFTP9ARk3/Q0tQ/zA1Nv8PERH/BwkJ/yIlJv8/REr/QUZT/zxB
+        UP88QE7/O0BP/zo/T/86P03/Oj9N/zg9Tf84PUv/OD1L/zg9Tf83PEv/NjtK/zU6Sv80OEf/MTZF/zA1
+        Rf8wNUP/MTY9/zE2PP8+RU7/WmNt/z5ESv8WGBr/ExUX/xoeIf83PUT/NDxF/ysyPPEtNT1wMztBBjA4
+        PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADE2PgAwNj4LLjU+kC82Pvw8Q0z/OkBG/xoc
+        H/8WGBr/Gx4h/0lQWP9td4P/eoWJ/3V/jv8pLMr/AQHt/wUF5v8GBuX/Bgbm/wYG5v8GBub/Bgbm/wYG
+        5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8GBuT/BQbt/wEB5/8bHJz/aXB4/0lQRf8ICQj/CAkK/zA1
+        Nv9KUlf/SVFY/1xiZP9vdmr/Z2x9/y0wvP8DBOv/AADu/wID6P8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5v8CA+b/AgPs/wEC8v8AAOX/AQHV/wwN
+        sf8cHXv/Nzll/2Fkcv+Mj4z/oqaU/6uvoP+3uq//ur24/7S4t/+wtbX/r7Kz/6itr/+ip6j/m6Gj/5id
+        n/+Vm53/k5eZ/5CWmP+Sl5n/mJ2e/5+jpf+kqar/qa6u/62ysf+xtbT/trq2/7i8sv+vs6X/oaaU/5CT
+        i/9xc3v/RUdl/x4fbf8PD57/AgLO/wAA3/8BAfD/AgPu/wID5/8CA+b/AgPn/wID5/8CA+f/AgPn/wID
+        5v8BAun/AADp/yAhkP9yd23/hIqE/2Fmav9ES1H/S1FY/01SWf9JT1b/RkxZ/0ZLWf9GS1X/SE1U/0lN
+        VP9FSVH/QEVM/z1ETP9ASE3/NDk7/xIUFP8HCQn/Gx0e/z1BR/9BRVP/PkNR/z5DUf87QU7/O0BO/ztA
+        Tv86P07/Oj9N/zk+TP84PUv/NzxL/zc8S/84PEv/NzxL/zY7Sf80OUf/MjZG/y81RP8vND7/MTU6/zY9
+        RP9SWmT/TVVe/x4hJP8TFRf/Fhga/zA1Ov86QUn/LDM9/iw0PqwvNT0bLzU9AAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxOEEALzY/MDA3P80xOEH/QEhP/y4yN/8XGRv/FRYZ/yQn
+        LP9ZYWv/c32J/3+Lif9lbp7/FhjZ/wEB6/8FBeX/Bgbl/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG
+        5v8GBub/Bgbm/wYG5v8GB+b/Bgfl/wYF7P8BAeL/IiSZ/251ef9CRz3/BQYF/wcICf8uMzX/SlJW/0lR
+        V/9aYGL/c3ht/3J3c/89P6r/Dg7i/wAB7/8BAun/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID5/8CA+r/AQLv/wAB7f8AAOf/AQHh/wUF
+        sf8PD4X/Jyly/0JEc/9iZH3/e32E/5CSgv+bnoz/pqiZ/7K1p/+7v7H/vcG0/7/Dt//AxLj/w8a8/8PG
+        vf+/w7j/vsG2/7u+sv+2uav/qa2e/5ygkP+TlYP/gYOC/2xuhP9OUHb/LS9v/w4Pd/8HB6L/AgLT/wAA
+        6P8AAOv/AQLv/wID6/8CA+f/AgPm/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AQLu/wQF
+        3P88P3n/gYZ2/3uAgP9VXF//RkxT/05UXP9NU1r/SU5Y/0ZLVv9HTFL/SE1U/0VJT/8/REv/PkZL/0BI
+        S/8uNDX/DxER/wcJB/8bHR7/PkJH/0JHVP89QlH/PUFQ/z1CUP88QU//PUJQ/zxBT/87QE7/OT5N/zc9
+        TP83PEr/NzxK/zc8Sv83PEv/NzxK/zU6Sf81Okr/MzhI/zE1Qv8xNTz/Mjg+/0hQWf9WX2n/KzA0/xIT
+        Fv8UFhj/Jikt/z9GTv8vNj7/LDI74y00PUgXHycAOztJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAwN0AALzZCAjE4QGIwNz7rNj5G/0RKUv8lKCv/FRca/xYYGv81OkD/Zm56/3iC
+        iv9/ioj/T1Wp/wsM5v8CAun/Bgbl/wYG5f8GBub/Bgbm/wYG5v8GBub/Bgbm/wYG5v8GBub/Bgbm/wYH
+        5v8GB+b/Bwfm/wcH5v8FBev/AQHe/yEil/9gZ3H/REc//wYHBv8HCAj/LTIy/0lRVP9HT1X/VVth/3J3
+        b/98gHT/Vlqb/xkb1/8AAPD/AQHq/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+b/AgPm/wID6P8CA+r/AQLt/wEC7f8AAe3/AADu/wAA
+        0P8AAK7/AgKS/xUVg/8kJY3/MDGE/0JDev9SVIL/VliI/1pciv9bX4b/X2GD/2Bjhf9cX4X/WVyJ/1RW
+        hf9JS33/Nzl6/ycoiP8aG4b/BgaI/wAApf8AAMD/AADn/wAA7/8BAe3/AQLt/wID6/8CA+j/AgPn/wID
+        5v8CA+b/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+b/AgPn/wAA7/8OD7b/WFxp/4WL
+        gv9udHb/SE9U/0dMU/9OUln/S1BW/0lPVf9ITVP/RElQ/0BGTv8+Rkz/QElL/zA0Nf8NEBD/BQgH/xwf
+        Hv8+Qkj/RktW/0BFU/8+Q1D/PEBO/zs/Tf88QU//PkNR/z1CUP88Qk//O0BO/zk9TP83O0r/NztK/zY7
+        Sv82O0r/NTlI/zQ5SP80OUn/NDlF/zI3Pf8yOD3/QUhR/1hgav88QUj/FRcZ/xMVF/8bHiH/O0FH/zg/
+        R/8tMzz0LDI6gCwyOgcsMjoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAA/RkcAMThAADI5QRUxOECfLjU+/D9GTv89QUf/Gx4g/xYXGv8aGx//S1FZ/212g/98hor/gIqN/z1C
+        uv8DA+j/AwPo/wYG5f8GBuX/Bgbl/wYG5f8GBub/Bgbm/wYG5v8GB+b/Bgfm/wYH5v8GB+b/Bwfm/wcH
+        5v8HB+b/BQXs/wEA4v8fIaL/aG59/01SR/8JCwj/BQcG/ycrK/9JUFT/SFFX/1FXXf9wdXD/gIV3/2lt
+        jv8xM8T/CAjp/wAA7P8BAuj/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+b/AgPm/wID5/8CA+n/AQLr/wEC7v8BAvD/AAHx/wAA
+        9P8AAPH/AADb/wAAxP8AAL//AAC+/wAAvP8AALb/AACv/wAAsP8AALX/AAC7/wAAv/8AAMH/AADO/wAA
+        6f8AAPT/AAHy/wEC8P8BAu7/AQLr/wID6v8CA+j/AgPn/wID5v8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID6/8AAej/IiSV/3N4av+BhoT/XWVn/0FH
+        TP9HS1P/S1BX/0pQVf9ESVD/P0RM/z9GTP9CSEz/Ki8w/wsODf8GCQn/HiIh/0FFSv9FSlb/QERS/z5D
+        Uf8+Q1H/PUJQ/ztATv88QU//PEFP/zxBT/88QU//O0BO/zo/Tf85Pkz/NzxK/zU6SP80OUf/NDhH/zQ5
+        SP80OEf/NDk//zI4PP87Qkr/Vl9q/0xUXf8cHyL/ExUX/xYYGv8wNDn/PEJL/y41Pf8uNT26LzQ8JCwy
+        PAAyNz0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMzpCADM6
+        QgAzOkIzMThByjE5Qf9ESlL/Mzc8/xcZHP8UFhn/IiUo/1RaY/9yfIn/gYyK/3qEkP8wNMj/AgLs/wME
+        5/8GBuX/Bgbl/wYG5f8GBuX/Bgbm/wYH5v8GB+b/Bgfm/wYH5v8HB+b/Bwfm/wcH5v8HB+b/Bwjl/wYG
+        7f8CAuj/HB6s/2lugv9SWEv/DA4L/wQEBP8jJif/RkxO/0tUWf9NVFv/aG5u/4SJef9/g4T/UlWp/xUW
+        3v8BAe7/AAHq/wEC5v8CA+b/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID5v8CA+f/AgPo/wID6P8CA+n/AgPs/wID
+        8P8BAvH/AQLx/wED8f8BA/L/AQPz/wED8/8BA/L/AQPx/wED8f8CA/D/AgPu/wID6v8CA+j/AgPo/wID
+        5/8CA+b/AgPm/wID5v8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID5v8BAfH/AgPZ/zk8g/99g3r/eH5+/1JYXP9DSE//SExT/0ZL
+        Uf9BR0//QklP/z9GR/8mKiv/CQoJ/wcJCP8lKCj/QkhM/0ZLV/9ARFP/P0RS/z9EUv8/Q1H/P0RS/0BF
+        U/8/RFL/PkNR/z1BT/87P07/Oz9O/zs/Tv87P07/OD1L/zU7SP80OEf/NDhH/zQ5SP81OUL/Mzg9/zpA
+        SP9VXWj/WGBr/ycrL/8TFhf/ExUX/ycrLv89Q0v/MDY//y00PNwtNT1IKjM7AC42PgAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADY9RQA4P0YCNj1FWzM5
+        Q+c6QUr/SVFZ/yYqLv8VFxr/FBcZ/ysvNP9iaXT/dH2J/4WQjP9tdpv/HyHT/wEB6/8FBeb/Bgbl/wYG
+        5f8GBuX/Bgbl/wYH5v8GB+b/Bgfm/wcH5v8HB+b/Bwfm/wcH5v8HB+b/Bwjl/wcI5f8GB+z/AgPq/xwd
+        sP9ZXn7/S1BC/xocFv8EBAT/Gx0d/0JISv9MVVn/SlBX/15kaf9+g3v/i5CB/25xmP8uL8j/CAnm/wAA
+        7f8BAuj/AgPm/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+X/AgPl/wID
+        5f8CA+X/AgPl/wID5f8CA+X/AgPl/wID5f8CA+X/AgPl/wID5v8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+b/AgPm/wEB5/8AAO7/AwPw/ysuq/9zd3r/hIiH/2xxdf9HS1P/RElQ/0JJUP9FTFD/QEdJ/yEl
+        Jf8GCQj/CAoK/ygrK/9ER07/RUpW/0BFVP9ARFL/QEVS/0BFU/9ARVL/QEVT/0FGVP9BRlT/QEVS/z1B
+        UP86Pk3/Oj5N/zo+Tf87QE7/OT5M/zg8S/82Okr/NDhH/zQ5Q/80OT//Nz1E/09XYP9fZ3D/NDc9/xQX
+        GP8VFxj/HiEl/z5ETP83PkX/LTI79CwzO3ouMzoJLjM6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1PEcANz5JDzQ7RZAzOkP7P0ZQ/0JI
+        Tv8gISX/Fhka/xgaG/86PkT/Z296/3mCi/+DjYv/YGai/xIT3/8BAez/Bgbl/wYG5f8GBuX/Bgfl/wYH
+        5f8GB+b/Bgfm/wYH5v8HB+b/Bwfm/wcH5v8HCOb/Bwjl/wcI5f8HCOX/Bgfs/wME6/8OD7v/SEyE/2Fn
+        Wv8oKyL/AwMC/xASEv85P0D/TlRZ/0pSWP9VW2P/dXt5/5CUhP+Hioz/Wl2s/yUm1v8DBOr/AADt/wEC
+        6P8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+b/AgPm/wID5v8CA+b/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5v8BAuf/AADr/wEB
+        7v8UFd3/RUi2/3h9jv+DiIT/dXh6/1xgZv9GS1T/RUxU/0ZMUP84PD3/GRsb/wQHB/8OEBD/LTIz/0hM
+        VP9ITFr/Q0hW/0JIVf9ARVP/P0RR/z9EUv8+Q1H/PUJQ/z5DUf8+Q1D/PUFP/ztATv88QE//O0BO/zo+
+        Tf85Pkz/OT1M/zo9TP84PEv/NTpF/zM4Pf80OUD/SFBY/15ncf8+Q0n/GBoc/xUXGf8bHSH/PUNK/0BI
+        UP8vNj7+LzQ9rC41PRowND4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1PEUANT9FADY+RiE0O0SyNTtF/URKU/89Q0n/HSAi/xYZ
+        Gv8aHB7/REhP/2tzfv94gYf/hI+M/1BWsP8LDOH/AgLq/wYG5f8GBuX/Bgfl/wYH5f8GB+X/Bgfm/wYH
+        5v8HB+b/Bwfm/wcH5v8HCOb/Bwjm/wcI5f8HCOX/Bwjl/wcI6v8DA+3/BwjQ/zs+kf9pbWz/Oz8x/wYH
+        Bf8KCwv/LTAx/0pSU/9PVlz/T1de/2ducv+FiYT/mp6N/4iMmf9OULn/GRrc/wEB7P8AAOr/AQLo/wIC
+        5v8CA+b/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+b/AQLn/wAA6v8CAu3/EhLg/z1Aw/9vc5z/j5SF/4WL
+        g/9qb3H/TVNa/z9GTv9FTFL/RkxO/zA0Nf8OERD/BAUF/xUYF/87PkH/TFBZ/0lOW/9ITVv/R0xZ/0NI
+        Vv9ARFP/P0RR/z5CUf88QE7/PEFP/z9DUv8/Q1D/PEBO/ztATv88QU//O0BO/zo+TP84PUv/OD1L/zk8
+        S/85PUn/Nz1D/zY7Qf9AR0//XGVu/0lPV/8dHyL/FRga/xkbHP80OT7/QkpS/zE4Qf8wN0DLMjlBOD1A
+        UAAwNz8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAOD9HAC82QQA1PEU9NDtEzTg+R/9JUFj/NztB/xkbHv8XGBv/HSAj/0xT
+        Wf9ud4L/foeM/4OMjf9JTbP/CQnk/wIC6f8GBuX/Bgbl/wYH5f8GB+X/Bgfl/wcH5f8HB+X/Bwfl/wcH
+        5v8HB+b/Bwjm/wcI5v8HCOX/Bwjl/wcI5f8HCOf/BQXt/wMC2v8mKJ7/YWVw/0dMPv8QEgz/AgQD/xse
+        Hv9AREX/T1Zb/0tUW/9YYGf/dHl8/5KWjv+eopL/gISl/01Rwf8YGdz/AAHq/wAA6v8BAej/AQLm/wID
+        5v8CA+b/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID
+        5v8CA+b/AQLm/wEB5/8AAen/AADs/xIT4/9AQcb/cnSm/5KXjv+RlYj/eH18/1xhZ/9HTlb/QElP/0VM
+        UP8+Q0X/ISMk/wYHB/8GCAf/IyYn/0ZKTv9OU13/R0xZ/0VKWP9GS1j/RktZ/0VKV/9CRlT/QERS/z1B
+        T/87QE3/P0RR/0FGVP9ARFL/PkJQ/z1BT/87QE7/Oj9N/zo+TP85Pkz/OD1M/zg8Sv83PEP/OD1C/0JI
+        Uf9aY2z/Ulli/yAiJv8UFhj/Fxkb/y0yNf9FS1P/Nj5G/zA4QOExOEFZMT1EAzE6QgAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAADc7QgA3O0IFNz1FXzM6Q+Y5P0n/SlFa/zE0Of8ZGx7/Fxod/yUoLP9aYmv/d4CL/4OL
+        j/+FjpD/Rky1/wYG5P8CAuf/Bgbl/wYH5f8GB+X/Bwfl/wcH5f8HB+X/Bwfl/wcH5f8HCOX/Bwjl/wcI
+        5v8HCOX/Bwjl/wgI5f8ICOX/Bwjm/wYG7v8CAuH/Fhe1/01Rff9ZXVH/ISQa/wIDAv8MDAz/LzIz/1JZ
+        XP9PWF3/T1hf/2Blbf+AhIX/naOV/6SnnP+HjKf/Vlm5/xcY3P8GBun/AQHq/wAA6f8BAuf/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID5/8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wEC5/8AAOn/AADq/wMD
+        6f8SE+P/Q0XH/3p9qf+Ym5j/m56P/4WIhf9jZ2z/TVNb/0VMVP9ETVL/SlFT/zQ3OP8RExT/AQEC/w4O
+        D/8wMjP/TFFV/1NZYf9LUFr/R0xZ/0ZLWf9FSlf/RUpY/0ZLWf9FSln/QkZU/z5CUP8/Q1H/QEVS/z5D
+        UP89QU//PUFQ/z1CUP88QE7/OT1M/zk9S/86PU3/Oj9M/zo/R/86P0X/REpT/2Bncv9fZ3H/Ki4z/xQW
+        GP8UFxn/IyUp/0VMU/84QEj/MDc/9TI6QnwyN0ALMjdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAA1PEUANz5HCTY9Rn4zOkPzO0JK/0pQV/8oKy7/GBod/xgaHP8pLTD/ZGt0/3yFkv+IkpP/iJOT/0NI
+        uP8ICOT/AgPn/wYH5f8GB+X/Bwfl/wcH5f8HB+X/Bwfl/wcI5f8HCOX/Bwjl/wcI5f8HCOX/Bwjl/wgI
+        5f8ICOX/CAjl/wgI5f8HB+r/AgLr/wgI0P8yNJb/YWVx/0JFOP8REg7/AwQF/x0fIP9ESEn/U1te/09Y
+        Xv9QV2H/Zmxz/4qNjP+jp5j/qq2g/5aZqv9nacH/LjDZ/xUW4f8EBOb/AADq/wAB6P8BAub/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+f/AgPn/wID
+        5/8CA+f/AgPn/wID5/8CA+f/AgPm/wID5v8CA+f/AgPn/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPm/wIC5v8BAej/AADq/wEB6v8NDeX/JSXb/1RWwf+Hiqn/oKSf/6Gk
+        lP+Mj4r/a29z/09TXP9ESlP/RUxT/0xRVf9CRkj/ICMk/wgJCv8JCgj/Nzk3/5OZn/+JkZr/SU5W/0lO
+        Vf9MUVj/R0xW/0ZLWP9GS1n/RUpW/0RJV/9ESVj/Q0hW/0BFU/8/RFH/PUFP/zxATv87P03/Oz9N/zxB
+        T/88QE//Oz9N/zg+Tf84PUv/OT5G/zo/Rv9ES1P/YGhy/2Nrdf8uMjf/Fhgb/xYYGv8fIST/QkdO/zxD
+        S/8vNj75MTc/mzM5QRUyN0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANj1FADc+
+        RhM1O0SWMzpC+EFJUf9ES1H/JScq/xgZHP8YGhz/Njk8/2dud/99h5L/jJaX/4uUnf9GS8f/Bwjp/wID
+        5/8GB+X/Bwfl/wcH5f8HB+X/Bwfl/wcI5f8HCOX/Bwjl/wcI5f8HCOX/Bwjl/wcI5f8ICOX/CAjl/wgI
+        5f8ICOX/CAno/wQF7P8EBOP/Gx20/1VXg/9SVUz/Jicd/wcIBv8LDAz/Kiwt/05SVP9TW2D/UVli/1FZ
+        Y/9mbHT/iY2M/6ernf+ztqr/rK+u/4aKtf9TVMn/Li/d/xAR4/8AAOr/AADq/wAB6P8BAeb/AQLm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AQLm/wEC
+        5v8AAef/AAHq/wAA7P8ICeT/Jifc/0JDzf9sb7r/nZ+u/62wpf+jppn/jI+L/21xdv9RVV3/QkpS/0VN
+        VP9NVVj/RUpM/ysuLv8PERH/BAUE/xQVC/8wMjL/kJaj/+Dr8v+7xdP/aG55/0NHTf9LUFb/SU5W/0ZL
+        V/9GSlj/RktX/0VKVv9FSlj/RElW/0JHVP9ARVP/P0JQ/z5CUP8/QlH/P0NR/z5CUP88QE//O0BO/ztB
+        Tf87QEf/O0BH/0NKUv9bY23/YWhx/zE1Ov8VGBr/FRga/x4gI/8+Q0n/Q0lS/zI3Qf0wNz+yMTdAJy83
+        QQAyN0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADU7RAA1O0QjMzlCrjM6
+        Qv1ES1P/RktS/yQmKv8XGhv/Fxkb/zM3Ov9kbHX/f4mV/5Kdnf+Nl6P/RkzH/wYG5P8DAuf/Bwfk/wcH
+        5f8HB+X/Bwfl/wcH5f8HCOX/Bwjl/wcI5f8HCOX/Bwjl/wcI5f8ICOX/CAjl/wgI5f8ICeX/CAnl/wgJ
+        5f8HCOv/AgPs/wwNzf8zNJv/TVBi/zk8LP8YGhD/BgcF/xESEv8yNTb/S1FS/1hgZP9RWmH/TVVe/2du
+        dP+Fiov/oKOc/7m7rv/Bw7T/qKq6/3t+xv9WV9P/NzjW/w8Q4P8EBer/AQLp/wAA6f8AAOj/AAHn/wEB
+        5/8BAub/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID5v8CA+b/AgPm/wID
+        5v8CA+b/AgPm/wID5v8CA+b/AgPm/wIC5/8BAuf/AAHn/wAA5/8AAOj/AQHq/wMD6v8MDOb/JSbb/0lL
+        0v9rbsL/mJy1/7W4q/+1uKr/o6Wc/4iLiv9rb3X/UVZf/0RKUv9GTlX/U1te/0xSU/83Ozz/GBgZ/wYH
+        Bf8UFg3/Kiwd/zEyR/8gIpX/PD+j/7fAw//P2uT/nqi0/05UWv9ESU//Sk9W/0dLVf9GSlj/RktY/0ZL
+        WP9GS1j/RElX/0NIVf9CR1T/QUVT/z9DUf8/Q1L/QERS/z9EUv89QVD/PUFO/z5DSv8/Q0n/RExU/11l
+        b/9ianP/Njo//xYXGv8WFxr/Gxwg/ztARf9GTVX/NTxF/zI3QcgyOEE5Ewg/ADY+QgAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAExSRAAhJz8ANTtDMjI4QL40OkL9SE9Z/0JG
+        TP8eHyL/Fxkc/xcaG/8xNTn/Zm13/4OMmP+SnJv/k52j/0xQv/8JCuP/AgLo/wYG5P8HB+X/Bwfl/wcH
+        5f8HCOX/Bwjl/wcI5f8HCOX/Bwjl/wcI5f8ICOX/CAjl/wgI5f8ICOX/CAnl/wgJ5f8ICeX/CAnn/wUF
+        7v8EBOb/ERK+/zQ1h/9QU1b/RUc4/xITCv8FBQT/FxcY/zQ3N/9MUlP/W2Nm/1FaYP9LVFz/XGNs/3Z7
+        gP+SlZX/sbSs/8fKuP/LzLn/tba9/5CTx/9zddD/S03X/ywt2v8YGOT/Cgrn/wUF5/8BAej/AADn/wAA
+        6P8AAOj/AAHo/wAB5/8AAef/AAHn/wAB5/8BAuf/AQLn/wEC5/8BAuf/AAHn/wAB5/8AAef/AAHo/wAB
+        6P8AAOj/AADn/wAA6P8EBOn/CAjp/w4O5v8hItz/REXX/2dpzP+Hisj/oqS//72/s//BxbD/sras/5ec
+        mP97f4L/YWRs/0xRWv9GTlX/R09V/1FZW/9MUlL/ODo8/x8gIP8ICgf/BgcB/x8hE/8+P0P/LzGC/xIS
+        v/8DA+z/BQXQ/2JmoP/Dzcj/vsjU/3yEkP9CSE7/RkpS/0pPVf9HS1b/RElW/0JHVP9DSFX/QkZU/0JG
+        VP9BRlT/QEVU/z9DT/88Qk7/P0JP/z5CUf89Qk//PUJK/z1DSP9HTVb/YWp0/2lxe/8+QUf/GBoc/xYX
+        Gf8cHSD/OT1D/0VNVf81PEX/MjlB1TM7Q0c2OUEBNTlBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2PUQAO0RIATU8REMzOUHKNjxF/khPVv88QUf/HiAk/xkb
+        Hv8ZGx3/Mzc8/2huef+AipX/lZ6g/5ihpP9UWcP/Cwvj/wEB5/8GBuT/Bwfl/wcH5f8HCOX/Bwjl/wcI
+        5f8HCOX/Bwjl/wcI5f8HCOX/CAjl/wgI5f8ICOX/CAnl/wgJ5f8ICeX/CAnl/wgJ5f8ICen/BQXv/wYG
+        3f8hI7j/Rkl//0VHRP8aHBD/DA0E/wcIBv8WFxf/MzQ2/1dbXP9eZWj/T1hc/09XX/9YX2j/Z251/3uA
+        hf+VmJv/sbSv/8nMvf/O0b7/wsTF/7S2y/+jps//jI3N/2ps1P9ISdj/OTrZ/yor4v8WF+T/Dg/l/wwN
+        5v8LDOb/Cgvm/wcI5v8DBOb/AQHm/wIC5v8CA+b/Bgfn/woK5v8MDeb/DQ7l/xIT5P8gIeT/MDHc/0FC
+        1v9iY9f/f4HP/5WXy/+prMn/u73D/8jJuP/Gybb/t7qx/5uenf+AhIj/aW51/1lgZ/9MU1z/SVFY/0lR
+        Vv9WXV//S09Q/zM2Nv8cHh//CQkI/wgJAf8OEAX/DxEY/xocWf8bHLf/Bwfh/wQE7/8HB+n/AwPs/xka
+        uf+KkKb/xc/R/6qzwP9gZ2//P0RK/0lNVP9JTVX/REhV/0BFU/9ARVL/P0VR/z9DUf8/Q1H/P0NS/z5D
+        UP89QlD/PUJQ/z5CUP8+Qkv/PEJJ/0dPVv9gaXP/aXF8/0FGTf8bHSD/Fhga/xsdH/84PEH/Rk5W/zU7
+        Q/8wNT3eMzlBWjdDRgM0PEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAANz5GADdARwM2PEVNNDpD0zg/R/9OVV3/QkZN/x4gI/8ZGx3/GBod/zM2
+        O/9lbXf/gImV/5agov+gqaz/WF7C/wwN4f8AAOj/BQbl/wcI5P8HCOX/Bwjl/wcI5f8HCOX/Bwjl/wcI
+        5f8ICOX/CAjl/wgI5f8ICOX/CAnl/wgJ5f8ICeX/CAnl/wgJ5f8JCeX/CQnk/wgI6/8DA+r/CQra/xka
+        q/8sLWX/NTc7/ywuHv8bHBH/CgsJ/xYXFv8nKSj/SEtM/2FmaP9WXWH/UVpg/1RbZP9XXmf/XGRt/291
+        ff+Pkpf/q66s/8HDu//Lz7//09XD/9DSyv/LzdH/ycvS/8TG1P+3utP/qazO/56h1P+Xmdz/kJLc/4CC
+        2/9tbtr/YmPX/2Vl2f9qa9r/e33a/4yO2/+WmtT/oqXO/6+xzf+8v9P/w8bR/8fJzv/Nz8r/0NPD/8vO
+        vP/BxLn/rK+r/5GUlv94fYP/Y2hw/1VdZf9NVF3/SlNa/09XXP9RWFz/WF1g/0dKTP8pLCz/FhgW/wsN
+        CP8ICgD/DhAD/xITG/8REk3/DA2h/wYI3P8DBO3/Bwjr/wgI5f8ICOT/Bwfo/wEB4P82OKD/q7Ox/7/J
+        0f+QmKP/SU1U/0BESf9ITFL/RkpR/0FGU/9ARVL/QERR/z5CT/89QU//PkFP/z5CUP8+QlD/PUJO/z9C
+        S/8/REv/SU9Y/2Vtd/9nb3j/Oz9E/xocH/8WGBr/GBod/zU4Pf9HTFT/NTtE/y81PeYxNz9oMzVBCTI2
+        QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAADg/SAA5QEkEOT9HUTU7RNg6QUr/U1pi/0BFS/8eICP/GRse/xkbHf8wNTn/Y2pz/4iQ
+        m/+cpan/pK6s/2hvwv8bHd3/AgLo/wQF5f8HCOT/Bwjk/wcI5f8HCOX/Bwjl/wgI5f8ICOX/CAjl/wgI
+        5f8ICOX/CAjl/wgJ5f8ICeX/CAnl/wgJ5f8JCeX/CQnl/wkJ5f8JCeb/Bwfr/wQE7P8ICeT/ExSv/0NE
+        h/9VWGL/LjAh/w8QBf8LDQj/EBEP/x0eHv8+Pz//V1tc/1lfYv9TWl3/WGBk/1VdZf9QWGH/VFxl/1xj
+        bP9xd37/h4uS/56ho/+vsrD/ury3/8LEvP/JzMH/z9LE/9TWyv/X2M7/2NvQ/9nc0v/a3NP/3N7W/9vd
+        1f/a29T/2dvS/9fazv/T1sr/z9HE/8rMwP/FyL7/vb+5/7Gzsf+go6P/j5SX/3p/hf9ma3P/VFpj/01V
+        Xf9JUVn/TFRb/1NbX/9RWFr/U1lb/1JWV/8/QUL/HR0d/w0ODf8KDAf/Cw0B/xASBv8TFCT/ExRY/w0O
+        pv8ICeX/Bwjw/wgJ7f8ICeb/CAjk/wgI5f8ICOX/CAjk/wQF6/8HCNL/XWGW/7rCv/+zvMf/cniD/zxB
+        R/9CRkz/R0pQ/0JHUf9CRlX/Q0dV/z9EUP89Qk//PEBP/zxATv89QUz/P0NJ/0BES/9JUVn/aHF7/2hv
+        ef83OkD/GRse/xcYG/8bHSD/NDg8/0tSWv83PEX/LzU96DI4QG0wNz4MMDc+AAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAA4PkYAOkBIAzg9RVY3PkbYPENL/1JYYf9DSE3/ICIl/xsdIP8bHCD/MTM4/2tyev+MlKD/nKas/6iz
+        r/99hbv/LTDY/wIC6P8DBOX/Bwjk/wcI5P8HCOX/Bwjl/wcI5f8ICOX/CAjl/wgI5f8ICOX/CAjl/wgI
+        5f8ICOX/CAnl/wgJ5f8JCeX/CQnl/wkJ5f8JCeX/CQnl/wkJ5/8HCOr/BQbv/wUH5f8XGLb/KiuG/xob
+        RP8ZGhX/Kisd/x4fF/8XGBX/Gxsa/zEyMf9NTk7/V1hZ/1hcXf9cYmT/XGRn/1tkaf9NWF3/SVJa/0xU
+        Xf9OVl7/Vl1m/2VrdP9zeID/fIGI/4WJjv+KjpL/j5KX/5SYm/+YnJ3/naCh/5qdnv+ZnZ7/l5qd/5CU
+        mP+JjZL/gIWM/3h9hf9xdoD/Y2lz/1RbZf9PVmD/TVRd/0hRWP9KU1r/V19k/19mav9ZYGP/UFZW/0xP
+        UP9HSEj/MTEx/xETEf8ODwz/DhAI/xAQBP8SFA3/ExQ6/xESc/8NDbD/CQnl/wcI8v8ICez/CAnm/wgJ
+        5P8ICeT/CAjl/wgI5f8ICOX/CAjk/wcI5v8CAuj/FRa2/4mQn/+7xMf/oam1/1ZdZP88QEX/RUpP/0VK
+        Uf9CR1T/Q0dV/0FGU/8/RFL/P0NR/z9DTf8+Qkr/P0VL/0pRWf9kbHX/aXB6/zc6Pv8aGx7/GBoc/x0f
+        Iv85PkP/TFNc/zpASP8xNj7nMjhAcjI7QA0yOkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOD1FADg8
+        RAU4P0dXNTtD2DpBSf9SWWP/RkxS/yQmKf8bHSD/Gx0f/y8yNv9nb3j/h5Cc/5mhqP+ps7H/kZu5/0BE
+        z/8FBeP/AgPn/wYH5P8HCOT/Bwjk/wgI5P8ICOX/CAjl/wgI5f8ICOX/CAnl/wgJ5f8ICeX/CAnl/wgJ
+        5f8JCeX/CQnl/wkJ5f8JCeX/CQnl/wkJ5f8JCuT/CQrm/wYH6f8FBu//Bgfp/wkKyP8TFKD/KCpz/yMj
+        Mf8dHxP/Hh8U/yMkGf8nJyL/KSkm/z07PP9WVlb/VVZX/1hbXf9fZGX/YGVl/15jZf9haWz/Vl5i/0hQ
+        Vv9CS1H/QkxS/0NLU/9DTFP/RE5V/0ZPWP9HUFj/R09Y/0dOWP9HT1j/R09X/0ZPV/9GUFj/R1BX/0VN
+        Vf9ETFP/SFFW/1NbYP9gaGv/Y2hs/11iZP9XXF3/UVVW/01PUP9KS03/NDQ0/xobGP8VFhH/FBUM/xMU
+        Cf8VFwv/Fhcn/xITWv8QEJT/DAzK/wgI7f8ICPP/CAnr/wgJ5v8ICeT/CAnk/wgJ5f8ICeX/CAjl/wgI
+        5f8ICOX/CAjk/wgI5P8GBun/AQLg/zk9oP+kraf/tLzD/4KJlP9CRk3/PUFH/0NITv9BRk7/QEVS/0FG
+        Vf9CR1T/QkZP/0FGTP9DSVD/Ulli/2hveP9ka3T/MjY6/xgaHP8aGx7/HiAj/z5DSP9MUlr/OD5G/zA2
+        PugyOUBxNDpDDTQ6QgAyOEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg9RQA4PUUENjxEUTU7
+        Q9M9Q0z+U1pj/05UWf8oKy7/HB4h/xweIf8nKi3/WF9m/4WNmf+Zo63/qrSx/5+os/9VWsv/EhPi/wIC
+        5/8GB+X/Bwjk/wgI5P8ICOT/CAjk/wgI5f8ICeX/CAnl/wgJ5f8ICeX/CAnl/wgJ5f8ICeX/CAnl/wgJ
+        5f8JCeX/CQnl/wkJ5f8JCuX/CQrl/wkK5P8JCuX/CAno/wgJ8f8GB/X/Bgfc/wsMu/8SE4//GBhd/x8g
+        Mf8nJyX/MDAn/zc2KP87PDH/QEA5/0pJRv9eXl3/aGdn/2VmZv9lZmj/a2xt/25wcf9vdHT/am9w/2Zr
+        bf9ma23/Z25w/2Zucf9pcHP/bHN2/2txdf9ob3L/aG9x/2ducf9obXD/aGxu/2drbP9maWr/Zmlr/2Bj
+        Y/9XWVn/VVVW/1NUVP9JSUn/NzYy/ygnIP8lJRn/IiMT/x8fFv8cHhv/GRoo/xQVV/8QEY7/DQ3C/woK
+        3f8ICPP/CAjx/wkJ6f8JCeX/CAnk/wgJ5f8ICeX/CAnl/wgJ5f8ICOX/CAjl/wgI5f8ICOX/CAjl/wgI
+        5P8ICOX/AwPs/wgIy/9hZZn/sLi1/6Ortv9la3P/ODxC/0NHTf9ESU//P0NO/0BFUf9CRk//Q0hN/0ZM
+        Vf9aYWv/bnV//1pgaP8pLTD/GBoc/xcZHP8eISP/P0NJ/01VXv85P0j/Mjc/5DQ6Qms0OUINMzlCAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5P0cANjxGAjtBSE05P0fJPUNN/VNa
+        Yv9QVlz/Ky8y/xsdH/8aGx//ISQn/09TWv+AiJP/lJ6p/6avr/+psbb/c3nC/yIk3f8CAub/AwTl/wcI
+        5P8ICOT/CAjk/wgI5P8ICeT/CAnl/wgJ5f8ICeX/CAnl/wgJ5f8ICeX/CAnl/wkJ5f8JCeX/CQnl/wkJ
+        5f8JCeX/CQrl/wkK5f8JCuX/CQrk/wkJ4/8JCeX/CQjs/wgJ8/8HCOz/Cgre/wwMyP8QEJ//GBly/yQl
+        SP8wMUD/Pj5C/0pJQf9SUj//W1tM/2ZlWf9tbWT/eHlz/4ODgf+Kion/i4qK/4mJif+JiYn/iImJ/4OF
+        hf+Dg4P/fn5//3t7fP98fX7/fX5//31+f/98e3z/eXl5/3d2dv9ycXH/bGtp/2BfWv9SUkn/SUg9/0FB
+        Mv85Oif/NDMp/ywtL/8mJjP/Hh9D/xYWa/8QEJz/CwzF/woL3f8ICez/CAjz/wkI7P8JCeX/CQnj/wkJ
+        4/8JCeT/CAnl/wgJ5f8ICeX/CAnl/wgJ5f8ICOX/CAjl/wgI5f8ICOX/CAjl/wgI5P8ICOT/Bwjn/wEA
+        6f8bHLL/g4qW/7O8vP+Wnqr/U1hg/z1CR/9FSVD/QERK/z9DSv9BRkz/S1FZ/2Nrdf9udX//Ulde/yMl
+        KP8WGBr/GBoc/yEiJv9AQ0r/S1FZ/zk/R/8zOUHcNTtDZDU8RAo1PEQAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPkRMAD5FTAQ9QkxDOkBJvz1ETfxQV2H/U1lg/zAz
+        N/8dHyL/Gx0g/x4gIv9CRkr/eYKL/5Kbp/+krbL/s7y7/5OaxP9BRdL/Cwzi/wEB5/8GBuX/CAjk/wgI
+        5P8ICeT/CAnk/wgJ5P8ICeX/CAnl/wgJ5f8ICeX/CAnl/wkJ5f8JCeX/CQnl/wkJ5f8JCeX/CQrl/wkK
+        5f8JCuX/CQnl/wkJ5f8JCeT/CQnk/wkK5P8JCuf/CQns/wkJ7/8ICOz/CAjn/wkK2v8MDbr/EhOd/xoa
+        ef8oKWP/Nzhc/0tMXf9aWmf/ZGVg/3BwXf96emX/hYRy/42NfP+SkoP/lpWH/5iYif+bmoz/mpmK/5eX
+        iP+UlIb/kJCC/4qKe/+CgnP/enpp/3BwXP9lZFD/WltG/09PRv9HR1H/PDxO/y0tUf8jI1v/GRly/xIS
+        mf8NDrr/Cgvb/wkK5v8JCO3/CAnv/wgJ7P8JCuf/CQnj/wkJ4/8JCeT/CQnk/wgJ5f8JCeX/CAnl/wgJ
+        5f8ICeX/CAnl/wgJ5f8ICOX/CAjl/wgI5f8ICOX/CAjl/wgI5P8ICOT/Bwjk/wUG6P8BAdz/Oj6V/6Os
+        pv+3wcn/hI2Y/0JGTP89P0T/P0NJ/0FHTf9QV1//bXR+/3R8hv9HTFL/HyIk/xgZG/8YGhz/Jiot/0hN
+        U/9JUFn/OD5G/zQ5QdM2PERXNT1EBzU9RQA1FR0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEFDTwBCQ1ACPURMMjxETK0/RU73TFRd/1pgaf8+QUb/HyEk/xwe
+        IP8cHSH/MjU6/2hvd/+NlaL/n6my/7O8u/+yvMP/dHrR/x8h3/8CAub/BATm/wcH5P8ICOT/CAnk/wgJ
+        5P8ICeT/CAnk/wgJ5P8ICeT/CAnl/wgJ5f8JCeX/CQnl/wkJ5f8JCeX/CQnl/wkJ5f8JCeX/CQnl/wkJ
+        5f8JCeX/CQnk/wkK5P8JCuT/CQrj/woK5P8KCuX/Cgro/wkJ6/8ICez/CAnt/wcI7f8HB+z/BwfO/woL
+        s/8NDaz/FhWS/yQkhf8vMIr/PDyE/0dHev9NTXj/UlN6/1hYff9eXoP/YWGF/2Bghf9cXYH/WFl+/1BR
+        d/9HSXD/P0Bz/zY2ff8rLIX/IiKA/xUVif8OD6f/Cwy1/wgIzv8ICez/CAnu/wgK7v8JCu3/CQrr/woK
+        6P8KCub/CQrk/wkK4/8JCuT/CQnk/wkJ5f8JCeX/CQnl/wgJ5f8ICeX/CAnl/wgJ5f8ICeX/CAnl/wgJ
+        5f8ICeX/CAjl/wgI5f8ICOT/CAjk/wgI5P8HCOT/Bwjk/wcI5P8DA+r/BwjJ/2Bll/+ttrX/pa+6/2dt
+        dv86PkX/SU9X/19mcf9yeoT/am94/zk9Qv8cHSD/Gx0g/xweIv8xNTn/UFZe/0lPWP83Pkb8NTtCxTY8
+        REU7P0cDOj5GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAA+RUsAGSoUAEFHTyRAR0+WPURN9EhPWP9cYmz/SU1T/yUnKv8dHyP/Gx0f/ycp
+        LP9YXWP/iJCb/5ujr/+wusD/wcvI/5efyP9FSdP/CQrk/wAA5/8FBOX/Bwfk/wgJ5P8ICeT/CAnk/wgJ
+        5P8ICeT/CAnk/wgJ5P8ICeX/CAnl/wgJ5P8ICeX/CAnl/wkJ5f8JCeX/CAnl/wgJ5f8ICeX/CQnl/wkK
+        5f8JCuX/Cgrl/woK5P8KCuT/Cgrk/woK5P8KC+T/Cgvl/woL5v8JCuf/CQrq/wgJ7f8ICO7/Bgfv/wUF
+        8v8EBPL/AwPf/wMDy/8DBMP/AwTB/wUFv/8GB8D/BwjB/wcIwv8HCMH/BgfC/wUFwf8EBcP/AwTM/wQE
+        4P8GBvL/Bwb0/wcH8P8ICe//CArt/wkK6v8JCuj/Cgvm/woL5v8KC+X/Cgvk/woK5P8KCuT/Cgrk/wkK
+        5f8JCuX/CQrl/wkJ5f8JCeX/CQnl/wkJ5f8ICeX/CAnl/wgJ5f8ICOX/CAjl/wgJ5f8ICOX/CAjk/wgI
+        5P8ICOT/Bwjk/wcI5P8HCOT/Bwjk/wcH4/8DA+b/AADr/x4gr/+MlKT/qbG2/4yUnv9dY23/aHB7/3+I
+        kv9dZGv/Kyww/xgaHf8bHSD/HyEk/zs/Rf9WXGX/SE9Z/zg/SPk3PkawNz1FNy81PQE1O0MAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAEBGTwBARk8UP0VOfjxCSudFTFT/XGNs/1VZYf8qLDD/HB4g/xsdIP8iJCb/QkVL/3h+
+        iP+Vnar/p7C6/7zFwP+stb//cnfK/ygp3f8EBOX/AQDl/wYH5P8ICeT/CAnk/wgJ5P8ICeT/CAnk/wgJ
+        5P8ICeT/CAnk/wgJ5P8ICeT/CAnk/wgJ5P8ICeX/CAnl/wgJ5f8ICeX/CQnl/wkJ5f8JCuX/CQrl/wkK
+        5f8KCuX/Cgrl/woL5f8KC+X/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+X/Cgvl/woL5f8KCub/Cgro/woK
+        6/8KCuz/CQnt/wkJ7f8ICe3/CAnt/wgJ7f8ICe3/CQjt/wkJ7f8KCu3/Cgrs/woK6P8KCub/Cgvl/woL
+        5f8KC+X/Cgvl/woL5P8KCuT/Cgrk/woK5P8KCuT/Cgrl/woK5f8KCuX/Cgrl/wkK5f8JCuX/CQrl/wkJ
+        5f8JCeX/CQnl/wkJ5f8JCeX/CAnl/wgJ5P8ICOT/CAjk/wgI5P8ICOT/CAjk/wgI5P8ICOT/CAjk/wgI
+        5P8HCOT/BQbl/wAB5f8EBOX/Jynb/2txu/+dpa//oKiw/4+Xo/96gIv/cXeA/0pPVP8kJin/GBoc/xob
+        Hv8lJyr/SExS/1RaYv9CSFH/OD5G8zxDS5Y8REwlR0RLAD5ETAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAA9REwAPkRNCj5FTV8+RU3NQ0pR/FVbZf9ZXmb/Njk+/yAiJf8cHSD/Gxwe/y0vM/9eY2r/iZGc/52l
+        sP+ttbf/usK+/6Ssxv9fY9L/ISLi/wMD5f8DA+X/Bwjk/wgJ5P8ICeT/CAnk/wgJ5P8JCeT/CQnk/wkJ
+        5P8ICeT/CAnk/wgJ5P8ICeT/CQnk/wkJ5P8JCeT/CQnl/wkJ5f8JCuX/CQrl/woK5f8KCuX/Cgrl/woL
+        5f8KC+X/Cgvl/woL5f8KC+X/Cgvl/woL5P8KC+T/Cgvk/woL5P8LC+T/Cwvj/wsL5P8LC+T/Cwvk/woL
+        5P8LC+T/Cwvk/wsL5P8LC+T/Cwvk/wsL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woK
+        5P8KCuX/Cgrk/woK5f8KCuX/Cgrl/woK5f8KCuX/Cgrl/wkK5f8JCuX/CQrl/wkK5f8JCuX/CQnk/wkJ
+        5P8JCeT/CAnk/wgJ5P8ICeT/CAnk/wgI5P8ICOT/CAjk/wgI5P8ICOT/CAnk/wcH5P8DA+X/AwPm/x4g
+        3/9XWsv/mJ66/6+4tP+fp67/iI+b/3uCjP9gZWz/MTQ4/xocHv8ZGx3/HB4g/yktL/9PVFz/UVdg/z5E
+        Tf44PkbbO0FKc0BGTxI8QUoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQklRAENK
+        UgVBSFA9PkRMsj1DTPlNVFz/X2Vu/0hNU/8pKy//HR4g/xsdH/8hIyb/RUhO/3l/if+Vnan/p7C5/7nC
+        wf/AyMn/nqXR/1BT2f8UFN//AQHl/wQE5P8HB+T/CAnk/wkJ5P8JCeT/CQnk/wkJ5P8JCeT/CQnk/wkJ
+        5P8JCeT/CQnk/wkJ5P8JCeT/CQnk/wkJ5P8JCeT/CQrl/woK5f8KCuX/Cgrl/woK5f8KC+X/Cgvl/woL
+        5f8KC+X/Cgvl/woL5f8KC+X/Cgvl/woL5f8KC+X/Cgvk/woL5f8KC+X/Cgvl/woL5P8KC+X/Cgvl/woL
+        5f8KC+X/Cgvl/woL5P8KC+X/Cgvl/woL5f8KC+X/Cgvl/woL5f8KC+X/Cgvk/woL5f8KC+X/Cgvl/woK
+        5f8KCuX/Cgrl/woK5f8KCuX/CQrk/wkK5P8JCuT/CQrk/wkK5P8JCuT/CQnk/wkJ5P8JCeT/CAnk/wgJ
+        5P8ICeT/CAnk/wgI5P8ICOT/CAjk/wgI5P8HCOT/BAXl/wIC5/8VFuL/TFDZ/5ieyf+1vb7/rLSz/5ae
+        pf+Hj5v/cnmD/0hNU/8iJSj/GRsd/xkbHf8hIyb/PkJG/1VaYv9LUVr/PEJK/jpAScU+Q01QPkZNCD5F
+        TQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9Q00AQUlQIT5E
+        TY88QkrmRkxW/11lbP9bYGb/Oj1C/x4fIv8bHR7/Ghsd/zM1Of9fZGz/g4qW/6Cptf+xub//xM3K/8DI
+        yP+Fis//REfa/w8Q4f8CAuT/AwTk/wkI4/8JCeT/CQnk/wkJ5P8JCeT/CQnk/wkJ5P8JCeT/CQnk/wkJ
+        5P8JCeT/CQnk/wkJ5P8JCeT/CQnk/wkK5P8KCuT/Cgrk/woK5P8KCuT/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5f8KC+T/Cgvl/woL5P8KC+T/Cgvk/woL5f8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5f8KC+T/Cgvl/woL5f8KC+X/Cgvk/woL5f8KC+X/Cgvk/woL5P8KC+T/Cgvk/woL5P8KCuT/Cgrk/woK
+        5P8KCuT/Cgrk/wkK5P8JCuT/CQrk/wkK5P8JCuT/CQnk/wkJ5P8JCeT/CAnk/wgJ5P8ICeT/CAnk/wgI
+        5P8ICOT/Bwfk/wMD5f8CA+X/EBDg/0RH2f+GjNP/usPG/7rDwP+mr7X/kpum/3uCi/9dYmr/Njk+/xoc
+        H/8YGRv/Ghod/y4wNP9OUlj/WmBp/0RJU/83PUXwOD9HpD5DSzE6P0kCOj9JAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABDSE8APURNAEJITw89Q0tbO0FLyj5E
+        TP1TWmL/Ymhw/09SWP8qLC//HB4h/xodIP8dHyL/PUBF/2xxev+Wnqv/qLK9/7e/xP/L1M7/xc3T/4+V
+        2/9LT9r/EhPg/wIC5P8DA+T/Bwfk/wkJ5P8JCuT/CQnk/wkJ5P8JCeT/CQnk/wkJ5P8JCeT/CQnk/wkJ
+        5P8JCeT/CQnk/wkK5P8JCuT/Cgrk/woK5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5f8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5f8KC+T/Cgvk/woL
+        5f8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woK5P8KCuT/Cgrk/woK5P8KCuT/Cgrk/wkK
+        5P8JCuT/CQrk/wkK5P8JCeT/CQnk/wkJ5P8ICeT/CAnk/wgJ5P8JCuT/CAnk/wYG5P8CAuT/AwPl/xMT
+        4/9GSNj/h4zO/7vDyP/Fzsj/qrO3/5KapP+CiJL/ZGlx/0JGS/8gIiT/GBod/xocHv8fISP/Q0ZL/1th
+        aP9SWGH/PkRN/jk+R9g5PkVyOD9HFjg/PgA4PkoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD1DSgA9Q0oDPkRMMzxBSZ84PUXrREpS/2Bl
+        b/9kaXH/Oz9E/yEkJ/8dHyL/Gx4g/ycqLf9KTlP/d32G/5igrP+stMD/xs/X/97o4//Q2eL/m6He/1lc
+        4f8bG+T/AwPj/wMD4v8EBeP/CAfk/wkJ5P8KC+T/CQrk/wkK5P8JCuT/CQnk/wkJ5P8JCeT/CQnk/wkJ
+        5P8JCeT/CQrk/woK5P8KCuT/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgrk/woK5P8KCuT/Cgrk/woK5P8JCuT/Cgrk/woK5P8JCuT/CQrk/wkK
+        5P8JCuT/CQnk/wkJ5P8JCuT/CAnk/wcI5P8EBeT/AgPk/wQE4/8eH+H/UVXZ/4+U0v+5wM3/x9DK/7O7
+        wf+ao63/ipGc/3F3gP9FSU7/JSgr/xodH/8cHR//HR8h/zAzN/9UWWD/XmRs/0dNVf82PETyOT9IsjxD
+        S0Q6QEcIOkBHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5P0cAMThAADtASBU7QEhjOT9Hzj9FTvtTWmL/aW95/1hd
+        Y/8xNDf/IiUn/xweIf8dHyL/Kiww/1NYXf+OlaD/p6+9/7rC0f/T3OP/4erk/9nh6P+0u+n/ZWrl/yYn
+        5P8LC+H/AQHh/wAA4v8EBeT/CQrk/wkK5P8JCuT/CQrk/wkK5P8JCuT/CQrk/wkK5P8JCuT/CQrk/wkK
+        5P8KCuT/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KCuT/Cgrk/woK
+        5P8KCuT/Cgrk/woK5P8KCuT/Cgrk/woK5P8JCuT/CQrk/wkK5P8JCuT/CQrk/wkK5P8JCuT/CQrk/wgJ
+        5P8FBeP/AQDj/wEB4/8ICOL/ICHf/2Zp2/+rstn/x8/W/8nQyv+4wMP/pK24/42VoP98gov/U1dd/ysu
+        Mf8dHyH/Gxwf/x0fIv8rLTH/R0tR/19lbf9TWmL/P0VN/Tc9Rdw4PkV3OkBIHz9FUQE7QUoAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAADxBSQA7QEgDP0RMLz5FTZA+RU3lRk1V/V1ja/9rcXj/UVVb/zAy
+        Nv8dHyL/HiEk/yMkJ/8vMTX/XGBn/4WMlf+iqrf/wsvY/9Pb4f/f5+b/5O3x/9ri9P+boer/TlHm/yQl
+        5f8JCeH/AADh/wIC4/8GB+T/CAnk/wkK5P8JCuT/CQrk/woK5P8JCuT/CQrk/wkK5P8KCuT/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KCuT/Cgvk/woK5P8KCuT/Cgrk/woK
+        5P8KCuT/Cgrk/woK5P8KCuT/CQrk/wkK5P8JCuT/CQrk/wgJ4/8GB+P/AgLj/wAA4v8GB9//ICLi/0lM
+        5v+NkuL/wcjb/9Tc3//O19b/u8PI/6Sstv+PlqL/goqS/1tfZf8rLTH/HyAj/xsdH/8bHiH/Kisv/0FE
+        Sf9kaXH/WmBo/0JIUP86QEjtOT5GoTpASD45P0cFOT9HAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAABVXGQARE1VAEZPVwtCSlJSP0ZOsEBGTvFKUFn/aW95/2htdf9LTlP/Kiww/x8g
+        I/8iIyf/IiQn/yotMf9UWF7/hoyW/6qxvv/Bydb/zNTc/97n6f/v9/j/7/T9/8LI9/9/g+r/S07l/yEj
+        4v8CA9//AQLh/wME4v8FBuP/CAnk/wkK4/8KCuT/Cgrk/woK5P8KCuT/Cgrk/woK5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KCuT/Cgrk/woK5P8KCuT/Cgrk/woK5P8KCuT/Cgrk/woK5P8KCuT/Cgrk/woK
+        5P8JCuT/CQrk/wgJ4/8FBeP/AwPj/wEB4/8CAuH/ICDf/05R5f91euL/tLvn/+Ps8P/l7e3/z9fY/7e/
+        xv+rtMD/l56p/3l/h/9aXmT/LzI1/x4hI/8eHyL/Gx0f/yEjJv9CRUr/XWFp/2Fmbv9MUVn/PEJK+jg+
+        RsE5P0dkO0BIEzM2QAA9Q0oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAElMVABKTVUCRktUG0FHUGtARk3IQEdQ+FVbZf9tdH3/a3J4/1JXXP8oLC//ICEl/yAi
+        Jv8gISX/LC8y/1hcYv94fof/m6Ku/7zE0//Dy9b/197m//P6/P/0+Pr/4+j5/7vA9f+QlfH/aGzs/ykr
+        4f8MDeH/Bwjh/wIC4v8CAuL/Bgbi/wcH4/8JCeP/CQnj/woK5P8KCuP/Cgvk/woM4/8KC+T/Cgvk/woL
+        5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woL5P8KC+T/Cgvk/woK
+        5P8KCuT/Cgrk/woK5P8KCuT/Cgrj/woK5P8KCuT/Cgrk/woK4/8JCeP/CAjj/wYG4v8BAuL/AgLi/wcI
+        4f8MDeH/KCrl/1ld6f+Dhun/sLXq/+Ln8//v8/P/5Ozt/8rS2P+4wMv/sLjF/5Obp/9wdn7/VVle/y0v
+        Mv8cHiD/Gx4h/xwfIf8lJyr/QERI/11iZ/9kanH/U1pj/z1DS/w6P0bXOkBGgTxCSSY9QkkFPUJJAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AABSXGYAQURLAExSWwNDSVAmP0VOfz1ETNJHTVb5YGdx/210ff9tc3v/UFNZ/ystMf8jJSn/HyEj/xwe
+        If8nKS3/QkVJ/1tfZv+EipT/srrH/8LL2P/R2+f/7PX6//L3+f/z9vr/8/X9/8zR9/+sr/X/gITw/0lK
+        5/8mJuP/Gxvi/w8Q4v8EBOH/AQHh/wQE4f8FBeL/Bwfi/wcH4v8ICOL/CQrj/woM4/8KC+P/Cgvj/woL
+        4/8KDOP/Cwzk/wsM5P8LDOT/Cwzk/wsM5P8LDOP/Cwzk/wsM5P8LDOP/Cgvj/woK5P8KCuT/Cgrj/wkK
+        4/8ICOP/CAjj/wcH4/8GBuL/BATi/wIC4f8DA+H/Cwvh/xYX4f8lJ+T/SEvl/4CE7f+mqvH/yc/6/+bs
+        /P/v8vb/7O/y/9rh6P/CydX/sbrH/6Wtuf+CiJL/YGVs/0VITv8qLTD/Ghwf/xodIP8eICP/Jigs/0dJ
+        Tv9pbnT/Y2py/1deaP9BSFD7Nz5F3jpASJA8QUg2P0VLBzQ6NgBARk8AAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AABFTlMAQ0tSB0VMUzZESVGJPkRM1UdOVftZYGj/bHN9/3R6gv9SVVv/ODo+/ycpLf8fISP/HB4h/yAi
+        Jv80Njr/Sk1T/3R5gf+hqbP/tb7K/7rE0f/U3uj/7PP4//L3+f/5/Pz/+fz+/+Pk+//Kyvj/uLn2/5ib
+        9P9naer/Q0Xn/yor5f8eHuT/ERHj/woL4v8EBuL/AgLh/wQF4P8EBeD/BAXg/wQF4f8FBeH/BQXi/wUG
+        4v8FBuL/BQbi/wUG4v8FBuL/BQbi/wUG4v8FBeL/BQXh/wQE4f8EBOH/BATg/wIC4P8CAuL/Bgfh/w0O
+        4v8bHOP/Jyjj/zo75v9dYOv/hIjv/66w9P/Gyff/3uH5//X5/v/v9Pj/6O3y/+Hn7v/J0t3/sbnG/6at
+        uv+bo67/d3yE/0pOU/8zNzr/Jicq/xsdH/8cHiD/JSYq/zAzNv9ER0v/ZWpx/2Vqc/9UWmP/Q0pS/jg+
+        RuA7QUmaPkRLQz5ETA0+REwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARlVnAEhL
+        SgBHTlMLRktTN0FHT4c/RU3VSE5X+VlfZ/91fIT/eoCI/1peZP9HSk7/MzQ4/yAiJf8eICP/ICMm/yst
+        MP8xMzb/TFBV/36Ejf+dpK7/qrO+/8HK1//h6vX/7fT6//D1+P/1+vn//f/8//z8///w8f3/4uP8/9XV
+        +v/Bwvj/nJ7z/4iL8P92efD/UFHq/zs85/82N+b/MzPn/y8v5/8oKOb/Hh7k/xYX4/8XF+T/FRbk/xUW
+        5P8UFuT/FBbk/xUW4/8dHeP/KCnm/zIz5/82N+f/OTrn/0hJ6P9lZuz/en3s/5GU8P+8vfX/09P5/93e
+        +//r7v3/9vn///r9/f/u9fb/5ezy/93k7//M1eP/srvI/6CotP+Tm6T/f4WO/1ddY/80Nzv/Kyww/yAi
+        Jf8dICL/HiAj/yorMP9AQkf/VFhe/21ze/9sdHz/Ulpi/0NJUvw5P0fhOkBHmT9FTUVBR08QPUNOAT9F
+        TgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFSVIAQkFNAEZL
+        UwZGTFQtQ0lRekNJUctITlbwTVRb/250ff9/hY3/a3B3/1ldYf9BRUj/JScr/yAjJv8iIyf/IyQn/yMl
+        KP8kJin/REhM/3Z7gv+SmKL/oKiy/6+4xP/L1eL/3+jx/+Xt9f/o7vD/8vX2//v8+v/+//7//v7///z9
+        ///6+v//9PT+//Hx/v/v8P7/7e7+/+Xm/f/V1vr/v7/3/7Cx9v+vsfb/rK72/6uu9v+qrfb/qq31/66v
+        9P++vvX/1dX6/+rr/f/v7/3/8PD+//Pz/v/4+P//+/v///z9///9/v3/+Pv4/+/19v/h6e7/2+Pt/9fg
+        6//DzNj/pq67/5adqf+Hjpf/dHmA/09SV/8nKCz/IiMn/yIkKP8hIyf/ISQn/yEkJv87PUH/Vltg/2No
+        bv94f4f/bnV//1FXYf9JT1j1Q0pS1UBGTYo/RU48QUZNDDtLQABARkwAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABESlIAREpSAkRK
+        UiZGS1VkRUtUrURLVORHTVb/YGZw/3d+hv91fIP/bXJ6/1hcYf83OT3/IiQn/yMlKP8lJyv/Jiks/yMl
+        KP8kJyr/QUVI/15jZ/9xdXv/foSL/46WoP+dpa//wszZ/9/l7//k6/T/4ebu/9vg5v/e5Or/5uzz/+vv
+        9P/w8vT/8/X2//X3+P/5+/z//v///////////////////////////////////////////////P7+//b4
+        +v/x8/b/7PDz/+nu9f/h5u3/2d7l/9vh6f/b4+3/2ODq/8XN2/+gqLT/jZOd/3l/h/9pb3X/XmFn/0VI
+        TP8kJyn/Hh8i/yAjJf8iJCf/IiQn/yEjJv8uMDP/UFRZ/2pvdf9zeIH/eH+I/2hud/9KUFj/QUdQ60RK
+        UrhGS1NyRkxVL0VPVQNFTVQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5WWwBPVlsCSU9ZFUdN
+        VkBHTVeKRktVy0ZMVfNYX2j9bXR9/3F3f/96gIj/eX6F/2Fkav80Nzv/Kiww/ystMP8nKSz/JScq/yQl
+        KP8gIiX/JSgr/zs+Qf9LTlL/W15k/2ZrcP98goj/iY+Z/5Oaov+qsrr/x8/c/9La5//a4en/2eDo/9Pc
+        5v/U3Of/09rl/8jQ2f/Fy9T/wMbP/8DFzv/Fy9X/ytHb/9Tb5f/d5fD/3ebw/9vj6//a4ur/1d3o/8jR
+        3/+xucX/k5um/4eNmP94fYb/ZWpw/1dcYf9MUFT/P0JF/yYoK/8aHB//HiAj/yEiJv8iJSj/Jigr/ygq
+        Lf8xMzb/VVld/3l+hv97gYj/b3V//210fv9bYmz9Rk1W9kZMVdZFS1OXQkhQTENJURtBR1AEQUdQAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZGpuAHZ8fABRV14GSU9YIEpQ
+        WVlITleaRUtU0kxRW+9cYmv8Y2lx/2txef99gov/hYuR/2ludP9IS1D/PkFE/zs/Qv80Njr/KSsv/yIj
+        J/8hIyb/IiQm/yUnKv8yNDf/PD5C/0RGSf9MTlH/U1Za/1JVWv9bX2P/ZGhs/2ltc/9wdHr/dnqC/3h9
+        hf9+gor/g4iR/4OIkf+AhY3/fYOL/3V6gv9wdX3/bHF3/2Jma/9SVlr/T1JX/01QVP9KTE//QUJH/zo8
+        QP8wMjb/IyUo/x0fIv8eISP/HyEk/yUnK/8uMDT/Njg9/zk7P/9BREj/YmZs/4GGjv+Bh5D/cXiA/2Vs
+        df9hZ3H+TVRd8kFIUNhDSlKmRk1VZkZNVilJUVoJUFVdAU5UXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT1VeAFBWXwFPVV4MTlRdLklP
+        WGFESlKaREpSyUtRWulVXGX8XGNr/3B4gf+LkZv/lp2m/4WLk/9zd37/Wl5k/1VXXP9NUFT/P0FF/y8x
+        Nf8nKSv/Jigq/yYoKv8oKiz/KSst/yosLv8wMjX/Njc5/zg6PP87PD7/Pj9B/0BBRf9CQ0b/RUZJ/0RG
+        SP9BQ0b/P0FE/zs9QP84Ojz/NTc5/zAxNP8pKy3/JScq/yQnKf8kJij/IiQn/yAjJv8iJCf/LC4x/zw/
+        Q/9IS0//T1FX/1VYX/9pbXT/fYGJ/4mPmP+FipT/bXR9/1xjbf9YXmf/TVRd70NJUtBDSVKjRUtUa0dP
+        VjZIT1cRSVBYAUlQWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVFpmAFVaaAJSWmIOUVdgJktR
+        WlRFS1OERkxUuE5VXdtWXGbyV11o/F1ibP91fIX/iZGa/5efqP+LkZn/foOL/2tyd/9kaG3/bHB1/2ls
+        cf9fYWX/V1ld/0pNUf84Oj3/Li8y/zAyNP8wMTT/LzAz/y4wMv8uMDH/LS8x/ywuMP8sLTD/Ky0v/ywt
+        Mf8sLjH/Kiwv/yssL/81Njr/QkRI/05RVf9ZXGD/Z2tw/2pudP9laW7/am91/3yAif+Gi5P/kZeg/4iP
+        mf9yeYL/W2Jr/1FYYf1PVV72SlBZ4EVLU79CSVCPREpTXUpQWS9OVV4SVlpkA0ZVVQBZWmgAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AWF5iAGxxdAFcYmkGUFZeFEpQ
+        WDdJT1heSU9Yi0pQWbNLUVrSTVNc6E5VXvdWXmf/bXR9/36Gj/+Hj5n/kZii/4uRmv+Bh4//iIyU/4eN
+        lf98gYj/cnd8/3t/hf9+gon/g4eO/4SHjv+DiI//hYmQ/4WKkP+Cho3/goaN/4GGjv9+gon/en+F/3R5
+        f/96fob/gYeP/4OIkf+Aho7/jJOc/5KZpP+OlZ//gIeR/211f/9YX2n/TlVe+ktRW+tITlfXSU9YuUhO
+        V5NES1NlRkxTPktSWRpRWmEHYGhvAf///wBscnsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMUlsAS1JaAU1T
+        XBZOVl0xUVdgS1JZYmpRWGGMTVNcqklQWcRKUFnZSlFa70pQWflPVl/8XmVu/mtyfP51fYb/eYCK/32D
+        jv9/hZD/g4qV/4SLlv+EjJb/ho2Y/4eOmf+FjJb/hYyX/4WNl/+BiJL/gIeR/3uDjP90e4X/bHN9/mBm
+        cP5TWmT8TVRe+k1UXfJNVF3dS1Fbx01UXa9PWF+SUVhgb1BXYFFPVV42TlRdG1FXYANNU1wAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU15nAFVn
+        cABSWWIIU1liF1NZYiVTWWIzUlliQlBXX11QV191TlZeikxSW5xJT1iuSU9YvEhPWMlJT1nVSlFb30xT
+        XedNVF3tTFRd8E1UXvBNVF7tTFNd6EtSW+FKUVrXSlFazExTXL9MUlywS1JboE9UXo1SWWN4VFtlYVVc
+        ZEdVXGU1VFpkJ1RZZBlTWWMKVllmAVVZZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////////////wAAAAAP///////////////
+        /////////8AAAAAAA///////////////////////+AAAAAAAAB//////////////////////wAAAAAAA
+        AAH////////////////////+AAAAAAAAAAB////////////////////wAAAAAAAAAAAP////////////
+        ///////AAAAAAAAAAAAD//////////////////8AAAAAAAAAAAAA//////////////////wAAAAAAAAA
+        AAAAH////////////////+AAAAAAAAAAAAAAB////////////////8AAAAAAAAAAAAAAA///////////
+        /////wAAAAAAAAAAAAAAAP///////////////AAAAAAAAAAAAAAAAD//////////////+AAAAAAAAAAA
+        AAAAAA//////////////4AAAAAAAAAAAAAAAAAf/////////////gAAAAAAAAAAAAAAAAAH/////////
+        ////AAAAAAAAAAAAAAAAAAD////////////+AAAAAAAAAAAAAAAAAAA////////////4AAAAAAAAAAAA
+        AAAAAAAf///////////wAAAAAAAAAAAAAAAAAAAP///////////gAAAAAAAAAAAAAAAAAAAD////////
+        //+AAAAAAAAAAAAAAAAAAAAB//////////8AAAAAAAAAAAAAAAAAAAAA//////////4AAAAAAAAAAAAA
+        AAAAAAAAf/////////wAAAAAAAAAAAAAAAAAAAAAP/////////gAAAAAAAAAAAAAAAAAAAAAH///////
+        //AAAAAAAAAAAAAAAAAAAAAAD////////+AAAAAAAAAAAAAAAAAAAAAAB////////8AAAAAAAAAAAAAA
+        AAAAAAAAA////////4AAAAAAAAAAAAAAAAAAAAAAAf///////wAAAAAAAAAAAAAAAAAAAAAAAP//////
+        /gAAAAAAAAAAAAAAAAAAAAAAAH///////AAAAAAAAAAAAAAAAAAAAAAAAD///////AAAAAAAAAAAAAAA
+        AAAAAAAAAB//////+AAAAAAAAAAAAAAAAAAAAAAAAB//////8AAAAAAAAAAAAAAAAAAAAAAAAA//////
+        4AAAAAAAAAAAAAAAAAAAAAAAAAf/////wAAAAAAAAAAAAAAAAAAAAAAAAAP/////wAAAAAAAAAAAAAAA
+        AAAAAAAAAAH/////gAAAAAAAAAAAAAAAAAAAAAAAAAH/////AAAAAAAAAAAAAAAAAAAAAAAAAAD/////
+        AAAAAAAAAAAAAAAAAAAAAAAAAAB////+AAAAAAAAAAAAAAAAAAAAAAAAAAB////8AAAAAAAAAAAAAAAA
+        AAAAAAAAAAA////8AAAAAAAAAAAAAAAAAAAAAAAAAAAf///4AAAAAAAAAAAAAAAAAAAAAAAAAAAf///w
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAP///gAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAH///gAAAAAAAAAAAAAAAAAAAAAAAAAAAH///AAAAAAAAAAAAAAAAAAAAAAAAAAAAD///A
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAD//+AAAAAAAAAAAAAAAAAAAAAAAAAAAAB//+AAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAA//8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA//4A
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAf/4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAP/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/gA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAH/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/gAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+AA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAB8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/AA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/gAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAD/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/wA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAH/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/4AAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAP/4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAf/4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAf/8A
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAB//+AAAAAAAAAAAAAAAAAAAAAAAAAAAAB///AAAAAAAAAAAAAAAAAAAAAAAAAAAAD///A
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAD///gAAAAAAAAAAAAAAAAAAAAAAAAAAAH///gAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAH///wAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAP///4
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAf///8AAAAAAAAAAAAAAAAAAAAAAAAAAA////8AAAAAAAAAAAAAAAA
+        AAAAAAAAAAA////+AAAAAAAAAAAAAAAAAAAAAAAAAAB/////AAAAAAAAAAAAAAAAAAAAAAAAAAD/////
+        AAAAAAAAAAAAAAAAAAAAAAAAAAD/////gAAAAAAAAAAAAAAAAAAAAAAAAAH/////wAAAAAAAAAAAAAAA
+        AAAAAAAAAAP/////4AAAAAAAAAAAAAAAAAAAAAAAAAP/////4AAAAAAAAAAAAAAAAAAAAAAAAAf/////
+        8AAAAAAAAAAAAAAAAAAAAAAAAA//////+AAAAAAAAAAAAAAAAAAAAAAAAB///////AAAAAAAAAAAAAAA
+        AAAAAAAAAD///////gAAAAAAAAAAAAAAAAAAAAAAAD///////gAAAAAAAAAAAAAAAAAAAAAAAH//////
+        /wAAAAAAAAAAAAAAAAAAAAAAAP///////4AAAAAAAAAAAAAAAAAAAAAAAf///////8AAAAAAAAAAAAAA
+        AAAAAAAAA////////+AAAAAAAAAAAAAAAAAAAAAAB/////////AAAAAAAAAAAAAAAAAAAAAAD///////
+        //gAAAAAAAAAAAAAAAAAAAAAH/////////wAAAAAAAAAAAAAAAAAAAAAP/////////4AAAAAAAAAAAAA
+        AAAAAAAAf/////////+AAAAAAAAAAAAAAAAAAAAA///////////AAAAAAAAAAAAAAAAAAAAD////////
+        ///gAAAAAAAAAAAAAAAAAAAH///////////wAAAAAAAAAAAAAAAAAAAP///////////8AAAAAAAAAAAA
+        AAAAAAAf///////////+AAAAAAAAAAAAAAAAAAB/////////////AAAAAAAAAAAAAAAAAAD/////////
+        ////wAAAAAAAAAAAAAAAAAH/////////////4AAAAAAAAAAAAAAAAAf/////////////+AAAAAAAAAAA
+        AAAAAB///////////////AAAAAAAAAAAAAAAAD///////////////wAAAAAAAAAAAAAAAP//////////
+        /////8AAAAAAAAAAAAAAA/////////////////AAAAAAAAAAAAAAB/////////////////wAAAAAAAAA
+        AAAAP/////////////////8AAAAAAAAAAAAA///////////////////AAAAAAAAAAAAD////////////
+        ///////4AAAAAAAAAAAP///////////////////+AAAAAAAAAAB/////////////////////wAAAAAAA
+        AAP/////////////////////+AAAAAAAAB///////////////////////8AAAAAAA///////////////
+        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
+</value>
+  </data>
+</root>

+ 185 - 0
CnCTDRAMapEditor/Model/BasicSection.cs

@@ -0,0 +1,185 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Globalization;
+using System.Runtime.CompilerServices;
+
+namespace MobiusEditor.Model
+{
+    public class BooleanTypeConverter : TypeConverter
+    {
+        public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType)
+        {
+            return (context is MapContext) && (sourceType == typeof(string));
+        }
+
+        public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType)
+        {
+            return (context is MapContext) && (destinationType == typeof(string));
+        }
+
+        public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
+        {
+            if (!(value is bool boolean) || !CanConvertTo(context, destinationType))
+            {
+                return null;
+            }
+
+            return boolean ? "1" : "0";
+        }
+
+        public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
+        {
+            if (!(value is string str) || !CanConvertFrom(context, value?.GetType()))
+            {
+                return null;
+            }
+
+            var first = (str.Length > 0) ? str.ToUpper()[0] : 0;
+            return (first == 'T') || (first == 'Y') || (first == '1');
+        }
+    }
+
+    public class PercentageTypeConverter : TypeConverter
+    {
+        public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType)
+        {
+            return (context is MapContext) && (sourceType == typeof(string));
+        }
+
+        public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType)
+        {
+            return (context is MapContext) && (destinationType == typeof(string));
+        }
+
+        public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
+        {
+            if (!(value is int percent) || !CanConvertTo(context, destinationType))
+            {
+                return null;
+            }
+
+            var mapContext = context as MapContext;
+            return mapContext.FractionalPercentages ? (percent / 100M).ToString("D2") : percent.ToString();
+        }
+
+        public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
+        {
+            if (!(value is string str) || !CanConvertFrom(context, value?.GetType()))
+            {
+                return null;
+            }
+
+            var mapContext = context as MapContext;
+            if (mapContext.FractionalPercentages && str.Contains("."))
+            {
+                if (!decimal.TryParse(str, out decimal percent))
+                {
+                    return null;
+                }
+                return (int)(percent * 100);
+            }
+            else
+            {
+                if (!int.TryParse(str, out int percent))
+                {
+                    return null;
+                }
+                return percent;
+            }
+        }
+    }
+
+    public class BasicSection : INotifyPropertyChanged
+    {
+        public event PropertyChangedEventHandler PropertyChanged;
+
+        private string name;
+        [DefaultValue(null)]
+        public string Name { get => name; set => SetField(ref name, value); }
+
+        private int carryOverCap;
+        [TypeConverter(typeof(PercentageTypeConverter))]
+        [DefaultValue(-1)]
+        public int CarryOverCap { get => carryOverCap; set => SetField(ref carryOverCap, value); }
+
+        private int carryOverMoney;
+        [TypeConverter(typeof(PercentageTypeConverter))]
+        [DefaultValue(100)]
+        public int CarryOverMoney { get => carryOverMoney; set => SetField(ref carryOverMoney, value); }
+
+        private string intro;
+        [DefaultValue(null)]
+        public string Intro { get => intro; set => SetField(ref intro, value); }
+
+        private string theme;
+        [DefaultValue("No Theme")]
+        public string Theme { get => theme; set => SetField(ref theme, value); }
+
+        private int percent;
+        [TypeConverter(typeof(PercentageTypeConverter))]
+        [DefaultValue(100)]
+        public int Percent { get => percent; set => SetField(ref percent, value); }
+
+        public string player;
+        [DefaultValue(null)]
+        public string Player { get => player; set => SetField(ref player, value); }
+
+        private string action;
+        [DefaultValue("x")]
+        public string Action { get => action; set => SetField(ref action, value); }
+
+        private string lose;
+        [DefaultValue("x")]
+        public string Lose { get => lose; set => SetField(ref lose, value); }
+
+        private string win;
+        [DefaultValue("x")]
+        public string Win { get => win; set => SetField(ref win, value); }
+
+        private string brief;
+        [DefaultValue("x")]
+        public string Brief { get => brief; set => SetField(ref brief, value); }
+
+        private string author;
+        [DefaultValue(null)]
+        public string Author { get => author; set => SetField(ref author, value); }
+
+        private string basePlayer;
+        [NonSerializedINIKey]
+        [DefaultValue(null)]
+        public string BasePlayer { get => basePlayer; set => SetField(ref basePlayer, value); }
+
+        private bool soloMission;
+        [DefaultValue(false)]
+        public bool SoloMission { get => soloMission; set => SetField(ref soloMission, value); }
+
+        protected bool SetField<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
+        {
+            if (EqualityComparer<T>.Default.Equals(field, value))
+            {
+                return false;
+            }
+            field = value;
+            OnPropertyChanged(propertyName);
+            return true;
+        }
+
+        protected void OnPropertyChanged(string propertyName) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+    }
+}

+ 24 - 0
CnCTDRAMapEditor/Model/BriefingSection.cs

@@ -0,0 +1,24 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System.ComponentModel;
+
+namespace MobiusEditor.Model
+{
+    public class BriefingSection
+    {
+        [DefaultValue(null)]
+        public string Briefing { get; set; }
+    }
+}

+ 103 - 0
CnCTDRAMapEditor/Model/Building.cs

@@ -0,0 +1,103 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Runtime.CompilerServices;
+
+namespace MobiusEditor.Model
+{
+    public class Building : ICellOverlapper, ICellOccupier, INotifyPropertyChanged, ICloneable
+    {
+        public event PropertyChangedEventHandler PropertyChanged;
+
+        private BuildingType type;
+        public BuildingType Type { get => type; set => SetField(ref type, value); }
+
+        public Rectangle OverlapBounds => Type.OverlapBounds;
+
+        public bool[,] OccupyMask => Type.OccupyMask;
+
+        private HouseType house;
+        public HouseType House { get => house; set => SetField(ref house, value); }
+
+        private int strength;
+        public int Strength { get => strength; set => SetField(ref strength, value); }
+
+        private DirectionType direction;
+        public DirectionType Direction { get => direction; set => SetField(ref direction, value); }
+
+        private string trigger = Model.Trigger.None;
+        public string Trigger { get => trigger; set => SetField(ref trigger, value); }
+
+        private int basePriority = -1;
+        public int BasePriority { get => basePriority; set => SetField(ref basePriority, value); }
+
+        private bool isPrebuilt = true;
+        public bool IsPrebuilt { get => isPrebuilt; set => SetField(ref isPrebuilt, value); }
+
+        private bool sellable;
+        public bool Sellable { get => sellable; set => SetField(ref sellable, value); }
+
+        private bool rebuild;
+        public bool Rebuild { get => rebuild; set => SetField(ref rebuild, value); }
+
+        public ISet<int> BibCells { get; private set; } = new HashSet<int>();
+
+        private Color tint = Color.White;
+        public Color Tint
+        {
+            get => IsPrebuilt ? tint : Color.FromArgb((int)(tint.A * 0.75f), tint.R, tint.G, tint.B);
+            set => tint = value;
+        }
+
+        public Building Clone()
+        {
+            return new Building()
+            {
+                Type = Type,
+                House = House,
+                Strength = Strength,
+                Direction = Direction,
+                Trigger = Trigger,
+                BasePriority = BasePriority,
+                IsPrebuilt = IsPrebuilt,
+                Sellable = Sellable,
+                Rebuild = Rebuild,
+                Tint = Tint
+            };
+        }
+
+        protected bool SetField<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
+        {
+            if (EqualityComparer<T>.Default.Equals(field, value))
+            {
+                return false;
+            }
+            field = value;
+            OnPropertyChanged(propertyName);
+            return true;
+        }
+
+        protected void OnPropertyChanged(string propertyName) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+}

+ 166 - 0
CnCTDRAMapEditor/Model/BuildingType.cs

@@ -0,0 +1,166 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Render;
+using System;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    public class BuildingType : ICellOverlapper, ICellOccupier, ITechnoType, IBrowsableType
+    {
+        public sbyte ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public string DisplayName { get; private set; }
+
+        public string Tilename { get; private set; }
+
+        public Rectangle OverlapBounds => new Rectangle(Point.Empty, new Size(OccupyMask.GetLength(1), OccupyMask.GetLength(0)));
+
+        public bool[,] OccupyMask { get; private set; }
+
+        public bool[,] BaseOccupyMask { get; private set; }
+
+        public Size Size { get; private set; }
+
+        public bool HasBib { get; private set; }
+
+        public string OwnerHouse { get; private set; }
+
+        public TheaterType[] Theaters { get; private set; }
+
+        public bool IsFake { get; private set; }
+
+        public bool HasTurret { get; private set; }
+
+        public string FactoryOverlay { get; private set; }
+
+        public Image Thumbnail { get; set; }
+
+        public BuildingType(sbyte id, string name, string textId, bool[,] occupyMask, bool hasBib, string ownerHouse, TheaterType[] theaters, bool isFake, bool hasTurret, string factoryOverlay)
+        {
+            ID = id;
+            Name = isFake ? (name.Substring(0, name.Length - 1) + "f") : name;
+            DisplayName = Globals.TheGameTextManager[textId];
+            Tilename = name;
+            BaseOccupyMask = occupyMask;
+            Size = new Size(BaseOccupyMask.GetLength(1), BaseOccupyMask.GetLength(0));
+            HasBib = hasBib;
+            OwnerHouse = ownerHouse;
+            Theaters = theaters;
+            IsFake = isFake;
+            HasTurret = hasTurret;
+            FactoryOverlay = factoryOverlay;
+
+            if (HasBib)
+            {
+                OccupyMask = new bool[BaseOccupyMask.GetLength(0) + 1, BaseOccupyMask.GetLength(1)];
+                for (var i = 0; i < BaseOccupyMask.GetLength(0) - 1; ++i)
+                {
+                    for (var j = 0; j < BaseOccupyMask.GetLength(1); ++j)
+                    {
+                        OccupyMask[i, j] = BaseOccupyMask[i, j];
+                    }
+                }
+                for (var j = 0; j < OccupyMask.GetLength(1); ++j)
+                {
+                    OccupyMask[OccupyMask.GetLength(0) - 2, j] = true;
+                    OccupyMask[OccupyMask.GetLength(0) - 1, j] = true;
+                }
+            }
+            else
+            {
+                OccupyMask = BaseOccupyMask;
+            }
+        }
+
+        public BuildingType(sbyte id, string name, string textId, bool[,] occupyMask, bool hasBib, string ownerHouse, bool isFake, bool hasTurret, string factoryOverlay)
+            : this(id, name, textId, occupyMask, hasBib, ownerHouse, null, isFake, hasTurret, factoryOverlay)
+        {
+        }
+
+        public BuildingType(sbyte id, string name, string textId, bool[,] occupyMask, bool hasBib, string ownerHouse)
+            : this(id, name, textId, occupyMask, hasBib, ownerHouse, null, false, false, null)
+        {
+        }
+
+        public BuildingType(sbyte id, string name, string textId, bool[,] occupyMask, bool hasBib, string ownerHouse, TheaterType[] theaters)
+            : this(id, name, textId, occupyMask, hasBib, ownerHouse, theaters, false, false, null)
+        {
+        }
+
+        public BuildingType(sbyte id, string name, string textId, bool[,] occupyMask, bool hasBib, string ownerHouse, bool isFake)
+            : this(id, name, textId, occupyMask, hasBib, ownerHouse, null, isFake, false, null)
+        {
+        }
+
+        public BuildingType(sbyte id, string name, string textId, bool[,] occupyMask, bool hasBib, string ownerHouse, bool isFake, bool hasTurret)
+            : this(id, name, textId, occupyMask, hasBib, ownerHouse, null, isFake, hasTurret, null)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is BuildingType)
+            {
+                return this == obj;
+            }
+            else if (obj is sbyte)
+            {
+                return ID == (sbyte)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+
+        public void Init(GameType gameType, TheaterType theater, HouseType house, DirectionType direction)
+        {
+            var mockBuilding = new Building()
+            {
+                Type = this,
+                House = house,
+                Strength = 256,
+                Direction = direction
+            };
+
+            var render = MapRenderer.Render(gameType, theater, Point.Empty, Globals.TileSize, Globals.TileScale, mockBuilding);
+            if (!render.Item1.IsEmpty)
+            {
+                var buildingPreview = new Bitmap(render.Item1.Width, render.Item1.Height);
+                using (var g = Graphics.FromImage(buildingPreview))
+                {
+                    render.Item2(g);
+                }
+                Thumbnail = buildingPreview;
+            }
+        }
+    }
+}

+ 193 - 0
CnCTDRAMapEditor/Model/CellGrid.cs

@@ -0,0 +1,193 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    public enum FacingType
+    {
+        None,
+        North,
+        NorthEast,
+        East,
+        SouthEast,
+        South,
+        SouthWest,
+        West,
+        NorthWest
+    }
+
+    public class CellChangedEventArgs<T> : EventArgs
+    {
+        public readonly int Cell;
+
+        public readonly Point Location;
+
+        public readonly T OldValue;
+
+        public readonly T Value;
+
+        public CellChangedEventArgs(CellMetrics metrics, int cell, T oldValue, T value)
+        {
+            Cell = cell;
+            metrics.GetLocation(cell, out Location);
+            OldValue = oldValue;
+            Value = value;
+        }
+
+        public CellChangedEventArgs(CellMetrics metrics, Point location, T oldValue, T value)
+        {
+            Location = location;
+            metrics.GetCell(location, out Cell);
+            OldValue = oldValue;
+            Value = value;
+        }
+    }
+
+    public class CellGrid<T> : IEnumerable<(int Cell, T Value)>, IEnumerable
+    {
+        private readonly CellMetrics metrics;
+        private readonly T[,] cells;
+
+        public T this[int x, int y]
+        {
+            get => cells[y, x];
+            set
+            {
+                if (!EqualityComparer<T>.Default.Equals(cells[y, x], value))
+                {
+                    var lastValue = cells[y, x];
+                    cells[y, x] = value;
+                    OnCellChanged(new CellChangedEventArgs<T>(metrics, new Point(x, y), lastValue, cells[y, x]));
+                }
+            }
+        }
+
+        public T this[Point location] { get => this[location.X, location.Y]; set => this[location.X, location.Y] = value; }
+
+        public T this[int cell] { get => this[cell % metrics.Width, cell / metrics.Width]; set => this[cell % metrics.Width, cell / metrics.Width] = value; }
+
+        public Size Size => metrics.Size;
+
+        public int Length => metrics.Length;
+
+        public event EventHandler<CellChangedEventArgs<T>> CellChanged;
+        public event EventHandler<EventArgs> Cleared;
+
+        public CellGrid(CellMetrics metrics)
+        {
+            this.metrics = metrics;
+
+            cells = new T[metrics.Height, metrics.Width];
+        }
+
+        public void Clear()
+        {
+            Array.Clear(cells, 0, cells.Length);
+            OnCleared();
+        }
+
+        public T Adjacent(Point location, FacingType facing)
+        {
+            return metrics.Adjacent(location, facing, out Point adjacent) ? this[adjacent] : default;
+        }
+
+        public T Adjacent(int cell, FacingType facing)
+        {
+            if (!metrics.GetLocation(cell, out Point location))
+            {
+                return default;
+                
+            }
+            return metrics.Adjacent(location, facing, out Point adjacent) ? this[adjacent] : default;
+        }
+
+        public bool CopyTo(CellGrid<T> other)
+        {
+            if (metrics.Length != other.metrics.Length)
+            {
+                return false;
+            }
+
+            for (var i = 0; i < metrics.Length; ++i)
+            {
+                other[i] = this[i];
+            }
+
+            return true;
+        }
+
+        protected virtual void OnCellChanged(CellChangedEventArgs<T> e)
+        {
+            CellChanged?.Invoke(this, e);
+        }
+
+        protected virtual void OnCleared()
+        {
+            Cleared?.Invoke(this, new EventArgs());
+        }
+
+        public IEnumerable<(int Cell, T Value)> IntersectsWith(ISet<int> cells)
+        {
+            foreach (var i in cells)
+            {
+                if (metrics.Contains(i))
+                {
+                    var cell = this[i];
+                    if (cell != null)
+                    {
+                        yield return (i, cell);
+                    }
+                }
+            }
+        }
+
+        public IEnumerable<(int Cell, T Value)> IntersectsWith(ISet<Point> locations)
+        {
+            foreach (var location in locations)
+            {
+                if (metrics.Contains(location))
+                {
+                    var cell = this[location];
+                    if (cell != null)
+                    {
+                        metrics.GetCell(location, out int i);
+                        yield return (i, cell);
+                    }
+                }
+            }
+        }
+
+        public IEnumerator<(int Cell, T Value)> GetEnumerator()
+        {
+            for (var i = 0; i < metrics.Length; ++i)
+            {
+                var cell = this[i];
+                if (cell != null)
+                {
+                    yield return (i, cell);
+                }
+            }
+        }
+
+        IEnumerator IEnumerable.GetEnumerator()
+        {
+            return GetEnumerator();
+        }
+    }
+}

+ 137 - 0
CnCTDRAMapEditor/Model/CellMetrics.cs

@@ -0,0 +1,137 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace MobiusEditor.Model
+{
+    public class CellMetrics
+    {
+        public static readonly FacingType[] AdjacentFacings = new FacingType[] {
+            FacingType.North, FacingType.NorthEast, FacingType.East, FacingType.SouthEast, FacingType.South, FacingType.SouthWest, FacingType.West, FacingType.NorthWest
+        };
+
+        public int Width { get; private set; }
+
+        public int Height { get; private set; }
+
+        public Point TopLeft => Point.Empty;
+
+        public Size Size => new Size(Width, Height);
+
+        public Rectangle Bounds => new Rectangle(TopLeft, Size);
+
+        public int Length => Width * Height;
+
+        public bool Contains(Point location) => ((location.X >= 0) && (location.X < Width) && (location.Y >= 0) && (location.Y < Height));
+
+        public bool Contains(int cell) => ((cell >= 0) && (cell < Length));
+
+        public CellMetrics(int width, int height)
+        {
+            Width = width;
+            Height = height;
+        }
+
+        public CellMetrics(Size size)
+            : this(size.Width, size.Height)
+        {
+        }
+
+        public bool GetCell(Point location, out int cell)
+        {
+            cell = (location.Y * Width) + location.X;
+            return Contains(location);
+        }
+
+        public bool GetLocation(int cell, out Point location)
+        {
+            location = new Point(cell % Width, cell / Width);
+            return Contains(cell);
+        }
+
+        public bool Adjacent(Point location, FacingType facing, out Point adjacent)
+        {
+            adjacent = location;
+            switch (facing)
+            {
+                case FacingType.North:
+                    adjacent.Y--;
+                    break;
+                case FacingType.NorthEast:
+                    adjacent.X++;
+                    adjacent.Y--;
+                    break;
+                case FacingType.East:
+                    adjacent.X++;
+                    break;
+                case FacingType.SouthEast:
+                    adjacent.X++;
+                    adjacent.Y++;
+                    break;
+                case FacingType.South:
+                    adjacent.Y++;
+                    break;
+                case FacingType.SouthWest:
+                    adjacent.X--;
+                    adjacent.Y++;
+                    break;
+                case FacingType.West:
+                    adjacent.X--;
+                    break;
+                case FacingType.NorthWest:
+                    adjacent.X--;
+                    adjacent.Y--;
+                    break;
+            }
+
+            return Contains(adjacent);
+        }
+
+        public bool Adjacent(int cell, FacingType facing, out int adjacent)
+        {
+            if (!GetLocation(cell, out Point location) || !Adjacent(location, facing, out Point adjacentPoint))
+            {
+                adjacent = -1;
+                return false;
+            }
+            else
+            {
+                return GetCell(adjacentPoint, out adjacent);
+            }
+        }
+
+        public void Clip(ref Point location)
+        {
+            location.X = Math.Max(0, Math.Min(Width - 1, location.X));
+            location.Y = Math.Max(0, Math.Min(Height - 1, location.Y));
+        }
+
+        public void Clip(ref Point location, Size margin)
+        {
+            Clip(ref location, margin, margin);
+        }
+
+        public void Clip(ref Point location, Size topLeftMargin, Size bottomRightMargin)
+        {
+            location.X = Math.Max(topLeftMargin.Width, Math.Min(Width - bottomRightMargin.Width - 1, location.X));
+            location.Y = Math.Max(topLeftMargin.Height, Math.Min(Height - bottomRightMargin.Height - 1, location.Y));
+        }
+    }
+}

+ 21 - 0
CnCTDRAMapEditor/Model/CellTrigger.cs

@@ -0,0 +1,21 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Model
+{
+    public class CellTrigger
+    {
+        public string Trigger { get; set; } = Model.Trigger.None;
+    }
+}

+ 71 - 0
CnCTDRAMapEditor/Model/DirectionType.cs

@@ -0,0 +1,71 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+
+namespace MobiusEditor.Model
+{
+    public class DirectionType
+    {
+        public byte ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public FacingType Facing { get; private set; }
+
+        public DirectionType(byte id, string name, FacingType facing)
+        {
+            ID = id;
+            Name = name;
+            Facing = facing;
+        }
+
+        public DirectionType(byte id, string name)
+            : this(id, name, FacingType.None)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is DirectionType)
+            {
+                return this == obj;
+            }
+            else if (obj is byte)
+            {
+                return ID == (byte)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+            else if (obj is FacingType)
+            {
+                return Facing == (FacingType)obj;
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+    }
+}

+ 172 - 0
CnCTDRAMapEditor/Model/House.cs

@@ -0,0 +1,172 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Utility;
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Globalization;
+using System.Linq;
+
+namespace MobiusEditor.Model
+{
+    public struct AlliesMask : IEnumerable<int>
+    {
+        public int Value { get; private set; }
+
+        public AlliesMask(int value)
+        {
+            Value = value;
+        }
+
+        public void Set(int id)
+        {
+            if ((id < 0) || (id > 31))
+            {
+                throw new ArgumentOutOfRangeException();
+            }
+
+            Value |= (1 << id);
+        }
+
+        public void Clear(int id)
+        {
+            if ((id < 0) || (id > 31))
+            {
+                throw new ArgumentOutOfRangeException();
+            }
+
+            Value &= ~(1 << id);
+        }
+
+        public override bool Equals(object obj)
+        {
+            return Value.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return Value.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Value.ToString();
+        }
+
+        public IEnumerator<int> GetEnumerator()
+        {
+            for (int i = 0, mask = 1; i < 32; ++i, mask <<= 1)
+            {
+                if ((Value & mask) != 0)
+                {
+                    yield return i;
+                }
+            }
+        }
+
+        IEnumerator IEnumerable.GetEnumerator()
+        {
+            return GetEnumerator();
+        }
+    }
+
+    public class AlliesMaskTypeConverter : TypeConverter
+    {
+        public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType)
+        {
+            return (context is MapContext) && (sourceType == typeof(string));
+        }
+
+        public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType)
+        {
+            return (context is MapContext) && (destinationType == typeof(string));
+        }
+
+        public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
+        {
+            if (!(value is AlliesMask) || !CanConvertTo(context, destinationType))
+            {
+                return null;
+            }
+
+            var map = (context as MapContext).Map;
+            var alliesMask = (AlliesMask)value;
+
+            var allies = new List<string>(map.Houses.Length);
+            foreach (var id in alliesMask)
+            {
+                if (map.Houses.Where(h => h.Type.Equals((sbyte)id)).FirstOrDefault() is House house)
+                {
+                    allies.Add(house.Type.Name);
+                }
+            }
+
+            return string.Join(",", allies);
+        }
+
+        public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
+        {
+            if (!CanConvertFrom(context, value?.GetType()))
+            {
+                return null;
+            }
+
+            var map = (context as MapContext).Instance as Map;
+            var alliesMask = new AlliesMask(0);
+
+            var allies = (value as string).Split(',');
+            foreach (var ally in allies)
+            {
+                if (map.Houses.Where(h => h.Type.Equals(ally)).FirstOrDefault() is House house)
+                {
+                    alliesMask.Set(house.Type.ID);
+                }
+            }
+
+            return alliesMask;
+        }
+    }
+
+    public class House
+    {
+        public readonly HouseType Type;
+
+        [NonSerializedINIKey]
+        [DefaultValue(true)]
+        public bool Enabled { get; set; }
+
+        [TypeConverter(typeof(AlliesMaskTypeConverter))]
+        public AlliesMask Allies { get; set; }
+
+        [DefaultValue(150)]
+        public int MaxBuilding { get; set; }
+
+        [DefaultValue(150)]
+        public int MaxUnit { get; set; }
+
+        [DefaultValue("North")]
+        public string Edge { get; set; }
+
+        [DefaultValue(0)]
+        public int Credits { get; set; } = 0;
+
+        public House(HouseType type)
+        {
+            Type = type;
+            Allies = new AlliesMask(1 << Type.ID);
+        }
+    }
+}

+ 82 - 0
CnCTDRAMapEditor/Model/HouseType.cs

@@ -0,0 +1,82 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace MobiusEditor.Model
+{
+    public class HouseType
+    {
+        public sbyte ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public string UnitTeamColor { get; private set; }
+
+        public string BuildingTeamColor { get; private set; }
+
+        public IDictionary<string, string> OverrideTeamColors { get; private set; }
+
+        public HouseType(sbyte id, string name, string unitTeamColor, string buildingTeamColor, params (string type, string teamColor)[] overrideTeamColors)
+        {
+            ID = id;
+            Name = name;
+            UnitTeamColor = unitTeamColor;
+            BuildingTeamColor = buildingTeamColor;
+            OverrideTeamColors = overrideTeamColors.ToDictionary(x => x.type, x => x.teamColor);
+        }
+
+        public HouseType(sbyte id, string name, string teamColor)
+            : this(id, name, teamColor, teamColor)
+        {
+        }
+
+        public HouseType(sbyte id, string name)
+            : this(id, name, null)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is HouseType)
+            {
+                return this == obj;
+            }
+            else if (obj is sbyte)
+            {
+                return ID == (sbyte)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+    }
+}

+ 127 - 0
CnCTDRAMapEditor/Model/Infantry.cs

@@ -0,0 +1,127 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Linq;
+using System.Numerics;
+using System.Runtime.CompilerServices;
+
+namespace MobiusEditor.Model
+{
+    public enum InfantryStoppingType
+    {
+        Center = 0,
+        UpperLeft = 1,
+        UpperRight = 2,
+        LowerLeft = 3,
+        LowerRight = 4
+    }
+
+    public class Infantry : INotifyPropertyChanged, ICloneable
+    {
+        public event PropertyChangedEventHandler PropertyChanged;
+
+        public InfantryGroup InfantryGroup { get; set; }
+
+        private InfantryType type;
+        public InfantryType Type { get => type; set => SetField(ref type, value); }
+
+        private HouseType house;
+        public HouseType House { get => house; set => SetField(ref house, value); }
+
+        private int strength;
+        public int Strength { get => strength; set => SetField(ref strength, value); }
+
+        private DirectionType direction;
+        public DirectionType Direction { get => direction; set => SetField(ref direction, value); }
+
+        private string mission;
+        public string Mission { get => mission; set => SetField(ref mission, value); }
+
+        private string trigger = Model.Trigger.None;
+        public string Trigger { get => trigger; set => SetField(ref trigger, value); }
+
+        public Color Tint { get; set; } = Color.White;
+
+        public Infantry(InfantryGroup infantryGroup)
+        {
+            InfantryGroup = infantryGroup;
+        }
+
+        public Infantry Clone()
+        {
+            return new Infantry(InfantryGroup)
+            {
+                Type = Type,
+                House = House,
+                Strength = Strength,
+                Direction = Direction,
+                Trigger = Trigger,
+                Mission = Mission,
+            };
+        }
+    
+        protected bool SetField<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
+        {
+            if (EqualityComparer<T>.Default.Equals(field, value))
+            {
+                return false;
+            }
+            field = value;
+            OnPropertyChanged(propertyName);
+            return true;
+        }
+
+        protected void OnPropertyChanged(string propertyName) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+
+    public class InfantryGroup : ICellOverlapper, ICellOccupier
+    {
+        private static readonly Point[] stoppingLocations = new Point[Globals.NumInfantryStops];
+
+        public Rectangle OverlapBounds => new Rectangle(-1, -1, 3, 3);
+
+        public bool[,] OccupyMask => new bool[1, 1] { { true } };
+
+        public readonly Infantry[] Infantry = new Infantry[Globals.NumInfantryStops];
+
+        static InfantryGroup()
+        {
+            stoppingLocations[(int)InfantryStoppingType.Center] = new Point(Globals.PixelWidth / 2, Globals.PixelHeight / 2);
+            stoppingLocations[(int)InfantryStoppingType.UpperLeft] = new Point(Globals.PixelWidth / 4, Globals.PixelHeight / 4);
+            stoppingLocations[(int)InfantryStoppingType.UpperRight] = new Point(3 * Globals.PixelWidth / 4, Globals.PixelHeight / 4);
+            stoppingLocations[(int)InfantryStoppingType.LowerLeft] = new Point(Globals.PixelWidth / 4, 3 * Globals.PixelHeight / 4);
+            stoppingLocations[(int)InfantryStoppingType.LowerRight] = new Point(3 * Globals.PixelWidth / 4, 3 * Globals.PixelHeight / 4);
+        }
+
+        public static IEnumerable<InfantryStoppingType> ClosestStoppingTypes(Point subPixel)
+        {
+            var stoppingDistances = new (InfantryStoppingType type, float dist)[stoppingLocations.Length];
+            for (int i = 0; i < stoppingDistances.Length; ++i)
+            {
+                stoppingDistances[i] = ((InfantryStoppingType)i, new Vector2(subPixel.X - stoppingLocations[i].X, subPixel.Y - stoppingLocations[i].Y).LengthSquared());
+            }
+            return stoppingDistances.OrderBy(sd => sd.dist).Select(sd => sd.type);
+        }
+    }
+}

+ 100 - 0
CnCTDRAMapEditor/Model/InfantryType.cs

@@ -0,0 +1,100 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Render;
+using MobiusEditor.Utility;
+using System;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    public class InfantryType : ITechnoType, IBrowsableType
+    {
+        public sbyte ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public string DisplayName { get; private set; }
+
+        public string OwnerHouse { get; private set; }
+
+        public Size RenderSize { get; set; }
+
+        public Image Thumbnail { get; set; }
+
+        public InfantryType(sbyte id, string name, string textId, string ownerHouse)
+        {
+            ID = id;
+            Name = name;
+            DisplayName = Globals.TheGameTextManager[textId];
+            OwnerHouse = ownerHouse;
+        }
+
+        public InfantryType(sbyte id, string name, string textId)
+            : this(id, name, textId, null)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is InfantryType)
+            {
+                return this == obj;
+            }
+            else if (obj is sbyte)
+            {
+                return ID == (sbyte)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+
+        public void Init(GameType gameType, TheaterType theater, HouseType house, DirectionType direction)
+        {
+            if (Globals.TheTilesetManager.GetTileData(theater.Tilesets, Name, 4, out Tile tile))
+            {
+                RenderSize = new Size(tile.Image.Width / Globals.TileScale, tile.Image.Height / Globals.TileScale);
+            }
+
+            var mockInfantry = new Infantry(null)
+            {
+                Type = this,
+                House = house,
+                Strength = 256,
+                Direction = direction
+            };
+            var infantryThumbnail = new Bitmap(Globals.TileWidth, Globals.TileHeight);
+            using (var g = Graphics.FromImage(infantryThumbnail))
+            {
+                MapRenderer.Render(theater, Point.Empty, Globals.TileSize, mockInfantry, InfantryStoppingType.Center).Item2(g);
+            }
+            Thumbnail = infantryThumbnail;
+        }
+    }
+}

+ 681 - 0
CnCTDRAMapEditor/Model/Map.cs

@@ -0,0 +1,681 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Render;
+using MobiusEditor.Utility;
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.ComponentModel;
+using System.Drawing;
+using System.Drawing.Drawing2D;
+using System.Linq;
+using TGASharpLib;
+
+namespace MobiusEditor.Model
+{
+    [Flags]
+    public enum MapLayerFlag
+    {
+        None            = 0,
+        Basic           = 1 << 0,
+        Map             = 1 << 1,
+        Template        = 1 << 2,
+        Terrain         = 1 << 3,
+        Resources       = 1 << 4,
+        Walls           = 1 << 5,
+        Overlay         = 1 << 6,
+        Smudge          = 1 << 7,
+        Waypoints       = 1 << 8,
+        CellTriggers    = 1 << 9,
+        Houses          = 1 << 10,
+        Infantry        = 1 << 11,
+        Units           = 1 << 12,
+        Buildings       = 1 << 13,
+        Boundaries      = 1 << 14,
+        TechnoTriggers  = 1 << 15,
+
+        OverlayAll = Resources | Walls | Overlay,
+        Technos = Terrain | Walls | Infantry | Units | Buildings,
+
+        All = int.MaxValue
+    }
+
+    public class MapContext : ITypeDescriptorContext
+    {
+        public IContainer Container { get; private set; }
+
+        public object Instance { get; private set; }
+
+        public PropertyDescriptor PropertyDescriptor { get; private set; }
+
+        public Map Map => Instance as Map;
+
+        public readonly bool FractionalPercentages;
+
+        public MapContext(Map map, bool fractionalPercentages)
+        {
+            Instance = map;
+            FractionalPercentages = fractionalPercentages;
+        }
+
+        public object GetService(Type serviceType) => null;
+
+        public void OnComponentChanged() { }
+
+        public bool OnComponentChanging() => true;
+    }
+
+    public class Map : ICloneable
+    {
+        private int updateCount = 0;
+        private bool updating = false;
+        private IDictionary<MapLayerFlag, ISet<Point>> invalidateLayers = new Dictionary<MapLayerFlag, ISet<Point>>();
+        private bool invalidateOverlappers;
+
+        public readonly BasicSection BasicSection;
+
+        public readonly MapSection MapSection = new MapSection();
+
+        public readonly BriefingSection BriefingSection = new BriefingSection();
+
+        public readonly SteamSection SteamSection = new SteamSection();
+
+        public TheaterType Theater { get => MapSection.Theater; set => MapSection.Theater = value; }
+
+        public Point TopLeft
+        {
+            get => new Point(MapSection.X, MapSection.Y);
+            set { MapSection.X = value.X; MapSection.Y = value.Y; }
+        }
+
+        public Size Size
+        {
+            get => new Size(MapSection.Width, MapSection.Height);
+            set { MapSection.Width = value.Width; MapSection.Height = value.Height; }
+        }
+
+        public Rectangle Bounds
+        {
+            get => new Rectangle(TopLeft, Size);
+            set { MapSection.X = value.Left; MapSection.Y = value.Top; MapSection.Width = value.Width; MapSection.Height = value.Height; }
+        }
+
+        public readonly Type HouseType;
+
+        public readonly HouseType[] HouseTypes;
+
+        public readonly List<TheaterType> TheaterTypes;
+
+        public readonly List<TemplateType> TemplateTypes;
+
+        public readonly List<TerrainType> TerrainTypes;
+
+        public readonly List<OverlayType> OverlayTypes;
+
+        public readonly List<SmudgeType> SmudgeTypes;
+
+        public readonly string[] EventTypes;
+
+        public readonly string[] ActionTypes;
+
+        public readonly string[] MissionTypes;
+
+        public readonly List<DirectionType> DirectionTypes;
+
+        public readonly List<InfantryType> InfantryTypes;
+
+        public readonly List<UnitType> UnitTypes;
+
+        public readonly List<BuildingType> BuildingTypes;
+
+        public readonly string[] TeamMissionTypes;
+
+        public readonly CellMetrics Metrics;
+
+        public readonly CellGrid<Template> Templates;
+
+        public readonly CellGrid<Overlay> Overlay;
+
+        public readonly CellGrid<Smudge> Smudge;
+
+        public readonly OccupierSet<ICellOccupier> Technos;
+
+        public readonly OccupierSet<ICellOccupier> Buildings;
+
+        public readonly OverlapperSet<ICellOverlapper> Overlappers;
+
+        public readonly Waypoint[] Waypoints;
+
+        public readonly CellGrid<CellTrigger> CellTriggers;
+
+        public readonly ObservableCollection<Trigger> Triggers;
+
+        public readonly List<TeamType> TeamTypes;
+
+        public House[] Houses;
+
+        public readonly List<string> MovieTypes;
+
+        public int TiberiumOrGoldValue { get; set; }
+
+        public int GemValue { get; set; }
+
+        public int TotalResources
+        {
+            get
+            {
+                int totalResources = 0;
+                foreach (var (cell, value) in Overlay)
+                {
+                    if (value.Type.IsResource)
+                    {
+                        totalResources += (value.Icon + 1) * (value.Type.IsGem ? GemValue : TiberiumOrGoldValue);
+                    }
+                }
+                return totalResources;
+            }
+        }
+
+        public Map(BasicSection basicSection, TheaterType theater, Size cellSize, Type houseType,
+            IEnumerable<HouseType> houseTypes, IEnumerable<TheaterType> theaterTypes, IEnumerable<TemplateType> templateTypes,
+            IEnumerable<TerrainType> terrainTypes, IEnumerable<OverlayType> overlayTypes, IEnumerable<SmudgeType> smudgeTypes,
+            IEnumerable<string> eventTypes, IEnumerable<string> actionTypes, IEnumerable<string> missionTypes,
+            IEnumerable<DirectionType> directionTypes, IEnumerable<InfantryType> infantryTypes, IEnumerable<UnitType> unitTypes,
+            IEnumerable<BuildingType> buildingTypes, IEnumerable<string> teamMissionTypes, IEnumerable<Waypoint> waypoints,
+            IEnumerable<string> movieTypes)
+        {
+            BasicSection = basicSection;
+
+            HouseType = houseType;
+            HouseTypes = houseTypes.ToArray();
+            TheaterTypes = new List<TheaterType>(theaterTypes);
+            TemplateTypes = new List<TemplateType>(templateTypes);
+            TerrainTypes = new List<TerrainType>(terrainTypes);
+            OverlayTypes = new List<OverlayType>(overlayTypes);
+            SmudgeTypes = new List<SmudgeType>(smudgeTypes);
+            EventTypes = eventTypes.ToArray();
+            ActionTypes = actionTypes.ToArray();
+            MissionTypes = missionTypes.ToArray();
+            DirectionTypes = new List<DirectionType>(directionTypes);
+            InfantryTypes = new List<InfantryType>(infantryTypes);
+            UnitTypes = new List<UnitType>(unitTypes);
+            BuildingTypes = new List<BuildingType>(buildingTypes);
+            TeamMissionTypes = teamMissionTypes.ToArray();
+            MovieTypes = new List<string>(movieTypes);
+
+            Metrics = new CellMetrics(cellSize);
+            Templates = new CellGrid<Template>(Metrics);
+            Overlay = new CellGrid<Overlay>(Metrics);
+            Smudge = new CellGrid<Smudge>(Metrics);
+            Technos = new OccupierSet<ICellOccupier>(Metrics);
+            Buildings = new OccupierSet<ICellOccupier>(Metrics);
+            Overlappers = new OverlapperSet<ICellOverlapper>(Metrics);
+            Triggers = new ObservableCollection<Trigger>();
+            TeamTypes = new List<TeamType>();
+            Houses = HouseTypes.Select(t => { var h = (House)Activator.CreateInstance(HouseType, t); h.SetDefault(); return h; }).ToArray();
+            Waypoints = waypoints.ToArray();
+            CellTriggers = new CellGrid<CellTrigger>(Metrics);
+
+            MapSection.SetDefault();
+            BriefingSection.SetDefault();
+            SteamSection.SetDefault();
+            Templates.Clear();
+            Overlay.Clear();
+            Smudge.Clear();
+            Technos.Clear();
+            Overlappers.Clear();
+            CellTriggers.Clear();
+
+            TopLeft = new Point(1, 1);
+            Size = Metrics.Size - new Size(2, 2);
+            Theater = theater;
+
+            Overlay.CellChanged += Overlay_CellChanged;
+            Technos.OccupierAdded += Technos_OccupierAdded;
+            Technos.OccupierRemoved += Technos_OccupierRemoved;
+            Buildings.OccupierAdded += Buildings_OccupierAdded;
+            Buildings.OccupierRemoved += Buildings_OccupierRemoved;
+            Triggers.CollectionChanged += Triggers_CollectionChanged;
+        }
+
+        public void BeginUpdate()
+        {
+            updateCount++;
+        }
+
+        public void EndUpdate()
+        {
+            if (--updateCount == 0)
+            {
+                Update();
+            }
+        }
+
+        public void InitTheater(GameType gameType)
+        {
+            foreach (var templateType in TemplateTypes)
+            {
+                templateType.Init(Theater);
+            }
+
+            foreach (var smudgeType in SmudgeTypes)
+            {
+                smudgeType.Init(Theater);
+            }
+
+            foreach (var overlayType in OverlayTypes)
+            {
+                overlayType.Init(Theater);
+            }
+
+            foreach (var terrainType in TerrainTypes)
+            {
+                terrainType.Init(Theater);
+            }
+
+            foreach (var infantryType in InfantryTypes)
+            {
+                infantryType.Init(gameType, Theater, HouseTypes.Where(h => h.Equals(infantryType.OwnerHouse)).FirstOrDefault(), DirectionTypes.Where(d => d.Facing == FacingType.South).First());
+            }
+
+            foreach (var unitType in UnitTypes)
+            {
+                unitType.Init(gameType, Theater, HouseTypes.Where(h => h.Equals(unitType.OwnerHouse)).FirstOrDefault(), DirectionTypes.Where(d => d.Facing == FacingType.North).First());
+            }
+
+            foreach (var buildingType in BuildingTypes)
+            {
+                buildingType.Init(gameType, Theater, HouseTypes.Where(h => h.Equals(buildingType.OwnerHouse)).FirstOrDefault(), DirectionTypes.Where(d => d.Facing == FacingType.North).First());
+            }
+        }
+
+        private void Update()
+        {
+            updating = true;
+
+            if (invalidateLayers.TryGetValue(MapLayerFlag.Resources, out ISet<Point> locations))
+            {
+                UpdateResourceOverlays(locations);
+            }
+
+            if (invalidateLayers.TryGetValue(MapLayerFlag.Walls, out locations))
+            {
+                UpdateWallOverlays(locations);
+            }
+
+            if (invalidateOverlappers)
+            {
+                Overlappers.Clear();
+                foreach (var (location, techno) in Technos)
+                {
+                    if (techno is ICellOverlapper)
+                    {
+                        Overlappers.Add(location, techno as ICellOverlapper);
+                    }
+                }
+            }
+
+            invalidateLayers.Clear();
+            invalidateOverlappers = false;
+            updating = false;
+        }
+
+        private void UpdateResourceOverlays(ISet<Point> locations)
+        {
+            var tiberiumCounts = new int[] { 0, 1, 3, 4, 6, 7, 8, 10, 11 };
+            var gemCounts = new int[] { 0, 0, 0, 1, 1, 1, 2, 2, 2 };
+
+            foreach (var (cell, overlay) in Overlay.IntersectsWith(locations).Where(o => o.Value.Type.IsResource))
+            {
+                int count = 0;
+                foreach (var facing in CellMetrics.AdjacentFacings)
+                {
+                    var adjacentTiberium = Overlay.Adjacent(cell, facing);
+                    if (adjacentTiberium?.Type.IsResource ?? false)
+                    {
+                        count++;
+                    }
+                }
+
+                overlay.Icon = overlay.Type.IsGem ? gemCounts[count] : tiberiumCounts[count];
+            }
+        }
+
+        private void UpdateWallOverlays(ISet<Point> locations)
+        {
+            foreach (var (cell, overlay) in Overlay.IntersectsWith(locations).Where(o => o.Value.Type.IsWall))
+            {
+                var northWall = Overlay.Adjacent(cell, FacingType.North);
+                var eastWall = Overlay.Adjacent(cell, FacingType.East);
+                var southWall = Overlay.Adjacent(cell, FacingType.South);
+                var westWall = Overlay.Adjacent(cell, FacingType.West);
+
+                int icon = 0;
+                if (northWall?.Type == overlay.Type)
+                {
+                    icon |= 1;
+                }
+                if (eastWall?.Type == overlay.Type)
+                {
+                    icon |= 2;
+                }
+                if (southWall?.Type == overlay.Type)
+                {
+                    icon |= 4;
+                }
+                if (westWall?.Type == overlay.Type)
+                {
+                    icon |= 8;
+                }
+
+                overlay.Icon = icon;
+            }
+        }
+
+        private void RemoveBibs(Building building)
+        {
+            var bibCells = Smudge.IntersectsWith(building.BibCells).Where(x => (x.Value.Type.Flag & SmudgeTypeFlag.Bib) != SmudgeTypeFlag.None).Select(x => x.Cell).ToArray();
+            foreach (var cell in bibCells)
+            {
+                Smudge[cell] = null;
+            }
+            building.BibCells.Clear();
+        }
+
+        private void AddBibs(Point location, Building building)
+        {
+            if (!building.Type.HasBib)
+            {
+                return;
+            }
+
+            var bib1Type = SmudgeTypes.Where(t => t.Flag == SmudgeTypeFlag.Bib1).FirstOrDefault();
+            var bib2Type = SmudgeTypes.Where(t => t.Flag == SmudgeTypeFlag.Bib2).FirstOrDefault();
+            var bib3Type = SmudgeTypes.Where(t => t.Flag == SmudgeTypeFlag.Bib3).FirstOrDefault();
+
+            SmudgeType bibType = null;
+            switch (building.Type.Size.Width)
+            {
+                case 2:
+                    bibType = bib3Type;
+                    break;
+                case 3:
+                    bibType = bib2Type;
+                    break;
+                case 4:
+                    bibType = bib1Type;
+                    break;
+            }
+            if (bibType != null)
+            {
+                int icon = 0;
+                for (var y = 0; y < bibType.Size.Height; ++y)
+                {
+                    for (var x = 0; x < bibType.Size.Width; ++x, ++icon)
+                    {
+                        if (Metrics.GetCell(new Point(location.X + x, location.Y + building.Type.Size.Height + y - 1), out int subCell))
+                        {
+                            Smudge[subCell] = new Smudge
+                            {
+                                Type = bibType,
+                                Icon = icon,
+                                Data = 0,
+                                Tint = building.Tint
+                            };
+                            building.BibCells.Add(subCell);
+                        }
+                    }
+                }
+            }
+        }
+
+        public Map Clone()
+        {
+            var map = new Map(BasicSection, Theater, Metrics.Size, HouseType,
+                HouseTypes, TheaterTypes, TemplateTypes, TerrainTypes, OverlayTypes, SmudgeTypes,
+                EventTypes, ActionTypes, MissionTypes, DirectionTypes, InfantryTypes, UnitTypes,
+                BuildingTypes, TeamMissionTypes, Waypoints, MovieTypes)
+            {
+                TopLeft = TopLeft,
+                Size = Size
+            };
+
+            map.BeginUpdate();
+
+            MapSection.CopyTo(map.MapSection);
+            BriefingSection.CopyTo(map.BriefingSection);
+            SteamSection.CopyTo(map.SteamSection);
+            Templates.CopyTo(map.Templates);
+            Overlay.CopyTo(map.Overlay);
+            Smudge.CopyTo(map.Smudge);
+            CellTriggers.CopyTo(map.CellTriggers);
+            Array.Copy(Houses, map.Houses, map.Houses.Length);
+
+            foreach (var trigger in Triggers)
+            {
+                map.Triggers.Add(trigger);
+            }
+
+            foreach (var (location, occupier) in Technos)
+            {
+                if (occupier is InfantryGroup infantryGroup)
+                {
+                    var newInfantryGroup = new InfantryGroup();
+                    Array.Copy(infantryGroup.Infantry, newInfantryGroup.Infantry, newInfantryGroup.Infantry.Length);
+                    map.Technos.Add(location, newInfantryGroup);
+                }
+                else if (!(occupier is Building))
+                {
+                    map.Technos.Add(location, occupier);
+                }
+            }
+
+            foreach (var (location, building) in Buildings)
+            {
+                map.Buildings.Add(location, building);
+            }
+
+            map.TeamTypes.AddRange(TeamTypes);
+
+            map.EndUpdate();
+
+            return map;
+        }
+
+        public TGA GeneratePreview(Size previewSize, bool sharpen)
+        {
+            var mapBounds = new Rectangle(
+                Bounds.Left * Globals.OriginalTileWidth,
+                Bounds.Top * Globals.OriginalTileHeight,
+                Bounds.Width * Globals.OriginalTileWidth,
+                Bounds.Height * Globals.OriginalTileHeight
+            );
+            var previewScale = Math.Min(previewSize.Width / (float)mapBounds.Width, previewSize.Height / (float)mapBounds.Height);
+            var scaledSize = new Size((int)(previewSize.Width / previewScale), (int)(previewSize.Height / previewScale));
+
+            using (var fullBitmap = new Bitmap(Metrics.Width * Globals.OriginalTileWidth, Metrics.Height * Globals.OriginalTileHeight))
+            using (var croppedBitmap = new Bitmap(previewSize.Width, previewSize.Height))
+            {
+                var locations = Bounds.Points().ToHashSet();
+                using (var g = Graphics.FromImage(fullBitmap))
+                {
+                    MapRenderer.Render(GameType.None, this, g, locations, MapLayerFlag.Template | MapLayerFlag.Resources, 1);
+                }
+
+                using (var g = Graphics.FromImage(croppedBitmap))
+                {
+                    Matrix transform = new Matrix();
+                    transform.Scale(previewScale, previewScale);
+                    transform.Translate((scaledSize.Width - mapBounds.Width) / 2, (scaledSize.Height - mapBounds.Height) / 2);
+
+                    g.Transform = transform;
+                    g.Clear(Color.Black);
+                    g.DrawImage(fullBitmap, new Rectangle(0, 0, mapBounds.Width, mapBounds.Height), mapBounds, GraphicsUnit.Pixel);
+                }
+
+                fullBitmap.Dispose();
+
+                if (sharpen)
+                {
+                    using (var sharpenedImage = croppedBitmap.Sharpen(1.0f))
+                    {
+                        croppedBitmap.Dispose();
+                        return TGA.FromBitmap(sharpenedImage);
+                    }
+                }
+                else
+                {
+                    return TGA.FromBitmap(croppedBitmap);
+                }
+            }
+        }
+
+        public TGA GenerateMapPreview()
+        {
+            return GeneratePreview(Globals.MapPreviewSize, false);
+        }
+
+        public TGA GenerateWorkshopPreview()
+        {
+            return GeneratePreview(Globals.WorkshopPreviewSize, true);
+        }
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+
+        private void Overlay_CellChanged(object sender, CellChangedEventArgs<Overlay> e)
+        {
+            if (e.OldValue?.Type.IsWall ?? false)
+            {
+                Buildings.Remove(e.OldValue);
+            }
+
+            if (e.Value?.Type.IsWall ?? false)
+            {
+                Buildings.Add(e.Location, e.Value);
+            }
+
+            if (updating)
+            {
+                return;
+            }
+
+            foreach (var overlay in new Overlay[] { e.OldValue, e.Value })
+            {
+                if (overlay == null)
+                {
+                    continue;
+                }
+
+                MapLayerFlag layer = MapLayerFlag.None;
+                if (overlay.Type.IsResource)
+                {
+                    layer = MapLayerFlag.Resources;
+                }
+                else if (overlay.Type.IsWall)
+                {
+                    layer = MapLayerFlag.Walls;
+                }
+                else
+                {
+                    continue;
+                }
+
+                if (!invalidateLayers.TryGetValue(layer, out ISet<Point> locations))
+                {
+                    locations = new HashSet<Point>();
+                    invalidateLayers[layer] = locations;
+                }
+
+                locations.UnionWith(Rectangle.Inflate(new Rectangle(e.Location, new Size(1, 1)), 1, 1).Points());
+            }
+
+            if (updateCount == 0)
+            {
+                Update();
+            }
+        }
+
+        private void Technos_OccupierAdded(object sender, OccupierAddedEventArgs<ICellOccupier> e)
+        {
+            if (e.Occupier is ICellOverlapper overlapper)
+            {
+                if (updateCount == 0)
+                {
+                    Overlappers.Add(e.Location, overlapper);
+                }
+                else
+                {
+                    invalidateOverlappers = true;
+                }
+            }
+        }
+
+        private void Technos_OccupierRemoved(object sender, OccupierRemovedEventArgs<ICellOccupier> e)
+        {
+            if (e.Occupier is ICellOverlapper overlapper)
+            {
+                if (updateCount == 0)
+                {
+                    Overlappers.Remove(overlapper);
+                }
+                else
+                {
+                    invalidateOverlappers = true;
+                }
+            }
+        }
+
+        private void Buildings_OccupierAdded(object sender, OccupierAddedEventArgs<ICellOccupier> e)
+        {
+            if (e.Occupier is Building building)
+            {
+                Technos.Add(e.Location, e.Occupier, building.Type.BaseOccupyMask);
+                AddBibs(e.Location, building);
+            }
+            else
+            {
+                Technos.Add(e.Location, e.Occupier);
+            }
+        }
+
+        private void Buildings_OccupierRemoved(object sender, OccupierRemovedEventArgs<ICellOccupier> e)
+        {
+            if (e.Occupier is Building building)
+            {
+                RemoveBibs(building);
+            }
+
+            Technos.Remove(e.Occupier);
+        }
+
+        private void Triggers_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
+        {
+            foreach (var (_, building) in Buildings.OfType<Building>())
+            {
+                if (!string.IsNullOrEmpty(building.Trigger))
+                {
+                    if (Triggers.Where(t => building.Trigger.Equals(t.Name)).FirstOrDefault() == null)
+                    {
+                        building.Trigger = Trigger.None;
+                    }
+                }
+            }
+        }
+    }
+}

+ 96 - 0
CnCTDRAMapEditor/Model/MapSection.cs

@@ -0,0 +1,96 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Globalization;
+using System.Linq;
+using System.Runtime.CompilerServices;
+
+namespace MobiusEditor.Model
+{
+    public class TheaterTypeConverter : TypeConverter
+    {
+        public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType)
+        {
+            return (context is MapContext) && (sourceType == typeof(string));
+        }
+
+        public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType)
+        {
+            return (context is MapContext) && (destinationType == typeof(string));
+        }
+
+        public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
+        {
+            if (!(value is TheaterType) || !CanConvertTo(context, destinationType))
+            {
+                return null;
+            }
+
+            return (value as TheaterType)?.Name;
+        }
+
+        public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
+        {
+            if (!CanConvertFrom(context, value?.GetType()))
+            {
+                return null;
+            }
+
+            var map = (context as MapContext).Map;
+            return map.TheaterTypes.Where(t => t.Equals(value)).FirstOrDefault() ?? map.TheaterTypes.First();
+        }
+    }
+
+    public class MapSection : INotifyPropertyChanged
+    {
+        public event PropertyChangedEventHandler PropertyChanged;
+
+        private int x;
+        [DefaultValue(0)]
+        public int X { get => x; set => SetField(ref x, value); }
+
+        private int y;
+        [DefaultValue(0)]
+        public int Y { get => y; set => SetField(ref y, value); }
+
+        private int width;
+        [DefaultValue(0)]
+        public int Width { get => width; set => SetField(ref width, value); }
+
+        private int height;
+        [DefaultValue(0)]
+        public int Height { get => height; set => SetField(ref height, value); }
+
+        private TheaterType theater;
+        [TypeConverter(typeof(TheaterTypeConverter))]
+        [DefaultValue(null)]
+        public TheaterType Theater { get => theater; set => SetField(ref theater, value); }
+
+        protected bool SetField<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
+        {
+            if (EqualityComparer<T>.Default.Equals(field, value))
+            {
+                return false;
+            }
+            field = value;
+            OnPropertyChanged(propertyName);
+            return true;
+        }
+
+        protected void OnPropertyChanged(string propertyName) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+    }
+}

+ 250 - 0
CnCTDRAMapEditor/Model/OccupierSet.cs

@@ -0,0 +1,250 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Drawing;
+using System.Linq;
+
+namespace MobiusEditor.Model
+{
+    public class OccupierAddedEventArgs<T> : EventArgs
+    {
+        public readonly int Cell;
+
+        public readonly Point Location;
+
+        public readonly T Occupier;
+
+        public OccupierAddedEventArgs(CellMetrics metrics, int cell, T occupier)
+        {
+            Cell = cell;
+            metrics.GetLocation(cell, out Location);
+            Occupier = occupier;
+        }
+
+        public OccupierAddedEventArgs(CellMetrics metrics, Point location, T occupier)
+        {
+            Location = location;
+            metrics.GetCell(location, out Cell);
+            Occupier = occupier;
+        }
+    }
+
+    public class OccupierRemovedEventArgs<T> : EventArgs
+    {
+        public readonly int Cell;
+
+        public readonly Point Location;
+
+        public readonly T Occupier;
+
+        public OccupierRemovedEventArgs(CellMetrics metrics, int cell, T occupier)
+        {
+            Cell = cell;
+            metrics.GetLocation(cell, out Location);
+            Occupier = occupier;
+        }
+
+        public OccupierRemovedEventArgs(CellMetrics metrics, Point location, T occupier)
+        {
+            Location = location;
+            metrics.GetCell(location, out Cell);
+            Occupier = occupier;
+        }
+    }
+
+    public class OccupierSet<T> : IEnumerable<(Point Location, T Occupier)>, IEnumerable where T : class, ICellOccupier
+    {
+        private readonly CellMetrics metrics;
+        private readonly Dictionary<T, Point> occupiers = new Dictionary<T, Point>();
+        private readonly T[,] occupierCells;
+
+        public T this[Point location] => this[location.X, location.Y];
+
+        public T this[int x, int y] => Contains(x, y) ? occupierCells[y, x] : null;
+
+        public T this[int cell] => metrics.GetLocation(cell, out Point location) ? this[location] : null;
+
+        public Point? this[T occupier] => occupiers.ContainsKey(occupier) ? occupiers[occupier] : default;
+
+        public IEnumerable<T> Occupiers => occupiers.Keys;
+
+        public event EventHandler<OccupierAddedEventArgs<T>> OccupierAdded;
+        public event EventHandler<OccupierRemovedEventArgs<T>> OccupierRemoved;
+        public event EventHandler<EventArgs> Cleared;
+
+        public OccupierSet(CellMetrics metrics)
+        {
+            this.metrics = metrics;
+            occupierCells = new T[metrics.Height, metrics.Width];
+        }
+
+        public bool CanAdd(Point location, T occupier, bool[,] occupyMask)
+        {
+            if ((occupier == null) || Contains(occupier))
+            {
+                return false;
+            }
+
+            var occupyPoints = GetOccupyPoints(location, occupyMask).ToArray();
+            return !occupyPoints.Any(p => !Contains(p) || (this[p] != null));
+        }
+
+        public bool CanAdd(int x, int y, T occupier, bool[,] occupyMask) => CanAdd(new Point(x, y), occupier, occupyMask);
+
+        public bool CanAdd(int cell, T occupier, bool[,] occupyMask) => metrics.GetLocation(cell, out Point location) ? CanAdd(location, occupier, occupyMask) : false;
+
+        public bool CanAdd(Point location, T occupier) => (occupier != null) ? CanAdd(location, occupier, occupier.OccupyMask) : false;
+
+        public bool CanAdd(int x, int y, T occupier) => (occupier != null) ? CanAdd(x, y, occupier, occupier.OccupyMask) : false;
+
+        public bool CanAdd(int cell, T occupier) => (occupier != null) ? CanAdd(cell, occupier, occupier.OccupyMask) : false;
+
+        public bool Add(Point location, T occupier, bool[,] occupyMask)
+        {
+            if (!DoAdd(location, occupier, occupyMask))
+            {
+                return false;
+            }
+
+            OnOccupierAdded(new OccupierAddedEventArgs<T>(metrics, location, occupier));
+            return true;
+        }
+
+        public bool Add(int x, int y, T occupier, bool[,] occupyMask) => Add(new Point(x, y), occupier, occupyMask);
+
+        public bool Add(int cell, T occupier, bool[,] occupyMask) => metrics.GetLocation(cell, out Point location) ? Add(location, occupier, occupyMask) : false;
+
+        public bool Add(Point location, T occupier) => (occupier != null) ? Add(location, occupier, occupier.OccupyMask) : false;
+
+        public bool Add(int x, int y, T occupier) => (occupier != null) ? Add(x, y, occupier, occupier.OccupyMask) : false;
+
+        public bool Add(int cell, T occupier) => (occupier != null) ? Add(cell, occupier, occupier.OccupyMask) : false;
+
+        public void Clear()
+        {
+            occupiers.Clear();
+            Array.Clear(occupierCells, 0, occupierCells.Length);
+            OnCleared();
+        }
+
+        public bool Contains(int x, int y) => ((x >= 0) && (x < occupierCells.GetLength(1)) && (y >= 0) && (y < occupierCells.GetLength(0)));
+
+        public bool Contains(Point location) => Contains(location.X, location.Y);
+
+        public bool Contains(int cell) => metrics.GetLocation(cell, out Point location) ? Contains(location) : false;
+
+        public bool Contains(T occupier) => occupiers.ContainsKey(occupier);
+
+        public IEnumerator<(Point Location, T Occupier)> GetEnumerator() => occupiers.Select(kv => (kv.Value, kv.Key)).GetEnumerator();
+
+        public bool Remove(T occupier)
+        {
+            var oldLocation = this[occupier];
+            if (!DoRemove(occupier))
+            {
+                return false;
+            }
+
+            OnOccupierRemoved(new OccupierRemovedEventArgs<T>(metrics, oldLocation.Value, occupier));
+            return true;
+        }
+
+        public bool Remove(Point location) => Remove(this[location]);
+
+        public bool Remove(int x, int y) => Remove(new Point(x, y));
+
+        public bool Remove(int cell) => metrics.GetLocation(cell, out Point location) ? Remove(location) : false;
+
+        public IEnumerable<(Point Location, U Occupier)> OfType<U>() where U : T => this.Where(i => i.Occupier is U).Select(i => (i.Location, (U)i.Occupier));
+
+        protected virtual void OnOccupierAdded(OccupierAddedEventArgs<T> e)
+        {
+            OccupierAdded?.Invoke(this, e);
+        }
+
+        protected virtual void OnOccupierRemoved(OccupierRemovedEventArgs<T> e)
+        {
+            OccupierRemoved?.Invoke(this, e);
+        }
+
+        protected virtual void OnCleared()
+        {
+            Cleared?.Invoke(this, new EventArgs());
+        }
+
+        IEnumerator IEnumerable.GetEnumerator() => GetEnumerator();
+
+        private bool DoAdd(Point location, T occupier, bool[,] occupyMask)
+        {
+            if ((occupier == null) || Contains(occupier))
+            {
+                return false;
+            }
+
+            var occupyPoints = GetOccupyPoints(location, occupyMask).ToArray();
+            if (occupyPoints.Any(p => !Contains(p) || (this[p] != null)))
+            {
+                return false;
+            }
+
+            occupiers[occupier] = location;
+            foreach (var p in occupyPoints)
+            {
+                occupierCells[p.Y, p.X] = occupier;
+            }
+            return true;
+        }
+
+        private bool DoRemove(T occupier)
+        {
+            if ((occupier == null) || !occupiers.TryGetValue(occupier, out Point location))
+            {
+                return false;
+            }
+
+            occupiers.Remove(occupier);
+            for (var y = location.Y; y < metrics.Height; ++y)
+            {
+                for (var x = location.X; x < metrics.Width; ++x)
+                {
+                    if (occupierCells[y, x] == occupier)
+                    {
+                        occupierCells[y, x] = null;
+                    }
+                }
+            }
+            return true;
+        }
+
+        private static IEnumerable<Point> GetOccupyPoints(Point location, bool[,] occupyMask)
+        {
+            for (var y = 0; y < occupyMask.GetLength(0); ++y)
+            {
+                for (var x = 0; x < occupyMask.GetLength(1); ++x)
+                {
+                    if (occupyMask[y, x])
+                    {
+                        yield return location + new Size(x, y);
+                    }
+                }
+            }
+        }
+
+        private static IEnumerable<Point> GetOccupyPoints(Point location, T occupier) => GetOccupyPoints(location, occupier.OccupyMask);
+    }
+}

+ 107 - 0
CnCTDRAMapEditor/Model/OverlapperSet.cs

@@ -0,0 +1,107 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Utility;
+using System.Collections;
+using System.Collections.Generic;
+using System.Drawing;
+using System.Linq;
+
+namespace MobiusEditor.Model
+{
+    public class OverlapperSet<T> : IEnumerable<(Point Location, T Overlapper)>, IEnumerable where T : class, ICellOverlapper
+    {
+        private readonly CellMetrics metrics;
+        private readonly Dictionary<T, Rectangle> overlappers = new Dictionary<T, Rectangle>();
+
+        public Rectangle? this[T overlapper] => Contains(overlapper) ? overlappers[overlapper] : default;
+
+        public IEnumerable<T> Overlappers => overlappers.Keys;
+
+        public OverlapperSet(CellMetrics metrics)
+        {
+            this.metrics = metrics;
+        }
+
+        public bool Add(Point location, T overlapper)
+        {
+            if ((overlapper == null) || Contains(overlapper))
+            {
+                return false;
+            }
+
+            var rectangle = overlapper.OverlapBounds;
+            rectangle.Offset(location);
+            overlappers[overlapper] = rectangle;
+            return true;
+        }
+
+        public bool Add(int x, int y, T occupier) => Add(new Point(x, y), occupier);
+
+        public bool Add(int cell, T overlapper) => metrics.GetLocation(cell, out Point location) ? Add(location, overlapper) : false;
+
+        public void Clear() => overlappers.Clear();
+
+        public bool Contains(T occupier) => overlappers.ContainsKey(occupier);
+
+        public void CopyTo(OverlapperSet<T> other)
+        {
+            foreach (var (Location, Occupier) in this)
+            {
+                other.Add(Location, Occupier);
+            }
+        }
+
+        public IEnumerator<(Point Location, T Overlapper)> GetEnumerator() => overlappers.Select(kv => (kv.Value.Location, kv.Key)).GetEnumerator();
+
+        public bool Remove(T overlapper)
+        {
+            if ((overlapper == null) || !overlappers.TryGetValue(overlapper, out Rectangle overlapRect))
+            {
+                return false;
+            }
+
+            overlappers.Remove(overlapper);
+            return true;
+        }
+
+        public ISet<Point> Overlaps(IEnumerable<Rectangle> rectangles)
+        {
+            var rectangleSet = new HashSet<Rectangle>(rectangles);
+            while (true)
+            {
+                var count = rectangleSet.Count;
+                var overlap = overlappers.Values.Where(x => rectangleSet.Any(y => x.IntersectsWith(y))).ToArray();
+                rectangleSet.UnionWith(overlap);
+                if (rectangleSet.Count == count)
+                {
+                    break;
+                }
+            }
+
+            return rectangleSet.SelectMany(x => x.Points()).ToHashSet();
+        }
+
+        public ISet<Point> Overlaps(Rectangle rectangle) => Overlaps(rectangle.Yield());
+
+        public ISet<Point> Overlaps(IEnumerable<Point> points) => Overlaps(points.Select(p => new Rectangle(p, new Size(1, 1))));
+
+        public ISet<Point> Overlaps(Point point) => Overlaps(point.Yield());
+
+        public IEnumerable<(Point Location, U Overlapper)> OfType<U>() where U : T => this.Where(i => i.Overlapper is U).Select(i => (i.Location, (U)i.Overlapper));
+
+        IEnumerator IEnumerable.GetEnumerator() => GetEnumerator();
+    }
+}

+ 32 - 0
CnCTDRAMapEditor/Model/Overlay.cs

@@ -0,0 +1,32 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    public class Overlay : ICellOccupier
+    {
+        public OverlayType Type { get; set; }
+
+        public int Icon { get; set; }
+
+        public Size OverlapSize => new Size(1, 1);
+
+        public bool[,] OccupyMask => Type.OccupyMask;
+
+        public Color Tint { get; set; } = Color.White;
+    }
+}

+ 128 - 0
CnCTDRAMapEditor/Model/OverlayType.cs

@@ -0,0 +1,128 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Utility;
+using System;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    [Flags]
+    public enum OverlayTypeFlag
+    {
+        None            = 0,
+        TiberiumOrGold  = (1 << 0),
+        Gems            = (1 << 1),
+        Wall            = (1 << 2),
+        Crate           = (1 << 3),
+        Flag            = (1 << 4),
+    }
+
+    public class OverlayType : ICellOccupier, IBrowsableType
+    {
+        public sbyte ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public string DisplayName { get; private set; }
+
+        public TheaterType[] Theaters { get; private set; }
+
+        public OverlayTypeFlag Flag { get; private set; }
+
+        public Image Thumbnail { get; set; }
+
+        public bool[,] OccupyMask => new bool[1, 1] { { true } };
+
+        public bool IsResource => (Flag & (OverlayTypeFlag.TiberiumOrGold | OverlayTypeFlag.Gems)) != OverlayTypeFlag.None;
+
+        public bool IsTiberiumOrGold => (Flag & OverlayTypeFlag.TiberiumOrGold) != OverlayTypeFlag.None;
+
+        public bool IsGem => (Flag & OverlayTypeFlag.Gems) != OverlayTypeFlag.None;
+
+        public bool IsWall => (Flag & OverlayTypeFlag.Wall) != OverlayTypeFlag.None;
+
+        public bool IsCrate => (Flag & OverlayTypeFlag.Crate) != OverlayTypeFlag.None;
+
+        public bool IsFlag => (Flag & OverlayTypeFlag.Flag) != OverlayTypeFlag.None;
+
+        public bool IsPlaceable => (Flag & ~OverlayTypeFlag.Crate) == OverlayTypeFlag.None;
+
+        public OverlayType(sbyte id, string name, string textId, TheaterType[] theaters, OverlayTypeFlag flag)
+        {
+            ID = id;
+            Name = name;
+            DisplayName = Globals.TheGameTextManager[textId];
+            Theaters = theaters;
+            Flag = flag;
+        }
+
+        public OverlayType(sbyte id, string name, string textId, OverlayTypeFlag flag)
+            : this(id, name, textId, null, flag)
+        {
+        }
+
+        public OverlayType(sbyte id, string name, string textId, TheaterType[] theaters)
+            : this(id, name, textId, theaters, OverlayTypeFlag.None)
+        {
+        }
+
+        public OverlayType(sbyte id, string name, OverlayTypeFlag flag)
+            : this(id, name, name, null, flag)
+        {
+        }
+
+        public OverlayType(sbyte id, string name, string textId)
+            : this(id, name, textId, null, OverlayTypeFlag.None)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is OverlayType)
+            {
+                return this == obj;
+            }
+            else if (obj is sbyte)
+            {
+                return ID == (sbyte)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+
+        public void Init(TheaterType theater)
+        {
+            if (Globals.TheTilesetManager.GetTileData(theater.Tilesets, Name, 0, out Tile tile))
+            {
+                Thumbnail = new Bitmap(tile.Image, tile.Image.Width, tile.Image.Height);
+            }
+        }
+    }
+}

+ 30 - 0
CnCTDRAMapEditor/Model/Smudge.cs

@@ -0,0 +1,30 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    public class Smudge
+    {
+        public SmudgeType Type { get; set; }
+
+        public int Icon { get; set; }
+
+        public int Data { get; set; }
+
+        public Color Tint { get; set; } = Color.White;
+    }
+}

+ 116 - 0
CnCTDRAMapEditor/Model/SmudgeType.cs

@@ -0,0 +1,116 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Utility;
+using System;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    [Flags]
+    public enum SmudgeTypeFlag
+    {
+        None = 0,
+        Bib = 1,
+        Bib1 = 3,
+        Bib2 = 5,
+        Bib3 = 9,
+    }
+
+    public class SmudgeType : IBrowsableType
+    {
+        public sbyte ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public string DisplayName => Name;
+
+        public Size Size { get; set; }
+
+        public SmudgeTypeFlag Flag { get; private set; }
+
+        public Size RenderSize { get; set; }
+
+        public Image Thumbnail { get; set; }
+
+        public SmudgeType(sbyte id, string name, Size size, SmudgeTypeFlag flag)
+        {
+            ID = id;
+            Name = name;
+            Size = size;
+            Flag = flag;
+        }
+
+        public SmudgeType(sbyte id, string name, Size size)
+            : this(id, name, size, SmudgeTypeFlag.None)
+        {
+        }
+
+        public SmudgeType(sbyte id, string name)
+            : this(id, name, new Size(1, 1), SmudgeTypeFlag.None)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is SmudgeType)
+            {
+                return this == obj;
+            }
+            else if (obj is sbyte)
+            {
+                return ID == (sbyte)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+
+        public void Init(TheaterType theater)
+        {
+            if (Globals.TheTilesetManager.GetTileData(theater.Tilesets, Name, 0, out Tile tile))
+            {
+                if ((tile.Image.Width * Globals.TileHeight) > (tile.Image.Height * Globals.TileWidth))
+                {
+                    RenderSize = new Size(
+                        tile.Image.Width * Globals.TileWidth / tile.Image.Width,
+                        tile.Image.Height * Globals.TileWidth / tile.Image.Width
+                    );
+                }
+                else
+                {
+                    RenderSize = new Size(
+                        tile.Image.Width * Globals.TileHeight / tile.Image.Height,
+                        tile.Image.Height * Globals.TileHeight / tile.Image.Height
+                    );
+                }
+                Thumbnail = new Bitmap(tile.Image, tile.Image.Width, tile.Image.Height);
+            }
+        }
+    }
+}

+ 37 - 0
CnCTDRAMapEditor/Model/SteamSection.cs

@@ -0,0 +1,37 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using Steamworks;
+using System.ComponentModel;
+
+namespace MobiusEditor.Model
+{
+    public class SteamSection
+    {
+        [DefaultValue(null)]
+        public string Title { get; set; }
+
+        [DefaultValue(null)]
+        public string Description { get; set; }
+
+        [DefaultValue(null)]
+        public string PreviewFile { get; set; }
+
+        [DefaultValue(ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityPublic)]
+        public ERemoteStoragePublishedFileVisibility Visibility { get; set; }
+
+        [DefaultValue(typeof(ulong), "0")]
+        public ulong PublishedFileId { get; set; }
+    }
+}

+ 158 - 0
CnCTDRAMapEditor/Model/TeamType.cs

@@ -0,0 +1,158 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace MobiusEditor.Model
+{
+    public class TeamTypeClass : ICloneable
+    {
+        public ITechnoType Type { get; set; }
+
+        public byte Count { get; set; }
+
+        public TeamTypeClass Clone()
+        {
+            return new TeamTypeClass()
+            {
+                Type = Type,
+                Count = Count
+            };
+        }
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+
+    public class TeamTypeMission : ICloneable
+    {
+        public string Mission { get; set; }
+
+        public int Argument { get; set; }
+
+        public TeamTypeMission Clone()
+        {
+            return new TeamTypeMission()
+            {
+                Mission = Mission,
+                Argument = Argument
+            };
+        }
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+
+    public class TeamType : INamedType, ICloneable
+    {
+        public static readonly string None = "None";
+
+        public string Name { get; set; }
+
+        public HouseType House { get; set; }
+
+        public bool IsRoundAbout { get; set; }
+
+        public bool IsLearning { get; set; }
+
+        public bool IsSuicide { get; set; }
+
+        public bool IsAutocreate { get; set; }
+
+        public bool IsMercenary { get; set; }
+
+        public int RecruitPriority { get; set; }
+
+        public byte MaxAllowed { get; set; }
+
+        public byte InitNum { get; set; }
+
+        public byte Fear { get; set; }
+
+        public bool IsReinforcable { get; set; }
+
+        public bool IsPrebuilt { get; set; }
+
+        public int Origin { get; set; }
+
+        public string Trigger { get; set; } = Model.Trigger.None;
+
+        public List<TeamTypeClass> Classes { get; } = new List<TeamTypeClass>();
+
+        public List<TeamTypeMission> Missions { get; } = new List<TeamTypeMission>();
+
+        public TeamType Clone()
+        {
+            var teamType = new TeamType()
+            {
+                Name = Name,
+                House = House,
+                IsRoundAbout = IsRoundAbout,
+                IsLearning = IsLearning,
+                IsSuicide = IsSuicide,
+                IsAutocreate = IsAutocreate,
+                IsMercenary = IsMercenary,
+                RecruitPriority = RecruitPriority,
+                MaxAllowed = MaxAllowed,
+                InitNum = InitNum,
+                Fear = Fear,
+                IsReinforcable = IsReinforcable,
+                IsPrebuilt = IsPrebuilt,
+                Origin = Origin,
+                Trigger = Trigger
+            };
+
+            teamType.Classes.AddRange(Classes.Select(c => c.Clone()));
+            teamType.Missions.AddRange(Missions.Select(m => m.Clone()));
+
+            return teamType;
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is TeamType)
+            {
+                return this == obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return Name.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+}

+ 30 - 0
CnCTDRAMapEditor/Model/Template.cs

@@ -0,0 +1,30 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    public class Template : ICellOccupier
+    {
+        public TemplateType Type { get; set; }
+
+        public int Icon { get; set; }
+
+        public Size OverlapSize => new Size(1, 1);
+
+        public bool[,] OccupyMask => new bool[1, 1] { { true } };
+    }
+}

+ 133 - 0
CnCTDRAMapEditor/Model/TemplateType.cs

@@ -0,0 +1,133 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Utility;
+using System;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    [Flags]
+    public enum TemplateTypeFlag
+    {
+        None    = 0,
+        Clear   = (1 << 1),
+        Water   = (1 << 2),
+        OreMine = (1 << 3),
+    }
+
+    public class TemplateType : IBrowsableType
+    {
+        public ushort ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public string DisplayName => Name;
+
+        public int IconWidth { get; private set; }
+
+        public int IconHeight { get; private set; }
+
+        public Size IconSize => new Size(IconWidth, IconHeight);
+
+        public int NumIcons => IconWidth * IconHeight;
+
+        public bool[,] IconMask { get; set; }
+
+        public Image Thumbnail { get; set; }
+
+        public TheaterType[] Theaters { get; private set; }
+
+        public TemplateTypeFlag Flag { get; private set; }
+
+        public TemplateType(ushort id, string name, int iconWidth, int iconHeight, TheaterType[] theaters, TemplateTypeFlag flag)
+        {
+            ID = id;
+            Name = name;
+            IconWidth = iconWidth;
+            IconHeight = iconHeight;
+            Theaters = theaters;
+            Flag = flag;
+        }
+
+        public TemplateType(ushort id, string name, int iconWidth, int iconHeight, TheaterType[] theaters)
+            : this(id, name, iconWidth, iconHeight, theaters, TemplateTypeFlag.None)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is TemplateType)
+            {
+                return this == obj;
+            }
+            else if (obj is byte)
+            {
+                return ID == (byte)obj;
+            }
+            else if (obj is ushort)
+            {
+                return ID == (ushort)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+
+        public void Init(TheaterType theater)
+        {
+            var size = new Size(Globals.OriginalTileWidth / 4, Globals.OriginalTileWidth / 4);
+            var iconSize = Math.Max(IconWidth, IconHeight);
+            var thumbnail = new Bitmap(iconSize * size.Width, iconSize * size.Height);
+            var mask = new bool[IconWidth, IconHeight];
+            Array.Clear(mask, 0, mask.Length);
+
+            bool found = false;
+            using (var g = Graphics.FromImage(thumbnail))
+            {
+                g.Clear(Color.Transparent);
+
+                int icon = 0;
+                for (var y = 0; y < IconHeight; ++y)
+                {
+                    for (var x = 0; x < IconWidth; ++x, ++icon)
+                    {
+                        if (Globals.TheTilesetManager.GetTileData(theater.Tilesets, Name, icon, out Tile tile))
+                        {
+                            g.DrawImage(tile.Image, x * size.Width, y * size.Height, size.Width, size.Height);
+                            found = mask[x, y] = true;
+                        }
+                    }
+                }
+            }
+
+            Thumbnail = found ? thumbnail : null;
+            IconMask = mask;
+        }
+    }
+}

+ 71 - 0
CnCTDRAMapEditor/Model/Terrain.cs

@@ -0,0 +1,71 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Runtime.CompilerServices;
+using MobiusEditor.Interface;
+
+namespace MobiusEditor.Model
+{
+    public class Terrain : ICellOverlapper, ICellOccupier, INotifyPropertyChanged, ICloneable
+    {
+        public event PropertyChangedEventHandler PropertyChanged;
+
+        private TerrainType type;
+        public TerrainType Type { get => type; set => SetField(ref type, value); }
+
+        private int icon;
+        public int Icon { get => icon; set => SetField(ref icon, value); }
+
+        public Rectangle OverlapBounds => Type.OverlapBounds;
+
+        public bool[,] OccupyMask => Type.OccupyMask;
+
+        private string trigger = Model.Trigger.None;
+        public string Trigger { get => trigger; set => SetField(ref trigger, value); }
+
+        public Color Tint { get; set; } = Color.White;
+
+        public Terrain Clone()
+        {
+            return new Terrain()
+            {
+                Type = Type,
+                Icon = Icon,
+                Trigger = Trigger
+            };
+        }
+
+        protected bool SetField<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
+        {
+            if (EqualityComparer<T>.Default.Equals(field, value))
+            {
+                return false;
+            }
+            field = value;
+            OnPropertyChanged(propertyName);
+            return true;
+        }
+
+        protected void OnPropertyChanged(string propertyName) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+}

+ 117 - 0
CnCTDRAMapEditor/Model/TerrainType.cs

@@ -0,0 +1,117 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Utility;
+using System;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    public class TerrainType : ICellOverlapper, ICellOccupier, IBrowsableType
+    {
+        public sbyte ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public string DisplayName => Name;
+
+        public Rectangle OverlapBounds => new Rectangle(
+            Point.Empty,
+            new Size(((RenderSize.Width + Globals.TileWidth - 1) / Globals.TileWidth), ((RenderSize.Height + Globals.TileHeight - 1) / Globals.TileHeight))
+        );
+
+        public bool[,] OccupyMask { get; private set; }
+
+        public Size Size => new Size(OccupyMask.GetLength(1), OccupyMask.GetLength(0));
+
+        public TheaterType[] Theaters { get; private set; }
+
+        public bool IsTransformable { get; private set; }
+
+        public TemplateTypeFlag TemplateType { get; private set; }
+
+        public Size RenderSize { get; set; }
+
+        public Image Thumbnail { get; set; }
+
+        public TerrainType(sbyte id, string name, TheaterType[] theaters, bool[,] occupyMask, bool isTransformable, TemplateTypeFlag templateType)
+        {
+            ID = id;
+            Name = name;
+            Theaters = theaters;
+            OccupyMask = occupyMask;
+            IsTransformable = isTransformable;
+            TemplateType = templateType;
+        }
+
+        public TerrainType(sbyte id, string name, TheaterType[] theaters, bool[,] occupyMask, bool isTransformable)
+            : this(id, name, theaters, occupyMask, isTransformable, TemplateTypeFlag.None)
+        {
+        }
+
+        public TerrainType(sbyte id, string name, TheaterType[] theaters, bool[,] occupyMask, TemplateTypeFlag templateType)
+            : this(id, name, theaters, occupyMask, false, templateType)
+        {
+        }
+
+        public TerrainType(sbyte id, string name, TheaterType[] theaters, bool[,] occupyMask)
+            : this(id, name, theaters, occupyMask, false, TemplateTypeFlag.None)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is TerrainType)
+            {
+                return this == obj;
+            }
+            else if (obj is sbyte)
+            {
+                return ID == (sbyte)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+
+        public void Init(TheaterType theater)
+        {
+            string tileName = Name;
+            if ((TemplateType & TemplateTypeFlag.OreMine) != TemplateTypeFlag.None)
+            {
+                tileName = "OREMINE";
+            }
+
+            if (Globals.TheTilesetManager.GetTileData(theater.Tilesets, tileName, IsTransformable ? 22 : 0, out Tile tile))
+            {
+                RenderSize = new Size(tile.Image.Width / Globals.TileScale, tile.Image.Height / Globals.TileScale);
+                Thumbnail = new Bitmap(tile.Image, tile.Image.Width / 2, tile.Image.Height / 2);
+            }
+        }
+    }
+}

+ 63 - 0
CnCTDRAMapEditor/Model/TheaterType.cs

@@ -0,0 +1,63 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System;
+using System.Collections.Generic;
+
+namespace MobiusEditor.Model
+{
+    public class TheaterType
+    {
+        public sbyte ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public IEnumerable<string> Tilesets { get; private set; }
+
+        public TheaterType(sbyte id, string name, IEnumerable<string> tilesets)
+        {
+            ID = id;
+            Name = name;
+            Tilesets = tilesets;
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is TheaterType)
+            {
+                return this == obj;
+            }
+            else if (obj is sbyte)
+            {
+                return ID == (sbyte)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+    }
+}

+ 154 - 0
CnCTDRAMapEditor/Model/Trigger.cs

@@ -0,0 +1,154 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System;
+
+namespace MobiusEditor.Model
+{
+    public enum TriggerPersistantType
+    {
+        Volatile = 0,
+        SemiPersistant = 1,
+        Persistant = 2
+    }
+
+    public enum TriggerMultiStyleType
+    {
+        Only = 0,
+        And = 1,
+        Or = 2,
+        Linked = 3
+    }
+
+    public class TriggerEvent : ICloneable
+    {
+        public static readonly string None = "None";
+
+        public string EventType { get; set; }
+
+        public string Team { get; set; }
+
+        public long Data { get; set; }
+
+        public TriggerEvent Clone()
+        {
+            return new TriggerEvent()
+            {
+                EventType = EventType,
+                Team = Team,
+                Data = Data
+            };
+        }
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+
+    public class TriggerAction : ICloneable
+    {
+        public static readonly string None = "None";
+
+        public string ActionType { get; set; }
+
+        public string Trigger { get; set; }
+
+        public string Team { get; set; }
+
+        public long Data { get; set; }
+
+        public TriggerAction Clone()
+        {
+            return new TriggerAction()
+            {
+                ActionType = ActionType,
+                Trigger = Trigger,
+                Team = Team,
+                Data = Data
+            };
+        }
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+
+    public class Trigger : INamedType, ICloneable
+    {
+        public static readonly string None = "None";
+
+        public string Name { get; set; }
+
+        public TriggerPersistantType PersistantType { get; set; } = TriggerPersistantType.Volatile;
+
+        public string House { get; set; }
+
+        public TriggerMultiStyleType EventControl { get; set; } = TriggerMultiStyleType.Only;
+
+        public TriggerEvent Event1 { get; private set; } = new TriggerEvent { EventType = TriggerEvent.None };
+
+        public TriggerEvent Event2 { get; private set; } = new TriggerEvent { EventType = TriggerEvent.None };
+
+        public TriggerAction Action1 { get; private set; } = new TriggerAction { ActionType = TriggerEvent.None };
+
+        public TriggerAction Action2 { get; private set; } = new TriggerAction { ActionType = TriggerEvent.None };
+
+        public Trigger Clone()
+        {
+            return new Trigger()
+            {
+                Name = Name,
+                PersistantType = PersistantType,
+                House = House,
+                EventControl = EventControl,
+                Event1 = Event1.Clone(),
+                Event2 = Event2.Clone(),
+                Action1 = Action1.Clone(),
+                Action2 = Action2.Clone()
+            };
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is Trigger)
+            {
+                return this == obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return Name.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+}

+ 29 - 0
CnCTDRAMapEditor/Model/TypeItem.cs

@@ -0,0 +1,29 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+namespace MobiusEditor.Model
+{
+    public class TypeItem<T>
+    {
+        public string Name { get; private set; }
+
+        public T Type { get; private set; }
+
+        public TypeItem(string name, T type)
+        {
+            Name = name;
+            Type = type;
+        }
+    }
+}

+ 83 - 0
CnCTDRAMapEditor/Model/Unit.cs

@@ -0,0 +1,83 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Runtime.CompilerServices;
+
+namespace MobiusEditor.Model
+{
+    public class Unit : ICellOverlapper, ICellOccupier, INotifyPropertyChanged, ICloneable
+    {
+        public event PropertyChangedEventHandler PropertyChanged;
+
+        private UnitType type;
+        public UnitType Type { get => type; set => SetField(ref type, value); }
+
+        public Rectangle OverlapBounds => Type.OverlapBounds;
+
+        public bool[,] OccupyMask => Type.OccupyMask;
+
+        private HouseType house;
+        public HouseType House { get => house; set => SetField(ref house, value); }
+
+        private int strength;
+        public int Strength { get => strength; set => SetField(ref strength, value); }
+
+        private DirectionType direction;
+        public DirectionType Direction { get => direction; set => SetField(ref direction, value); }
+
+        private string mission;
+        public string Mission { get => mission; set => SetField(ref mission, value); }
+
+        private string trigger = Model.Trigger.None;
+        public string Trigger { get => trigger; set => SetField(ref trigger, value); }
+
+        public Color Tint { get; set; } = Color.White;
+
+        public Unit Clone()
+        {
+            return new Unit()
+            {
+                Type = Type,
+                House = House,
+                Strength = Strength,
+                Direction = Direction,
+                Mission = Mission,
+                Trigger = Trigger
+            };
+        }
+
+        protected bool SetField<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
+        {
+            if (EqualityComparer<T>.Default.Equals(field, value))
+            {
+                return false;
+            }
+            field = value;
+            OnPropertyChanged(propertyName);
+            return true;
+        }
+
+        protected void OnPropertyChanged(string propertyName) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+
+        object ICloneable.Clone()
+        {
+            return Clone();
+        }
+    }
+}

+ 137 - 0
CnCTDRAMapEditor/Model/UnitType.cs

@@ -0,0 +1,137 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using MobiusEditor.Render;
+using MobiusEditor.Utility;
+using System;
+using System.Drawing;
+
+namespace MobiusEditor.Model
+{
+    public static class UnitTypeIDMask
+    {
+        public const sbyte Aircraft   = 1 << 5;
+        public const sbyte Vessel     = 1 << 6;
+    }
+
+    public class UnitType : ICellOverlapper, ICellOccupier, ITechnoType, IBrowsableType
+    {
+        public sbyte ID { get; private set; }
+
+        public string Name { get; private set; }
+
+        public string DisplayName { get; private set; }
+
+        public Rectangle OverlapBounds => new Rectangle(-1, -1, 3, 3);
+
+        public bool[,] OccupyMask => new bool[1, 1] { { true } };
+
+        public string OwnerHouse { get; private set; }
+
+        public bool HasTurret { get; private set; }
+
+        public bool IsFixedWing { get; private set; }
+
+        public bool IsUnit => !IsAircraft && !IsVessel;
+
+        public bool IsAircraft => (ID & UnitTypeIDMask.Aircraft) != 0;
+
+        public bool IsVessel => (ID & UnitTypeIDMask.Vessel) != 0;
+
+        public Size RenderSize { get; set; }
+
+        public Image Thumbnail { get; set; }
+
+        public UnitType(sbyte id, string name, string textId, string ownerHouse, bool hasTurret, bool isFixedWing)
+        {
+            ID = id;
+            Name = name;
+            DisplayName = Globals.TheGameTextManager[textId];
+            OwnerHouse = ownerHouse;
+            HasTurret = hasTurret;
+            IsFixedWing = isFixedWing;
+        }
+
+        public UnitType(sbyte id, string name, string textId, string ownerHouse, bool hasTurret)
+            : this(id, name, textId, ownerHouse, hasTurret, false)
+        {
+        }
+
+        public UnitType(sbyte id, string name, string textId)
+            : this(id, name, textId, null, false)
+        {
+        }
+
+        public UnitType(sbyte id, string name, string textId, string ownerHouse)
+            : this(id, name, textId, ownerHouse, false)
+        {
+        }
+
+        public UnitType(sbyte id, string name, string textId, bool hasTurret)
+            : this(id, name, textId, null, hasTurret)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is UnitType)
+            {
+                return this == obj;
+            }
+            else if (obj is sbyte)
+            {
+                return ID == (sbyte)obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return ID.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+
+        public void Init(GameType gameType, TheaterType theater, HouseType house, DirectionType direction)
+        {
+            if (Globals.TheTilesetManager.GetTileData(theater.Tilesets, Name, 0, out Tile tile))
+            {
+                RenderSize = new Size(tile.Image.Width / Globals.TileScale, tile.Image.Height / Globals.TileScale);
+            }
+
+            var mockUnit = new Unit()
+            {
+                Type = this,
+                House = house,
+                Strength = 256,
+                Direction = direction
+            };
+            var unitThumbnail = new Bitmap(Globals.TileWidth * 3, Globals.TileHeight * 3);
+            using (var g = Graphics.FromImage(unitThumbnail))
+            {
+                MapRenderer.Render(gameType, theater, new Point(1, 1), Globals.TileSize, mockUnit).Item2(g);
+            }
+            Thumbnail = unitThumbnail;
+        }
+    }
+}

+ 69 - 0
CnCTDRAMapEditor/Model/Waypoint.cs

@@ -0,0 +1,69 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Interface;
+using System;
+
+namespace MobiusEditor.Model
+{
+    public enum WaypointFlag
+    {
+        None,
+        PlayerStart
+    }
+
+    public class Waypoint : INamedType
+    {
+        public string Name { get; private set; }
+
+        public WaypointFlag Flag { get; private set; }
+
+        public int? Cell { get; set; }
+
+        public Waypoint(string name, WaypointFlag flag)
+        {
+            Name = name;
+            Flag = flag;
+        }
+
+        public Waypoint(string name)
+            : this(name, WaypointFlag.None)
+        {
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (obj is Waypoint)
+            {
+                return this == obj;
+            }
+            else if (obj is string)
+            {
+                return string.Equals(Name, obj as string, StringComparison.OrdinalIgnoreCase);
+            }
+
+            return base.Equals(obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return Name.GetHashCode();
+        }
+
+        public override string ToString()
+        {
+            return Name;
+        }
+    }
+}

+ 105 - 0
CnCTDRAMapEditor/Program.cs

@@ -0,0 +1,105 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using MobiusEditor.Dialogs;
+using MobiusEditor.Utility;
+using System;
+using System.Globalization;
+using System.IO;
+using System.Threading;
+using System.Windows.Forms;
+
+namespace MobiusEditor
+{
+    static class Program
+    {
+        /// <summary>
+        /// The main entry point for the application.
+        /// </summary>
+        [STAThread]
+        static void Main()
+        {
+            // Change current culture to en-US
+            if (Thread.CurrentThread.CurrentCulture.Name != "en-US")
+            {
+                Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US");
+            }
+
+            // Initialize megafiles
+            var runPath = Environment.CurrentDirectory;
+            Globals.TheMegafileManager = new MegafileManager(runPath);
+
+            var megafilesLoaded = true;
+            var megafilePath = Path.Combine(runPath, "DATA");
+            megafilesLoaded &= Globals.TheMegafileManager.Load(Path.Combine(megafilePath, "CONFIG.MEG"));
+            megafilesLoaded &= Globals.TheMegafileManager.Load(Path.Combine(megafilePath, "TEXTURES_COMMON_SRGB.MEG"));
+            megafilesLoaded &= Globals.TheMegafileManager.Load(Path.Combine(megafilePath, "TEXTURES_RA_SRGB.MEG"));
+            megafilesLoaded &= Globals.TheMegafileManager.Load(Path.Combine(megafilePath, "TEXTURES_SRGB.MEG"));
+            megafilesLoaded &= Globals.TheMegafileManager.Load(Path.Combine(megafilePath, "TEXTURES_TD_SRGB.MEG"));
+#if !DEVELOPER
+            if (!megafilesLoaded)
+            {
+                MessageBox.Show("Required data is missing or corrupt, please validate your installation.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+#endif
+
+            // Initialize texture, tileset, team color, and game text managers
+            Globals.TheTextureManager = new TextureManager(Globals.TheMegafileManager);
+            Globals.TheTilesetManager = new TilesetManager(Globals.TheMegafileManager, Globals.TheTextureManager, Globals.TilesetsXMLPath, Globals.TexturesPath);
+            Globals.TheTeamColorManager = new TeamColorManager(Globals.TheMegafileManager);
+
+            var cultureName = CultureInfo.CurrentUICulture.Name;
+            var gameTextFilename = string.Format(Globals.GameTextFilenameFormat, cultureName.ToUpper());
+            if (!Globals.TheMegafileManager.Exists(gameTextFilename))
+            {
+                gameTextFilename = string.Format(Globals.GameTextFilenameFormat, "EN-US");
+            }
+            Globals.TheGameTextManager = new GameTextManager(Globals.TheMegafileManager, gameTextFilename);
+
+            // Initialize Steam if this is a Steam build
+            if (SteamworksUGC.IsSteamBuild)
+            {
+                if (!SteamworksUGC.Init())
+                {
+#if !DEVELOPER
+                    MessageBox.Show("Unable to initialize Steam interface.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+#endif
+                }
+            }
+
+            Application.EnableVisualStyles();
+            Application.SetCompatibleTextRenderingDefault(false);
+
+            if (Properties.Settings.Default.ShowInviteWarning)
+            {
+                var inviteMessageBox = new InviteMessageBox();
+                inviteMessageBox.ShowDialog();
+
+                Properties.Settings.Default.ShowInviteWarning = !inviteMessageBox.DontShowAgain;
+                Properties.Settings.Default.Save();
+            }
+
+            Application.Run(new MainForm());
+
+            if (SteamworksUGC.IsSteamBuild)
+            {
+                SteamworksUGC.Shutdown();
+            }
+
+            Globals.TheMegafileManager.Dispose();
+        }
+    }
+}

+ 50 - 0
CnCTDRAMapEditor/Properties/AssemblyInfo.cs

@@ -0,0 +1,50 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("CnC TDRA Map Editor")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Electronic Arts Inc.")]
+[assembly: AssemblyProduct("CnC TDRA Map Editor")]
+[assembly: AssemblyCopyright("© 2020 Electronic Arts Inc. All rights reserved.")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components.  If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("397cef00-8930-4ec8-b15f-f7cf7193fb22")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version
+//      Build Number
+//      Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]

+ 87 - 0
CnCTDRAMapEditor/Properties/Resources.Designer.cs

@@ -0,0 +1,87 @@
+//
+// Copyright 2020 Electronic Arts Inc.
+//
+// The Command & Conquer Map Editor and corresponding source code is free 
+// software: you can redistribute it and/or modify it under the terms of 
+// the GNU General Public License as published by the Free Software Foundation, 
+// either version 3 of the License, or (at your option) any later version.
+
+// The Command & Conquer Map Editor and corresponding source code is distributed 
+// in the hope that it will be useful, but with permitted additional restrictions 
+// under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
+// distributed with this program. You should have received a copy of the 
+// GNU General Public License along with permitted additional restrictions 
+// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     This code was generated by a tool.
+//     Runtime Version:4.0.30319.42000
+//
+//     Changes to this file may cause incorrect behavior and will be lost if
+//     the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace MobiusEditor.Properties {
+    using System;
+    
+    
+    /// <summary>
+    ///   A strongly-typed resource class, for looking up localized strings, etc.
+    /// </summary>
+    // This class was auto-generated by the StronglyTypedResourceBuilder
+    // class via a tool like ResGen or Visual Studio.
+    // To add or remove a member, edit your .ResX file then rerun ResGen
+    // with the /str option, or rebuild your VS project.
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+    internal class Resources {
+        
+        private static global::System.Resources.ResourceManager resourceMan;
+        
+        private static global::System.Globalization.CultureInfo resourceCulture;
+        
+        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+        internal Resources() {
+        }
+        
+        /// <summary>
+        ///   Returns the cached ResourceManager instance used by this class.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Resources.ResourceManager ResourceManager {
+            get {
+                if (object.ReferenceEquals(resourceMan, null)) {
+                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("MobiusEditor.Properties.Resources", typeof(Resources).Assembly);
+                    resourceMan = temp;
+                }
+                return resourceMan;
+            }
+        }
+        
+        /// <summary>
+        ///   Overrides the current thread's CurrentUICulture property for all
+        ///   resource lookups using this strongly typed resource class.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Globalization.CultureInfo Culture {
+            get {
+                return resourceCulture;
+            }
+            set {
+                resourceCulture = value;
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized resource of type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap UI_CustomMissionPreviewDefault {
+            get {
+                object obj = ResourceManager.GetObject("UI_CustomMissionPreviewDefault", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+    }
+}

+ 9479 - 0
CnCTDRAMapEditor/Properties/Resources.resx

@@ -0,0 +1,9479 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="UI_CustomMissionPreviewDefault" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAIAAAB7GkOtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAACxMAAAsTAQCanBgAAP+lSURBVHhedL0FfFzH1f4vWBAzs2TLTLJli5mZmZmZZTFL
+        lixZsmxLlpnZMSR2EttpmJs0SSlt36aYcsppkib/55y5Kzvv+/v7czKZO/cM3Nnd73Nm7t2V2s8/+eRv
+        f//bP//5j7/87W//84e//uzTP99748Pzz75x7Ok3lq6/cPTaw1N33jh77+1LD7535YUPrzz63pXvfHD9
+        5R/cev3Hd974yVNvfPzU6x/ffP3HyNx+6+M7b/30zls/u/PmT26/8ZNbb/749ls/4ZKf3n33f+6++9M7
+        7yDzc+RvvfmTiy/+8PhzHxx55r0jz3z3+PPfP/nwY6RH7nz30K13jt778PjzPzr+/A+PPfvRyv2Plu9/
+        sHzvg6W77x95+n3kV1D47A9QQvnnPjr67AdLT7+HWkfuvrd8/8Ojz/0AhUv3vwdbvgf/7x199kNu58Pl
+        Z8n/1MMfnXr44+PP/QC9wJ/tg6PPfbjy3Ido6thzHx1/8P0TD35w4uEPTzz68elHPzn9wk/gj8Njz/3g
+        xIMfwnB49oWfwXDq5MMfo8rKsx+yfe/ove8dvf8hqp98+KNjz//w6P3vL93DSN6HHXvu+yeonR8df/hD
+        sgc/WHn+B8fQIDyf+z5d4/3vHX8e/f74+IMfrjzAJbx/5M57i3fePXznPVwLXQWNDXU/PkX9fowWMCRK
+        H/zgOLX8MVqjmeEZO3r/eys0b5ifj9D+yn10QfmTz//49MOPzzz66ZnvsL3w8elHH59Gdcz2c99HL7Dl
+        ex8u3cNMYk4+wuUsPfP+0tPvL939YPkZDAPpB0vP0Ktw7DlUwTWiO1zax6df+NnxBx8fvfcRvVhU6wO8
+        Xkv3MJLvH3vw4xMP8Pp+vPLsD5ee+Wj5mY+Wnv5w6S58uC80+DSG+iEKD916/9BT3z1y5/3Dd95fvP3e
+        4bvvHXn6e+R553tc5YNDT727cP2NhWtvHLz5NjwP3nxn/sbbyB+8+db89bcO3Hhr/5VX5q68tnD9zcWb
+        by/efAenFm+9g8zs5VfHTz8cOf7s6LF7Y8efnTzzaN/ZR5OnHowff3702P2Ro8+MrDwzfuq5iZMP6HDl
+        /tTph9MXXho/+bDv8M2uA1f6Fq8PLt0ZOnq379BTXXNXOmbOd8xcaJ+52DZ9pnXqdNv0+d5D14ZXnoFP
+        94ErnbMXu+Yute0/3zh+snHkROPY8abJUw0jxyp6Fss758v3LlT2Ltb0HWkaPtY8eqyya6GgYay0Y6aq
+        d76kdSq7oi+jsie/fqyoabKoZTK/cSyvdjivbhhpTuVQeklvSnFHanFHckFrQk5zfFZdXHpNbEZNYk5L
+        alFHSlFrUmFrUlFramFbGg5LOpOLOpIL2xPz2rMqBkoap/OrJlMLu5Nym9LL9qKL/KqxTGqwNaO0K7Oi
+        P6uiJ724Pb2kLb2sM6OyP6d+uLBxNLtmIK1sb0ZpX0bFQEZpf1pxDwaQWNAcl1ETn14dn1kdl1UVn1Ed
+        n1UZn1MVn1mVlFuXVlSfXtySUdKeVtyanN+QnFefVtiQVtyWWtKFkacWNiZklcVnFMXnlMXnlMdll0Wn
+        FUUl5EclFcVllaTn1+aUNGcW16cVVKfmViVklcSlFcSk5MVkFcRmlSTn1GeWtmWVtKblN8RmVoanFYen
+        FoUm5ftHZfqGp/hGpPhHpAfG5gbG5YUlFoanFIUlFkSllcTn1GBgXoEJO70iQmPzk/MbUwoaotNKguOz
+        /SNz/ELT/SMzguPzAuJy/SOy/CLT/SIy/SOzAqJzcOgdmugVGOsbmuwXnuUfnusXkR0SmxOeUBSdWhaT
+        XhWVVBGdWhGdURWXUR2bXhWTWh6VURyZWRqSUhISXxQYi4GhSo5feJ4fOopAR5kBMdmBUfmBcQUB8QVB
+        8QWBMfm+kdk+oem+YZkB0QW+0blewWkegUkegQmeAcleQaneoWneYWneoRm+YTlwCIwrikhGRzUBUfme
+        7LnHL363X4xHYLxvNHrJ2x2QsNMv2ic0IzS5LDanLia9zi+qwCs0xTssxTcywz8aXReHJZSHplRHptcU
+        1nYn5xarff6f//zniy+++OrL/3711V//+tk//vPFz37/1wvPvtMwfjy+pD2+pC2zbjirdiSrbqyo9QCs
+        oHG6oGWmoGOmtHuuom+xdnC5buho/ehK8/jx1qmTrTP4PJxqHj9WP7IEa5w41jlzrmv2Qtfc+a65i/TJ
+        2Xe2c/p8574LyLSMn6ztO1zTu9g8cqxj8kzD4HJZ+77iprGy1n0Vnfsru2drehaq9x6s2jtf17/UOnay
+        bexE08hK0+hyy9jR9qkT3QfOdc9faJ04gUaqehbqBg63Tpxsgc/wUsPwYXZb6dx/qmvmTPPIcsPI4dap
+        E30LF/oWLnXuP9s0utQwdKhheKlp9Gjr+NHWiaPNY0ebRpYb2VrHVzr3ndk7e37v7Lm2yZPNo0tNI0tt
+        Y8c7Jk52zJzqnj3fM3++d/5i3/w1pHsPnO2YPo0u6gcO1vYt1A0drB9ebBw5goG1j59oGDpS0zdfP3So
+        dWKlbfIYOmodW2kaW2ocPowqrePHqeLgwcaRpa6Zc3vnLrRPnWoaWqrae6C4baKgabSsY7q272D94OGa
+        /sWa/vm6gYPwBzgah5fqBw/VDR5qGMKAVxqGl2sHDtUNHEKKuhUd+0va9pW276vo2l/ZNVeBV6qb5rO6
+        Z6G+/zCcG0eONowebRpebhs92T55Chdeh/b7Dlb3zVfsnasQVXooX9o5U9yyr7BxrKhlvLB1oqh1qqxz
+        BrNd23u4uvdQ5d4DeHVqhzDVp+sHjlX14IVYrOo5WN5xoLRjrrz7YFXvck3fSlXfcnn3Qknb/qLW6YLm
+        qfwGXNq+Ejh0HazoPlTRtVjZvVjRfbCk/UBR22xZx1xJ6/6ChsnClsnStv3FbdNFLftKWmdLOmaLmqfy
+        akezqwZza4YK6kYL6sfy6kbAsrz6EZTn1Y3l1w3m1g7l142XtMyUtc6Wts2Wtx8o7zhY0rovvaI3Ib8l
+        LqcO/Eop7kot2ZtW1gXaZlf3p5f3pZX1plfszajYm1ranVG+t6hxoqhhKrO0LyG7CahNLmhPLiKLz2+K
+        zKgKTymNSK+IzKiOzKgISSoKii+MzqpNr+hPK+lNyGlMyK1PyW9NzGuOy26MTa+Ly2yIy2qOzaqPzaiP
+        TKmOgKXVRWU2JOS1xOc2RaXXRSaXR6VURafVR6RUBiUU+kXlAhzBcYUhSaUhieUhCUVhCSVh8SVBsQVg
+        SnBcUWh8aVhiWXB8cVBUXkBkln8UmJIXElcSkVgWngTP4pDYgqC4/LCkkojUsvDkqsi0mtjspvicjtic
+        5rCk8oDYgvDkktj06uiMmtCU8tCEktCEopCE3KA40C03ODY/NKEgIrkkJq0mIbcpNrsaqMWFxGe1xGTU
+        RmVUxWRUR6VWRiYTXiMSCyMTiyITi8Pj8wOjs4MiMoMiskJjcsMT80Pi8kNjc1EeAYfk4oik4qjkiui0
+        iph0dF0UGV8YHldAjSQUBoCMwal+wakhUSmRCblRSYWRqBWfFRafGhyZHBCWFBCc4h+aFBCZFhpPLYfG
+        5oXGYx4KgmJz/aOzfaLSvcJAzBh3v2jYnoDY3QGxewKS9gQleAbHeQal+IZm+YZm7PSK2rEnZJdPLCCO
+        6w2NK/QNz/IKTvUOTAZ/gU7fyByv4JTdgbHuATEeQQlewYnufvFuvlE7vCN3+sTs8kP7cXsCkzxDUnzD
+        M9A7NRJfGBqPS4AIFeNlCo7NC0rM84/N8wrN8ghK2x2Y6B4Qv9s/0d03fndA3C6fyO17gt28I9z8ot0w
+        yMBEz+DkPUFJbj7R2zxDd/pEegQnegQnu/nEbPUI3+YV7uYT6+4btzsg2SMoY09Aym7/hJ2+8W5+8eA+
+        xGBPYPpO39hdaMonxs07andAvE9Yrndozk7vWDfPKJ/QzKCEirDUUuiQd3iuT3iWb2Qu3lc+kVle4Tke
+        YdmhKRXlbYOgv5Gphdpf//a3z//zxddf//ebb7759+ef//Nf//7ym28+/u2fxo5ciC1qiStuzWubyG/f
+        l1rRG5/fHpfTHpvdGp+HT0JrXEFLfEFrYmFHamlfVvVgZkVfVuVAXvVwQeNYfuNwVnVfRlVvds1gYeNE
+        YdO+oqaZoubp/IbJ/PqJoqbp4qb9pS0zpa3TOTWDCXlNqYXteVXD2ZUDCTkNIfF5/hGZwTF5UakVsZk1
+        cZm1KXkt2ZW9BbXDuVUDiGtSSztya/uKm8bL26dreg7Cipv3IahJx+e2CX2NZ1f0phS2phe3ZVf0FNaN
+        FtWP5lb05VT25tYPFbeNl3VNl7VNFdQP51TRBz6rqg+WWz1QUDecXzeQUdGRSkFQV07lICKv3NpB4CAl
+        vyWtqDW7qrekcbS0eayIbKKkaaKkebK8faauf6Gq60B+LeqCEU2ICMLwdk8rSytpQ2FOZT8Cq5SCpuTC
+        FoRm6cUdmaWd6SXtyQW46tb0iq60EsRuzRheWdv+ys7ZvNqB5PyW2MxafHrxxopOr4RnWklrTFZ9eEpZ
+        eAo+1fhA1ibkNSTkNibnImTrTivpSsxqisuoTcpvQTSXkt8WnVYVllKGYUSklEemVoUnlYXEFoMRwXHF
+        IfEoLMVHMSqtGkhKBN3yWlNBxkxEVTWIZSKTyyITSyPwcc2sic2si0gsD4wqxHsOQYpPSLZvSC6ij+DE
+        ksi0aowkNLE0JKEcOEss6E/K3Rub0YTyyDSEHuBFS2xOR1xue2xue1RaW3BclV9kgXdYjnd4jk9kkXdk
+        oW9MSRCCkaTq0KSKyJS66JSm6JSGmLTGqJSGkNgy//DCsPiqyNSGsOTq4Piy4JiyIIwkptQnNBefB++Q
+        DN/w/MDwgoDwXN+IPL/wIr+wfH8qKfKPzA2KLAyLq4hIqolKrY9Ob4xOb4hMqvYJy9vpG7fNI3yHV/Qu
+        nwQP3xSf4EzUDY4tC4oq8Y3I9w7N9gzK3BOMmCsrNK4iNLECTXn4p3qHpHuGZu0OTHX3Tdztl7DLK2aH
+        R/hWj4jtHlE7PGM27w7fsCtwm2esd3CGdxg+q0l7AhK9gzJ8QjIpmsMHOCBlT1CaJ6YuPN87LNszNNMj
+        MNs7OM8rKNcTmaAc7xDQpyAwusgvvMAzOMvdPwnjdA+Mx4fcKxBzDk5leQZl4JL9QrMDIvJD4gH6quDY
+        Yt/wPG9qNtsnPNs3Iic4pjA8sSo8vgpxYmB8QXB8UXgKQux64DsupymhEB/Y5tDkar+YYjiEJ1dEZVRH
+        pNeEpVYHJ5b7RuZ70uUjzgXayiKSyyLw6cuqjc+uAfHjciBXDTHZJACQjZisusiUitCEQvAF+AuLLwyO
+        yvcnznIkG5kTGJMXEl8QlYJ3b3l0ekVEWkV4cllUanlcZlVsZkVkemlESllURmVCdk0cAmecTSgJQHAd
+        kx2ZVhSXWRGXXh6ZnB+RkB+WkB8UnRkQkRoQlRYQjsA8MzAuB0IYFJMfAIvOCYkrDEosDoor8I/I3h2Q
+        vsMnfpdP9B6/uN2B8e6BiXsCUin0ji32jy33jyn0CE4D03f5JftF54fGlwXG4EXP9onIQlMhSSUhyaUB
+        Mbmeoal7AlPwwnmHpnoEp6CFXX5xu/yIxbt84tz9kvYEpnqFZPlHFgbHlUWkk7iGJ1aHxFWGxJeHICxI
+        rsB7ySc02ys80ys8wys83SMkyzOYeL3DO2rTzsCNu/w37Qrc6h6+2ydxt38aWnP3Tdi2J3zr7rCd3jHu
+        XgluXnHbvaK2e8bu8Ip3D0j2w4cuItvDP9nNEzqBwad5BKV7huR4hwLr+SC7e2DyLsgS3hjRxQExxTi7
+        yy8JUX9QUqV/bCneV76IG5IqghIq/aPLfCMKPCNyIzMrqzqHolOztHUNZDKF2p//8pc//uWvv/vs73//
+        21+/xErgv1//54svoQbv/fRXg4fOFHVOlfcdqEVEP3myfvRYzeDhss7Z8s652r4j9UPLzWPHO6fP9i9e
+        HT5yYxir4ENIbw4euja4eHnw0NXBw9fHl5+aWLk1dvTp0eVb40efmjx2b9+xe/uP3z9w9sH+089OrNwd
+        XrzePXOmY/pk28Sxhv6F2p7Zmr3g4FR5JyLf+ZoBRKyHOsZP9S9c6DlwumPieNvY0bbxlZ79Z0cPXx85
+        cmPs0M2ZE8/MnHwGvQ/MXxxbvjl27Fb3zLmW4eXWsaOd+050TJ1qnzjePXWqd/Z874HzvQsXhw5fHT9y
+        bWzp5uiRW8OLV/vnL/TOnRuYvzB+9Mb08duTKzdHD1+BZ8/+c30HLg4uXuqfO9eJhcXoUuv4kb37T+1b
+        ub144cHBS89Pn7g7cODi3umzQ/NXxw/fHDl8o3/+cvf0ycbBhfK2ybLWscr2qfr++ZbRI63DR5qHDjcM
+        LCLKbhg40jiwWN97sK4X+cWmkSOI9xsHDnVNnRo7fHP8yM328WPVe2dre+br+xYplm+fru6Zq+ufR6a4
+        BaqD2Ha8rHWiCiuDnrmG/kPNI2j8SN3ehcr26bqeha7x011Tp5uGjzRgaYXqXftK2yaLm0YL64cKsahv
+        GM5vGC5pnihrnSxtnihqHilpH6/onKnu3F/VPl3Rtq+idV9l21RFx3RV1xwG2TRwuKJlOr9mKBsKWt6T
+        U9GTXdabWbG3oHEU6lveOVnZNVPZCdvfOnqoc/JIfd+B8rYpHDYNHWwdPdgGG1loGVloGqRXtrxjqrBx
+        tKgVGjxT3DqV2zCSWzeSUz2E0CGvZrSkZbpm70zjIJYs07nVw4V1Y3U9cy2D87V7Ef6PlrdN1O6dLmkb
+        zyjvSS3ozKnoK24YLWgYKWwcKWkcKawdK6gZKmseqmgeK24YhJU1jla0TdTsnWzqna7fO1PRPllYM4Kr
+        SCvqSsptSshuTCvqyK8ZLKobLWkcL24eKaofyqvpzyrryyrrQQCRU92fXz9QWD+QXzOQhcgGVr43jXYw
+        2lOL2lMLW+KyqqPSK+KyahLzGhPyAEq2rNqkvOY0BCjVPQXVPZllnUn5bdDjtOL27IrunKpexBzZVd2Z
+        5XuzK3uyqnqwBEGokVnZk1PXk1uPKKQvvbQrCVFCYVtGUWt6IWKF9oyKzvQy2t5JLmrLLOsqrO0tqu8r
+        bOgtbujNq4b2tyF6SClsTi1qzixvLajpKqrfW1jTnVvZmV3eWVDbXdq0t6i+u7Shq7alu6KpO6cSEQPC
+        qQ4s/0vqOsvqu8oaOwtr0VErytPLWrIr2vKr2mEFNe2ldR1l9Z2lDZ3F9fBvK6hFYVthTVtpfWdeVVt2
+        WUtuOaw1p6wls7gps6gpo7ghp6w1v7Itt6K5sKq1vL4DVlLbVljdWlDZUlTTWlbXXlIL/8aC6ubKpo6a
+        pq7Kxk6Mqryxs6i6rbi6rbyho7qpG4WFNa0FVW0Fla1FVRhPS055U05Zc15pU3ZZY1ZZY2ZpY3ppQ3pJ
+        fXZZE3zyq1rzKpszSxpTCuoS82oTc+pSiuqzq9qKGgca+yaHZg9NLR7rHF3Mr+/PLGtKK6zPLG7ECLPK
+        m9KKGjJKGtF4flVTQXVTXmUjGqFrKUFHzTnlLenFjQk5JFpR6VVRtHwpj8uqTC2ozyptzq1oyatuzcPY
+        ypozCjGkpoKq1sLq9uzKtuTChuTC+tTixtQShG5NmeUtGSVNMdlVwQlFgVgVpZRA/OLzahIL6uLzq+Ny
+        q6IyKyLSy0NTSxCoRaaVR2SUR6SVR6aXx+ZUxxfWRGRVBsYUQeqisiricmpj8MbLrIwvrEsubUULUXDO
+        KIvOro7PrYvPq4/OqQlPr4zLrU4qrkkuqEsrbMiqaEgqrY8rqo3Lr4vLrcupaq/vHQuOSZTJtdQ15PpG
+        pmq/+fTTZ7/z2uKlF649ePUXn/wU6wBowJfffP35N9+8+N4PeuePl/fsrx1eggA0TZ9unT7dMLxcuXe2
+        qme+pnehcWipa/b08PKlyZVbkys3xpevDx+62jt/FqAkHC9dnzh2c2Ll5vgKYH1ldPnqvuM3p1YgCbdB
+        /7lzz04fuzO5dHNw4UL3zKnOyZX28aXuqZXu6ROdUysdk6D88Z7ZY+2TRzunjg8tnBk+dL5v/uTe6ZWu
+        fcs908cHDpwbOnRpYOF8z+yp8cOXDpy6OwV2H7k8cujSEAYwfbx7GtVP7N1/rGf/iZ65k4MLpwcPnhlY
+        uDBy6PL40pWJpauTR6+PLV0ZXDw/snhhavnGwul7SxfuLV169tDFZ2eOPzW0eGHy2NUDp29NHb2JwbeO
+        LxY19FV0Tixeunfnpe+dv/fK4sVnp4/eGJg71zsDDTg/cvDS6OLV8aVro4cv9c+eah9fboCAdc009M42
+        Dc63TxztmT3dN3tmYO5s3/5TXZPHOidWOiaWuiaPdk+sdI4td+87Nnjw/Nihy30zp9rGljqnjnXtO4lJ
+        aBk+BGsePtQ0BC08UNd7oHFgoXEAaD7SMoLCQ63DhzrGllClaWC+Zehg9yQu9szg3Lm+6TN7p061Dh2u
+        J02dqt47Wd0+BZjW9U439M82D6OFhdruqaqOybq9+xv2ztd376/t3F/TPVfXd6Chf75x8EDb2JGemWMd
+        Y8s13dMVHRNQ5eruqerOyeqOKVxU6+Biy+DBrrEj3eNHOscO9ew7NDB7eO/UQlP/bMvwbM+++b7p+f59
+        C72TBzrGZjomZrtnFvfOHOyaPNA8NtswvL+2b7qud6a2e7qsZSK/ZhgLsvL2qcaB/W3jM01DMzWQ/97p
+        jrHprvHpxoGp2p6pluGp3omZ7vHpuu7xSpC9e7JteLp5bKp5eF/r0FTr0GT7yHTr0L7mEYjuZE33GKxu
+        73jjwGT76L6O8enW8enmwX01HTOVrdMVLRO5lf05FQMVLZO46ob+mdbR6ZaB6RqEHZDYhrHy5rGKtrGa
+        zvHmvsmGvsmKlvGKlrGqDujuaHHzcFHTUGHjQG713pyqbmSKGwfzAW7e8k4taksv7cyv6y3rGKnqQgQw
+        VtQwXFA3VNo0XNE6XNo6WNY2WNU2VLN3qLZ3pK5/pKZnqKKrn22gvLO/onOgsmOwvH2orHWopKm/rKm/
+        om2grLW3rLWvCL3UDKKFys7+qs6e6s7eyraeqva+yo7eoqbukobuorqO4sauitaeytaeipbu4qaO4qb2
+        iubO6pa9Vc1dNc1dTW1765q7ihtaCutbK5o6qhs7Kurbaxrbq+vbKuqay2qbyhtayhuBYPAdmdbq5o7a
+        ls46tNDQXtnQVlbfUlTbXFTXWtbQVo1ajW0V9S0V9c1VDS0VDc3F9U1FdU2lDajV3tja0dDUXtPQUlXX
+        XFXbVF3fVN3QXFHfVFXXVFvfipLiqvrCyrqq2pa6po5aWGNbTUNrXUNbXWN7fVN7HdVtra5vqaxvwagq
+        65trmttgVc1t6BrKkVvZWFjTWFzTVFLTWFpTX1RVn19Vn1dRW1xVV1bTWFDblF3TkN/Y1jowNDI9Oz57
+        8MDBI/vn5vtGxpq7Bxo6+uta2itq60ur6strGstrGypqGipqG8urG0qrGkqR1jTiosrRdV1LSV1rcWNr
+        TiUW7k2pxQ0pJfWwtOL63MqGwuqGYnRdWV9SRZZbUZNTUYNC0DazvCGzojGjoiG9tDa9vCGvqrmgprGw
+        tjGjsjGpoDEpqy61oAGqkAEZK29MK6knqcivT8mrTcqtScyvTiqoTcmvhUqlFdelldakFtfGZVdj6R+b
+        XQXNyyivSyuvTS6sSSmoTS2pSyqpSYISFDWkFNelltWmlNQl5tbEp1ckZlWlFNdmVNbnVTdhulJLa5OK
+        apKKq4uau+p7hjwDQ9XUNTVlCl19I31DE7Vf/Pq3Jy7eLGgYTqvbf/72w//+9wtowJdfQwO++cfX3zzz
+        6nc7Z1caxo60zZyGADTuO9U0daJxdLlldKV14kT39JmJpetzZ54+eOH5hQsPFy48P3fm3hRC/sM39x2/
+        e+jyo0OXXjxw5rn9p+7sO3Fn6uTdmTNPz5wmmzv77OLlRwsXHyIzdezO+JEbE0vXJpZvjB+9PnH06uQK
+        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
+        bBc34cIloIoYcRXJwKlwoxXBCikkALvV67FqgBOvrDoVc0MYO5OF/SAYPBr+vVstNrcbE8UHv0+X20fs
+        FcxWoPjluD3dQ0P6a36phpSnK1NVZahL6uvwy3ZKvVW2oAABAJHxGH1UeaCghARmYbIyIF74c8LdCiwA
+        gHiySkAHXme42fcNI8EA4lsyRdwV+r2vYckyTQEWDCuginhDitakm2k/8cwpgvVgAR9Es2GnkurGDdkG
+        A88QRU+9AoMgGnwjKr9gfED1486gnBhdShItSNlUDssEK+AOieLT2bpHs8YbVm4H5rYFqBbDJbthcBhW
+        anYYBAzVWkAwCW5bjGEFEwDog93c4SsUJoLGIq9A3RoGE4FJQZZIjyPEzdhsmNse4v5/CPvv+KiuNFsY
+        liqciieHykk5ZyQBkhAoIgkQOUgiRyFyzhkDBkywsQ0mmJyzMcZg45xDt91tu91td87dc2em586de995
+        +13PPoLu+8f3+8rbxal9YpXOWWs9YT8bct4BjZ/Q5ZDq9UvumM4HGPoHZcGvin5DCuqyIXo10avIvC6J
+        fllURK9fEYHyhPsiD6zXBK8ui9DqAH1VEgDzOnokSH6PXxEMyR3UxahP1xXJDRPe6aLZttkDzVCePgEq
+        JFkGDeAjnlq7HVqfXoARPMawDwD6bOZA+g+YTlncghAK+f0BQ5aU/JJ+GQVFw1qb6+sHZeTmjBo3Phoj
+        R1BKahaQURREgffaycjwMAb451dyVmH5uOlzDx499d6nP/jud7/7j/+HSv2Yr//4n//5u9//EcL/17/9
+        /be/+NX3v/r1r379e7z//Jc0WgCWwV//+i///re//cd//Off/uM///iXv371k+/f/fiH7334+fsf/+DW
+        vYcnr944fuXWyct3jp+5sGzD5uk9q3c/f+LMxWuzZi3p3zS8ZfSo0ZOmDGwY1t295NDh4z0L1504denV
+        dz/effhU55R5HZNmj588e1TntPVP7Nu+7VDntKUTZy2eMmfJxLlLZi1fM2/pqpmLl6zYvHnnU8dPX7zZ
+        MGIovgnz6pBDnxeJCRgBMJQnoCdRT1UTyFdDfEAeHrfpqMEqwlmQgVdgJAFINd33JJ+xDOgkyY/G0Tvp
+        d4antEwfwRCsKgPZAWi0L+CV9qKPZjop7UhC29yFHY2OD4AGyHoFsW9N4+D28RGyA2xAZ+YFYkdw8xzN
+        zw50xl+f0Bwoze6DXkcNTmESGJEQGSsUaWAeITddFTEf++4mA8HWERRiKXbZ5sWAHIhXyIYgjmHfiy6V
+        ri3ZUtM4dOiEGSI5+kVGAFT1gdBf9QPucSiICRCA5gsxbvD1EsCpm68v2ri/vWvBqKkLO+etmL588/yN
+        T01dvGlY15xhnbOHTJg5ZOKcZ85cPvLy/T1naT6A9q6ZjwiAcJ+8QKbrnzggGQvmcDDgvsGSf9Ao/6c3
+        C4iKP4dZNNjHYgCQ/+QFYpFe5vYhcAcBkH+ffQQTwAIwI73Ad5MG8DHdQ5gO6KdGE4ERgqcCsj2E/iYB
+        AMHLmCmQwkIFpvzHqmxWOzqXxYqxFgwBoDedPzQIALDronzQYpEGhRW5rQnR7dZVWAC8pjsAaV6vxeWw
+        2LgxbaUl/YJOjq/Ij8gAIVUY0zfT8AlJNqfdY5aDRnNpsUjfoFEsWvzk2LF3iPaJgn0Mb6/22HK8NHl9
+        ASQ5Q9UaFgYIMfQP8VQ2Lk3gCHAVe4pExR7IhyOQxwbSvkDh+tMgKfLRZ0v2MpErkm1Fsr1S5WhSeNHW
+        R6Z6QVgFdQ/0DzP+yICopwmEWeIpSwDFZhUiCIbKRMNAAQ0kKPDLZYpU6icT/CHbU2iuGMpTKsIGZBlQ
+        ldBUlTI4QQMpCpeQHWGRSjVkq5S4CXxPUFINQ3PFFVSc0PUxycUalh34GJRcAdXlp7G+jgAN9SK9r1NQ
+        F/LfldC8IcUdVgHxIABPSPUEZC/590mqO0MqH9QEv8yHNAlA71PFkF/xqzKMADCBrPABvwGlr0jYTFV5
+        L+BeAfqL2F00iADcCu9VBS8WNFkUeZfodemyoPIeGWaez1DxUlRZhGoSZBq0KsiSLIi8w2oPBv3jOzog
+        ViHwWJq326/rhqYbuootcTBdVbDgM3y6qgZ8wbTUjMLCwrb6xhHDhrUNa504v3vBqrXLFy6aN79n2szp
+        W5958umjhzsmzuqaOn3JsmUZeQVFpUWTp01NZOX0q6nt27fK48HTZnULrKj4P730cLS+ffSa7U9cu333
+        F7+iIs94/evf/v0Xv/7dT7//xbc///7rb3/25Tc/+8FX33797fe/++Of/uVf/+0v//pvf/jLv/zuD3/6
+        1W9+9/Nf/earn37/2ZdfffrlF+9+8Mnt+289ePetDz/94Z17rx8+f3rZ6s1TJq7Yu3HPmfNX2qf3FJSV
+        1zU2Nze1Z+eXpeaXbV655/rll587evzarVvPnrqwfP2OrZv3rF28bvumPWtXPzV3xaadu/d3TFnQ0b1w
+        Ws+SeUtXrF+/88izpw4cOnP6zKWepYuTrQSRHlbmE1BFgO6hUC2L/QIWyfVhor/ZSOcSegqUcwnmAFsQ
+        5rppLXFGL8QDMbEZIT5rAG6G5ubQXDQAKNPgzAsEqGXiGtsQAZgoz/xItJb1oN/kEpMD6GjAUOA7eKtq
+        0ODGttGq7ku2WM1+ohayP2gQWa/wZ5DNANqEfpawRFXqegvY0Slw/YwYvCINiKNKeYJMe8FcwC7EEyar
+        sXc6BVkPpkFgLpgnxbLVYgMBDO+aDbj3QtgwAiALQCUCwPF5UYmmZAQiKbIGm4D6JZ0RwMkbry3ddGDk
+        pCVjZiwZ371syuL1Pev2TFuyCejfNmFmy7jpQ7vmPHP2MpsT+PKFe2+0jp8qJj2uBcQyQU13v+kOehQD
+        ANyjAf1Nzw+MAHL6k/ynBTRGADQS2GCmANP+QHAiAIh6KH1zjrAUhy3LSSO/TFYA0GMZOM7KwPXCd5o5
+        GoAyfHrRH8fJ9XDmWhgB+YwDMplLJ5eNBcPGsA+wFzgj3cXlkeTH9ixg4CHXP7mGIJy99gKcV+OdquIE
+        dRsaJ8A081o9eCA9T26tGzwk6nELT+wcosdkw82f2tqammPA6Kc5Ydwui9tpdbi0SKAsLGd4LYrAyYK9
+        Web2yFyPyJV5bZleWz5vK6TRWHadLQDB80QahRDxWPPYTC8hqvjPpYgUnoVsD0DFy/ZiUvdcukoVftDK
+        Ja5Y4mIizXNZCokNdJbssAPMKSELsC/z50DgmwlFUQFCnlI8c1h0IY8GBFAyEpZDoi1M48goBRbHiVG1
+        fRrGlU/RCHIfRWhaYIoSMxynxP8UxgRA9jTZkcn0fkR2pqvuqOKOKK4QIF5xsUEAEP7uOIVzXQFobQh8
+        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
+        AFwBhgeEQAlgAazYFByX6xuTHV9QlV4BFsAyGQH4R6dgMXB0qk9Mxtqu/kcfPp+8cad94LBnBLqAxApy
+        MtyXEl5+2IC/oWwbaACMAJnrX8YEYA2AoYDgLuvng2j+n3IBkOQE7mNUAA+hFwhd/0QA4HcMAPbDGDAC
+        YA3KHThDCxNA0VdjwcK8HdDyIOp/e/yp6OgHNEdjApiGkPlEMzgkAMB6YyIUDOiv+ddUwHrEPAF6WGeg
+        pE7DSQX0aVgSrI/RAkVVNpOObZmZXHVlChaVcBSoLKFEYu+gr6zC1tUVGxupKFHpCiDwmQDrWMFLZTHA
+        RKCx2XQOB7YpTOycQwWlw2KT4IUAFoG/HI/HFon5ymoCNXWOWCLR1hNp6avMtpjjEezoF+YeGu4SHOEU
+        k+IZleAYGOgcEeWRmOAUHugTGhCVm5SQHxWbkxKUkJ6UmJwaH5BUmBFTlJ6ak5CaHRKVGBqbkGDn7jrL
+        yUbPxAD0Fo3OJdM4ShSlzPJFs+Y5OLm7WVjMF6iomdnYgiwDw4UtEghV1eArxhEqbehPn5n5cvbR/85y
+        XSonL2BqKOraGKhZz5bqzRJraajoaKhqGOrbWRqmepo0u1lsdzfvcZzX7zRnq5XpNkvTLhvzHbYW3U6W
+        PV7Wu5yse5zn7XSbvc3VaqeHQ7+vw25Ph92+jrv8rQfcrXt8bbcGWG/3suxyt9rlb7MzwLbTx3afj+Mx
+        X/fTgU5HA237Auc0uZikWWnaGvM5xCwmJnrqZnoqhupSfS3l+fqqJqpsFl/Lxi14zQL/xQlaBlp8pkhN
+        U9/J3VfHwBi+KvA9UVDAFENUiJhVxeWKJGKRVIvP0hMyNDh0kpzcnraomU8rpy4t/Hm3afpO3fS9uumH
+        zb8erp14uGzsPmwv+/lgxcTdhp+3yqauLZy6VTV5t3jiTsGPC1lfTsd+HY74fjH567XMTzeLvlzNfn8u
+        5fPV7G9X0t4d9nx/JuLDrdK3N7M/3sx8eyr43fnEdxeyXh50e3k56cWF2Ofnol+cDXt/JfPD2YwXx7we
+        n/J7eNrnzaWkZ8MRry8nv7+S9+pq8pNh/0sddme3up3d4Xqjz+/W7rArnYE3d4dc7w64vN37eo/bvUGf
+        i53eF3b63Orzu9rjdW8w9M2R2BcHEh7tjrndF3q+y+9qr/+ZjV5HVrkfXOO1b6Xv8TXBJzaHHN7gd2Rd
+        4NCKoD3NfnuWBR1YGXFgW/LAhti+lsje5bE7l0RuqQrf3hS1sTl+W33SlqXRezYkda1M3bQ8bceK/K7G
+        7O0NGduXFWxryV7fkrW0PmvnutIz+9uW1xV2rKrtWFOxeU35xrUV21Yv2bph8fJ1VYuXVLfVFrW2FJQ2
+        5qVlRocFuM03ny0l+usBWgEByCQ/B1QRmWSobyAQCuTlsTcKFeCP4AAYIBQrG5iYeQaGq6hpKygqynJA
+        CTxFHAdYpxNOGyB42ICdhEZG8CURmTZ0OjpkiPG4BjMcQVmW+ikzGuB0glRAvKPfRubMwTk3EdBx5gaZ
+        h4eOHV0A5QGdMYEHzmFzceI4voDJ5eMEW+g4InhIllEKXEK4jxDoMaMU7oXgDuIdXkS4PoA7XJArBJgW
+        APTDWXhTDEQDATBI2BCDyFmis+A3oUShz7Vx9A6I4PIAeuXg58U2TsAcGD2Gc+lgMgF9ms23DYhJI7KA
+        iGafBMQTHPCftB+ZWQAfuXywAIhuoItXb43NWhicWJJQsCizsrmgvq148erU0tqguMyAuMzA2AwggJUd
+        fY8+fj198+6GgcNeRAxAooAWAIHjiPJgCgDQC0iK6jJ3P7EhMwgwLwgbQZP0CeAWIZorqsNCfARwB/n/
+        V/hXUY0q268I6E8sCPoy9Mf6AGIbM4hoSjpUkiEd5f98JoZ2DYlFVsMF8K1G9JDQBjlPUAJyAOEy0pVV
+        AxAGgQ72h0AmMMOm/+gjgtOBFYA/jKiwjdECNBpoihKgZy6PxWZyVZUpPC6FzpBToHBFYksfQ6mWgEeh
+        z5uvrm4CvxWM/ZLQO0THUAEbOJ/JAAJg4Dwt2OoHuYFD5PgzyQw2Uyhli1TYQhWxhh5XWY2jqibW09cy
+        n29q6WXjG2gf5ukUFG7nFWjt7uwQm+oVmuUcEevg7+8aFh5eUFC8oCSlKMM30T8iKymvJDM/LycpPTY6
+        zj0hwc0lyNHWy83Ow97KzUGkoTLXyVlTfza8NyQyXZ6kwBGDxsd/OrOMItPztLRmK1FIHA1NOTmem6fG
+        tdHtd/9vxjnpgJycFlVZydjFTN3WTGKkq6Gvo6qtqaKrr+djbZrrYd7mMq/HYXaPldnOeXM7red3OVns
+        cDbvdpm7y9V6p5tNt7fTHj+Hfi+rfnfLXV7ztvu47YuOvJjpuT/E91BU0FCMy55g16EQz/4I5/4I284g
+        255Qh10hzj1hrgMhbkOBboMhrruC3QYDXI+FuJ0Ic+rzm11hq2FnAhwl4IlU9dTUzbTVDXXU9LVVdFWF
+        Yrayvq5DVnpAXa6RlbGyRE2iosnkcuGrLi+noARWNJrehJUNX1GcC4OrK2JpC5jaHBpNTu5AR+rMrwPT
+        lyr/uFgwfaPg19XKX9drp+9X/bxfM3mnZvpBzd+eLJ28unDqSun07eJfd6qmb1ZNXMj8fj7v05n0r2eS
+        v97I/35/xbe7bZ+uFX69Ev3tYsrI9bJvV0q+Xs/+cjv/7fWFH+83f7qZ8+582MfreW8vF7+/XfvqWs6b
+        a4Xvb5W+upPx9m75x5uFb86nvLlQ+OFGyZsLCc9Pen64nf/uYeWHa+mPB31v9do9HPB6fSrm4UHPZwd8
+        Xh3zfXY04O5+58fH/N6fjn25P+jFUPDrU0lvT0a+OhT1+kT8i6ORT4ain+5Lu78n6uHu0Ie9wZe2elzZ
+        7nNpa/DldT53tgXe7A87s8NneL33ua6Q4d6Ya/2Jw9viBlqiBtsiu5uCB5aF7Vkbt7MhpmNp5L61SX2t
+        KTtXJva0pne05GxcmtjZktKzLGd3W8H+9XkDq/I31qfvXld743RPe2vxqraijg0lu1ct6Fxdvnlj/cb2
+        +nWtNVtW1m9Y0bByRdOKNbWNi8sXNxTHRoU5OznqaqsSaULyNJzRgKykIA+Wga4W5gkAAWCVGKaHgn2A
+        IQEOV6CuoW3v4TvfwV1eQZ6M+T8sDKQBjhN1W7ABmh05AMU1h0gBwp2yMgN0wsCXDvYQjnWQAgRSo1MI
+        C7uI5NHfTID4i6CMaXh4FoIyBe4EYI3XxxIwgHgMMMCzwXeJRfhheAIZysvEu+ys3xYAGBOEuYBJpUQy
+        EvAHQjxaBkgzYLtIVTRB1zM5mFoqcx/Jkv0xWoI9wvCHhUNABsA4jm4+AeHxHB5fTl4e3nAWl08DW4eo
+        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
+        A6hcNnaoZjLg+akClpwiAyyQvquL9/zfS8OwVXJy6mIdupGdgbqlsbKhtjKoNT0DA38bwzqH2VvdzXod
+        Zu+0nbPDzrLH02qnm22Hp3Wf7/wd/jZbve27fR13BbrvDQo8nhJxMifieHbIseSQU2lxtyuSbpcnXs3O
+        uFYfd6Ys7mxx9Lni4MO5wUdy4k/lx57I8T+Y7Lcrzqc/3rs32XswJfxIRtzhjMD9aV4Hk/wPx/vvifLa
+        HeF5INH7RLLvpUTnQ1GzK1ylNjpivkRNU0vPwlDVWBskooqBCl+ZLzUwdstLd071FYmEYoGqsqom/qXQ
+        YEcHMXxLBEy6iMOUsBkqfIYqi6YkJ3dwX/XMzIuJ8ZtT07d/Td3825cDPx+2Tl/MnTwZ88dw1p9X8qev
+        Fk0/Wjn9auevp+smHzRNPVv983X32Ns9Y58Hv7/c9P3piu9PV46+Xj/yat2X+63fH6/69qh15Mm67/eX
+        fb/XMPps+Zdny7893/D5ydrPD5d9fbnu69Mt3593f3vW+vVO0ed7tW/ulLx/uPzT03ZcP2z9+KDmw+Xk
+        r3cbvr3o+Px87efH6z+eL3h5MefN+dRP16o/31j+4fqStwD91xvfXaz4cLXsw4WC9+dK3g4XvT+V92E4
+        591w0dszpW9PZ704lPBif/qrk3nvzpS8OwoskvbmSMKLoZRXe5JeDcXcP1r+4PSSh8dr7+/JvLIz6vjG
+        mHPbQy9tC7m4Peb0zvTDW+MOtkYNrkzqXRvXtTZ6sC1+/+rUvZtSB9ak963M3bMmdfe6tN5NWQNrCgbX
+        5+7fVHnv4p6+7dU7mvO3razcsb68b31NT3td9/raTStr1rVVbm6r3bp+0aa15avXNLW31DbVpZZWZScm
+        pAYEezo5zqGSkQPguwMkoCAvz2GzdTR1wSRQUgIrgEbkC5EU5RVYLI5URcPJ2cN8no1M18viwIjLgLMg
+        r35n6BNJnzKvDgtwFn0vCOIEBKMkRyWOQQJYYCTAK6b9ILxiZJiAXcT93wSAGM0FhAW9Dzv/XSqMwC3z
+        7WAEgstg8+HWiO/4VL/tCTgBY9tEpJowPmTMgWNwm4HtKwi7AW/K4PB5QjFHAEjNx6Y9XD76dgiGgAvC
+        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
+        sWuwnn5/fOzOqvE7a8Zv1n87kfxkT/qFbt+uBrvypHn+oeamzsY+7rOT/cyyA2fX51ttqpq7t8p8uG3O
+        vS1G33ebTZ50/HE6+N1O10999mOHXMf3+vzoMJ86HvTrbPr77S5gCvzjWt73R1uay5yzk2cf31V073Dl
+        +YHcnmUxzQs9K0sty3Lm1hY7tFb4rl4a27Mh91h31f7OktXNHsvzLToWeR/cFNnb4pYTaexoq+bipOHs
+        YTh7rpa2Fl9fBxukGmgLLUzUTfXExvoie0vD2Oig2sry6FB/N3fzeRba5rM0HWz0Y2MdcnP9kpM902L8
+        UuN8E5IDohN8QiO9giO8w6I9k1N9M9MDImI9Q6K9I2KDEyICEqODY5MikxKiU+PiCnJTiorTCrIT0lMj
+        s3OTcsuTszLiYuOiIpJSclJTispyK0ryFhSklpVm11eX1y0ur6td0NBUumjJgrSE2LWt6538whfUNBw5
+        d3b/keN79x3o7N/X03Po8ND+nu6hrs59/YND3b27+wf27R4a6tjZu2XHrk1dPVu2De7Ze9yUmOtCKFZG
+        /wZRPUuobB7gI6Ae4QLi0VlcmU0A8hxAGeiBxWaLJMpgOgCkokEAZMAlIrfo/RdyRSK+WCoQKwuE2E4H
+        1boQsBtNB7gFepPgUijqxWweele4st4P2CLid8IPaHlQ4jwR2AqE8x2ujB/hmmpMOMricYTKQok6X6gM
+        w5BshGIW5ghhdpAsBkDEftlAJGQqNv3HqK9sDwaBGQTbwTZObymvoGBh7egfmQiXgp8dTBk4nXhIMFRU
+        TObM1dQ1RDrkEO3kZPXJ6LwSyzWv2ZZUUBuRWZVc2phe0ZS1qLkQCKCkPjA2yy863Sc8xScyo2Vr74vX
+        74Zv3Wvs3efo6ouTwpMU0J9DAD3h2wFk/63rZSlAMg6Qpf3AGvAX9vwuCYY9RCKmbBESKAzgC2vC84Oc
+        AdAMTAB78IJEUBfuAhwgy/WUEYAmBYAe48BwO/Q7ERcB+Abo/6vsi4B+AuiBY2AD7k5YD0T6P+FuAiqS
+        GRkwABa4I1COANCfoDdVIsygymcx+AIKiydUVacwaFQmUxG4ncUs01Mr1ZMyeCw5Cl1OjtysZXjSYxaH
+        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
+        6sUKNWoKAR/MBcwRYjBA8lMYzBA6g0Jn0JgMNnwNlSqsOeCyGBI2aH8WfKOUAn24OcqbGOlOLBs91pVE
+        JID++yPWyDKm1oZl5ShMKnOMQ+UMM0S5lDlW2SI1PY7JcDJDIigkEYmkw0RPShSVHEcNogYJSqT8yWKS
+        hATILqlXK6cbyROoqoUmUbmClE0STJSJ4hRUA42URpJv1wqcQhKTxBzDvuHh5Y7hBPfbnEPxM25tPjBy
+        fHjk/Jm/nnvtPx9+8td3tx/9+M/jf2AQup/wAmFG0Mivv9x+4eeXD9w/vuVu78zP1s1+Z9PElxYWnW4o
+        O9WS2p+VcrbQN1wY35VV9EXTSyPvjzwauTbyS/OfS79aoK09nqU9k5nRmxPfm5Y8nOvq9PIni8wbY/zD
+        hWmdWRknsnRPR77730+f+uc1Tp8+Zld6ypFC25aosF1R9u2R1q2OqA6PZY/duS/Zucdv3xPr6vF7diaq
+        Ygwyo15hM4rFCrlTXbx6XFx+EkcpMJp0Fq2GyeDYTLo/Pu54/NXgw+vHH37WcffFsT9cyLx7oerBhco7
+        zzXceWfDnXdW37q68sZT9d8Px//w3pYb1wduftZ799PDd+6/evujzrsn83/4bvD23Vfuf917+/ru+9cG
+        7l87efed3bfeXPr9tV03Pjt2/8tzd746f/etrTcvVX79wrzvX1tz9739C1qco4rUezekrZrjSY/m718U
+        fnZn/Oga69hRjpRojVLAVKsEERGa2AjV7JbcN84t/+jV+ddfXPz9S6uf6Z3gjldJVTyDTmozyZITjMWl
+        kWMq3VMrnWNHRY1u8Y2pS6iviC0ujMrMCGsdk75xanXPjKahVS2dq5s2TSxePqWoZ0Xjwqac8pKEuko4
+        0ze2KnHiqJSx1amVVQnllf6KrPiaDE9Zri8nPz4nLyYv01OdlzwqL6ksOyE7zZ2a7M7MiMvJ92XmJaXl
+        puRkJpVnpRQXp2bnpuXkpqUUpBQW51ZWVZRWFRcC+FeVFtdWjh1bN27SqNrJLVNaxtfkFo4ZPWrjuk2+
+        hOzShgnlTVM27d534uTJ3mPHu/oHuvqPHeoBrD/aNXD0QP9wV+fQsaOn+k8eH+o/0995rLt34OTJM/3H
+        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
+        YdJJlCAGg0pi80s0msURRhKDSsZiYDbmBWEQmE0KIYs0iujURF2Y3RgeqdCZeUQEBqwEOodHxTOZ1IAR
+        wKBTWSy+QCDTaRkSFlWIbUQ5MhlbKOJrRN70XPikfalZC7a160LtZCpdbbYl5BTEJKRbXBEpU0fr4qLN
+        qU59pjPM5VZH2zTzQo1bwkmGoGBdEFkaEsQPZvl5phUOWgorOCokRBYSTA7hjOKxS/nsyQL+KklIEpmT
+        I6A00BVTDfHrs0h6knalWT/RTkoKos9ikWxknZd1HSZzcvT9iYbxRtv66MLLjRO/WFT+/rhZtzcv/XHb
+        +gc7m+5M/+q/Nwgj4MkP0MGjR49Gimquvd63aqR31r2tUz5fUPvy+MbnJhSfGOUbznT2JaUcL4o7nJX0
+        YXXHyDlA88UjWzkvi33H8gwvV34+xjR3R4LqYnHMkZSIQ27HYb//WGn6sRLn/jjHYS/vqPHpX16/N/Kj
+        +rTduj3G150ZtjsmdEtkTLsvutcf258atS8u+oDP2Rlv2Gi1bImKPJhuORxrbbArFEqxSSk1KOGf1t9Y
+        VLJ+nixSJ1NK9TqNTqslkWid+8aO3Dv85YWJ189O+Ozljd+92vnt5Y7v3z548+ru25fX33thzo03l9z+
+        5ODdq+tvvL7g9ieHb37Rc+ejvTefGXvr5am3Lm+9fTz95vM1N767eP/Do7df2Xz77bY7X527c/P5298O
+        Pbj5zP27H9x7eP3Bhx0PX5v952ebDq1JS3AwLBqFx6WIi5FER0pKMi2Jcbo4lznZG+qL0Xidysl1CVtX
+        lS1bnrN0bvHcmQXV1f6+ra1XT8/s3VV//EDLUHtjz+byUzvKLrQ37F5cOrs1ubI0NiMltCgnPDs9NCsz
+        IishPCPelJpiKivybJhRtnVm+ZrxVbOacssq4xqqUiY35qalh0ZH61wRuki7IcJujHDqwyKN4XaDw6Fz
+        2A2RDmus0xofG5bgj/ImgJixp6Y68nM8RSXpuTnxyX5XWlZ8Zl5iXn5ycUlmRXFGbl56UlpyVmZScUFG
+        TkFmTnF2UWVhUVl5TW1ZVUNpcVV5TcuoSXNaZs9pzS3MzCkqmTp5fnJKTpw3LSurbMfu9v6+4b17Ovd3
+        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
+        MXlciDG1riRtzR98hHu5UA04pvH5eu4ifXAApoq3LiJ9X+YUchDqW7P+OAC+O30N/FJzFeMt+YtsRBw7
+        McdGqGcp1HMxNPAwMnAUca0oSsx1FgscxHw7Ec/TUKihkC+hP/6NPwSRWCSkxSRCuVisNjG2UCqsNGoH
+        K1Wgi0uIq0eEl29cQEh6aPCYnITN44pWTZmwfdbSLWOGr1s+c/mMSeuHT5hZPq60sOS7lWt3rNy6e/XO
+        w9u/766r6224deXU6Yt7j107fKLndt27gc6Pzx91Xq8/ue/AqoXzS4oL3Dy9jRRqHT5HZ4hQR99IRygR
+        WJoJnU2NnN3lXv5mIYHmgZGaoKHq8Cilb5iho5/AxlWsstTRpRoVQ/QFOkJDHSFHbWvr4hcWHpNSXlu9
+        ZsuWuvo7bz++7m3pvPfb5YHe3p6H3e33Wl48f/Pg8M8/ZUU35Se3xCc3x8U1x0c+yI/tqM26W5R9NzW8
+        KSO0NTuuPTe1KT3+YU5cR35KU1L0zejgi7GRx6Ii9oaHHPP33OjkMMVUM81COc7OfKyF6XCNqkItL1FL
+        85TSLKlhttIk1MJqwcRJ48ZUxgf5jcgunFA8fPXcBcumz1gza+nxPUc3rlxz5PCxnTv2nzpx6l5j44UL
+        V6/cqL9+7VZj/a2+nq6Gu/cedHT+tO8QQY6xiYWFuUpFfh4KAqvUcqWSFegFCSipjLRMYULwp2LpoWql
+        AnaBUilTaCD/1abmZCKozJSmZhpTPS5UtU64j9/F/UdfdHbv3PFdemZORIBLgIs6JcKmssi7iHaFDCzN
+        CczL8E3PDCrMCi3PCk5MCU1OC83PCcxN8cvMCiotji4pj66qGlpYFBOfFpZVEFdVm1BSFFNTkjJrZP6i
+        UfnLZlUvHFe2aFLBshlF02sys5Ii3Vw8DIQyV09vc0tTVzvNxHGVx04c3bvj+9gYyv4UGIhTUgoCAwIT
+        U9I2bN6eGBePk9DiMHOkQiMDXT1Tc6ucstE+/lE4D+uUhUahi/FKUV9tRj+gn+hQYcrwTmKsLaoMIGPK
+        V2xEgAi8o30ZTZRaAmCKnvl5yMnD1+Z6okH7Q8JrER9wTAfEHOQLokaVJChcLAJSk31AGaWGzBFPup4w
+        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
+        hAVw/srGE7+PHj5So6Njxx3iBP0L+Uz+fWhkyggCJlJGkAElyAP9genmXNo0Bk3rDiJvPvHBV0wHagM9
+        LVnsF+hpySVRT9DJvPksDEtEAtBHf/QEOgNbQTauPA7lfTLh7ySgboBawLQ37AYhx5GjEyIRji0uGlFS
+        7mJsZAwO0NclXxOXpL2bUC/UkBMi4niwy3Eh5D9MCqIHxjc4g7fWjIdY2g9xAMwRNCIYfEqTp7JuWsmP
+        S+xYyAHNkZWStqU0Vj0zMilokgB9YDpeYRmomIcHBOAv5joKuLAAGAdwaOMXPsecR4lAFCkx0FfzOcak
+        /QnfSf7r/0MAXHrl6esagAD09fn6HAGHI+Zw9XX1RHy+h1LmaiLiGEuDnN0vxvvUZweerMqKSRw2pnD0
+        zklzdm3+4a/m+o8PGl93tH8eGPiTcP/1+ycvPj5++vH5sz8+fPjXlz//BGq/efvp1ZtPg28+v3378SVl
+        iOIk4P5//utf3d199fX3+nof/eu//vWvv/7rz7/++vT+0+unTz6+ffPnn//rj8/A/78+f/7z07sP7169
+        +vj+7V9//vXHF/z/T9gEb1+/efGk/+XTgRc9j550dfd2POy+39LZ1NR5v/nmxQtNN6+9e/aq80FHW3Mz
+        zt+9Vl9/9Sr44N61uqYbdaCBB3ebG67Un9x3pO7GlfZbdR03bjRfvt50/vL5g0cunDx56/KFu3fudHV2
+        dfc87ezqb2vp6O7ofPJsoP8xuYKeDL569OhZ25bdD+dNaFkw/fqo4ovDcuozCppqCq+OzPg9M+psWuzP
+        2dE/JQSdiA06Ext0NjLgQGLU7Oz0xMyc9IyscSPGjB05ZfykWePGTxldM6OmfEJeaaV3QKC5qYWAxxXy
+        ucy/zXLLAf1Ux5n+6K2sHUytLC0srKHQy4ePn7Jg/bffH9++c9/q1bsPHT4TlZRkZufo5u3vHxgcHBji
+        7RHqFxDl7ePn7u8RER8bm5AcG5OUnJyfnpCfkpadVjSsrHxMVkFeVmlZfsHIjILa2PTs2PTMmKT0kKjo
+        oXHJ0bGZkfFZkdEZ0XEpUfFpsVmZcRlZySl5Sal5SekFCRn5GfmlmQVlQ1MKEnLL0sqGV9dOSMsojM2p
+        qJ0wc/qCWUvX7th18OThEyePHz9z+tRv+49igmcPHj+1dffe9Tv3bN918OCR4zt2H9y4Y/eWXd9v3PL9
+        wUNnv9v9w969hzdu2bV83Zo5S5bOW7t17IL5NbOX2XlRISBoViY2SW5rJfn/tQMMmf+H6W4CJgoGUMOX
+        B2RnXg5azAUOoO3RyV0DQMQ3qsYBuenJncL8M2IodMqkFLOEH20jmS8yBEoyssFHRgBQaGeCb/J6k8sI
+        YIr5kF+FZgVIxUzIWDEGtfyTFATkpQgwLapjYQbGXrgpYFpKGzZoZKwqEcAdBMA89bSgAfM0kanAGezR
+        aGKYHiaMbngicjERypMXiOiNpSGRR0uuMFFSfJvJfzImcCPy1eByFgFmtSXYegL6uujpeMQBQhYDoCRR
+        jgFfZ4ieX/jQjJLhQHb2aPRV4Hn/oQFiI/ZtU/v/sQCmzl83ftaaOev2zVr7XdHIKdFpueMXrh4+dWlC
+        TkVaYU1GyeiskrF7T/zy6n/IBbRoz9HKyloLHR0HgyE2LGnSkdkBwHfgsh0zBXDGFjJZQIpYRRWBCPRh
+        KDgA/pgf34b58e1piSwJbeA7OVtYOqm2jpA5dWAbvLDKmhgHbEFleUgpQ63jPKVgQv7jALiPjwDWuLUb
+        JdVw7Pl6Lro6MUrpmJKyiuw8N0OBlPYQJvT3FOr7ivWixZwwEdGGM48DgwAXAvoh9vFKBKP1YtH49IA+
+        5GWiFE8QAO03wFJd8bxW9HQ0NyA+zA5chSkRkQiJpSxZ/o8N5sk8QgB9vJqz1CAZbUjA8RdzQAAgBhCA
+        tmwcjs3pC6GAgRlzBAn1gexEAIYcfTTS/lpTQF+Pr6dH6K8HJqCTIg6XsoAMuDYmJrFm0iBrtbvaYlWI
+        /dwo5+4VoxsWTS6Mztk5fdG173e0/H7mQ8O1JzdufOjv//T0yWDL/Xc9PR9fDH548eLd0yfv+x59evH8
+        y6u3H16+/vz+3adXrwe7e1/3931+++7Pz1/+57//19u3rxtu1/d19//7f/4HYE8ung9fPkPvf/nj0/t3
+        f3z5448/yDD449OXVwNP3jx79vHt+z8+fv745u2bV6/ff/j45tWLV08GelpI+z/vfdrT2v6kt+t5b09b
+        8736axc76++11N2533C7s5k2fqm7dPHa+Qt3Lly9ff5Sw7XrD+81NV29duPn3y6ePNVwre7y6TPtVy+3
+        nf3t/vnfHtZdunHulwtnTl85fb699WF339OGhqa29taO9s6enp7WlnacevKgo2n+glvDR7SvXdgwZ8Kl
+        6uIL+UWXqgsvj8w7k5ZwPDHydHLMscS4g0lBR1JDT8bGHIuNWp6akJaWBf2dkJSemp7+zeJNG9d8P2v6
+        0uT80tScguKCQndXz5jE7LiEHBdnb0d7Dx+vUGdn59AAyOwi/5BID1//wNDIofFpBeWjl67fvXDV+smz
+        F+SPHj9m4Ypvt+4Lj4yxdvFy9Qpx9wn29fT38PD2Cw4KDQ33DwlMK85PzcqJCI1KTElPTspISstLyMyr
+        HTl2xeIVcxcuLqoakZxemFNanpxXklRQHZqYGpuUlpFenJ5bEp+ZMzQxIz6lICYtNTYvOzNnWEp6SWpG
+        QX5OeVZeQWxGbmbJyGFjJkxfvGTx0pULly5fun7bgR8PHT1+cMO2g9/9cPTy+QvHTp07eOKXfUdOHDj+
+        48mfL36/7/i+/Yd/2HMYWL/u213rd+zatW/frj2Htu4/snb5tpUrt2/Y+P38pctmLlk6e8masimTaxcs
+        CIz8GgMgwKJqNuT2ARAzqAUuE/ICswh2xbRKFp8ynpBQxVDK36fETTKkmKceelmLqhR3pVRLlglKJRMI
+        09FEhpRpSsEMQn+CSMYHWscOcQ9BP8sNpc7Mo4KeAEEIZz5l1MBcQE9KEtV2xgiwBmhLdzICtGYBaXCM
+        RiEUmdSEAr8qmUKp9QsZyeRiuimGxYUUskYHQlvgLGV5GguE4AYq+MOWvJFfnm5E4XZaNUYBCTCBQgXJ
+        D9TmUyEPBv3a0AUDbq39IRQzHw5sFLaeAJRpwNAfzYAv0Bmi6xs2NGvYKGOZigoEsezP/zSxEd5qR6Aq
+        EUZUKZr8TloCWD9+9ur56w8t33Fy9Ozlds5uqYXVwybOSS+tTSuqTSsemVU6bv+JX1/++9+Hz19deuCn
+        6uGjzHV03HhDHLToz8S+Fo4Bi0BVmAWOQqbcmcMHQGnBpbVX6KONBFgz4YwLWWSYfCNQ97AGHCivn8Q1
+        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
+        EkcQ6fmMTh4KGSKGHn/EdwL6BO1Fx39Df/gGhoWRFH4S06Ix9XmanmssTsQm9OzbOXLp/Kuu7qnzp+ef
+        NL8a7H47MfOsc7T34pkPS3Of3i4/Gx5/OTryfmFhuq/j3Yu5pbGpN9PPVxbeLD2d+vzmzfeVL7//+u3X
+        dx8+v3z9/dXrF22t78cGlkf7X48NvJubXOjvWRgeWll4vjg59uX1yw+vFz8tvlyemZkYGlt5+er5yMT8
+        yMTbl4vvFhanBgZeP58fvN08gnWwS2+XPyzMzE0Pjy2/fL3yZmVh4eWX779++vxtfnpudmrmw8dP//qv
+        f473DIz3DP782zccGP/+08ryu3ew+ec/fnv1ojEz9tGjrl//13+9PHmowdv+6o7Sh8mx9/xd6izMIrSE
+        KbpCdyF/LZsZzedUa2mUagrCNPihQm6uoU6qsUGkgU6CoW7+GlNY29atrVhrVW3vWGRnn2tpVmBlkbXO
+        MtPGOtdhfebG9X52jj6ubuFe3oGum4Lcfd394l2CYzxCwt3C4yPTtuaU7yndsb1o646cLTuKy3ZX7N63
+        79iZU6cbL567c6PpYdPthxcuNZ27eufizYfYKe7Jk+bWrkfNPU/aOtt7Blu7hvv7x/sHxjraejo6+h/c
+        a+tsG7rf3Nvc2jsxNdfV09P8pLO1bWh27sWDB4/vPnw0Pfei8fbDc2cu7qpvOHPx6qlz10+cun3w2IUz
+        F85U1tTtqDl6cM8RN88gW88wW88QU+sNHoGBKcWVnoExnqD5fMKTU/ICIxOCIxJCo1Ot7X3cglL8fNOc
+        vUJ90xNTMtMDYmISkrNTYnKzsouyS0uj0wujEgu9/aPoPAEJAWiSpg7qLA4J/LIB3EGkYzwAgZuBpQCg
+        9AHHaWw4YJOiMAFsUKHS2VwhX11bjc5kcHmmlvYmFo58LX1VBgNog8XTVGNw4fp4BTafLdDASANcn6cF
+        QEmhSFm5eu7bd9XDO5muaxoWlXXk+JWDF85Hpmwxdw1a7xqgZ7oeBDVALYA7UfRUFSpofNGcAJqSEhUJ
+        AMGdpqCiQtr6Y2AA4JVgPTp85DBVH6Q96c9DHP2kEhj24GgX1OZkkhfiO8F9IAbEfVG3Z/wUJDyCPvIB
+        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
+        d/TM33zQf+HS6+fj//j69tPii1czz768fftl+fXXF/PvZ8d/+frl9eTUysKrT/PLK9PzX5Zf/vz67efF
+        udczwzPdfS+Hht8MjnxZev1hYe799Ni7ibGZjieTbS0TrW0vRobeTQ29mhwdausabWubaXs83Te0svJ5
+        +fWr0b7uga4uQP+F+ZdfPn16+Wx+cuzpy5mFmUkwDZ5/XPn07v37lU+ffv7ll3fvP7z7/GXl3efu+09G
+        J6f6rt/p7+hcar5xKiam+cLF8SN7b6cmX8hMeZgSu8tIP8lAI1FfO0nIj1TnhQmFsXxuCJcVq8HL0xQm
+        aQozDHXr15rsWbd2q5nZ9nVrKi3X7LS0OGBpsdvacsd620POG/fYrS82WxNjsjbGfF3eBttE+00uG2wd
+        N9hZ2zg42Ti6uUXY+SVt8ov0C4tLzyrPL92ds7WsKKc8q2xb6fYde/eeOnjs+vbjl3YePn3u0uUbV+5f
+        uXD/ytWrF240Xb/W3NTUfPdBx52HbffvPXn4oPneo9aO7tHHrZ33H3V29A83PXp8v7mlZ7DvwZPmG3cf
+        tnT13bx1r62lvae758qtpstNN5vu3b18/erWvQfyq3afOn2u6c69fUeupFbtDkhKLy2uTM7OC45LSojK
+        DItMScgtDk/MDElMdY9OtQuO8AiMdfGN9A6Ms3f2cQsMC0vMCYrNiElMSUwEIyDSMyY1OHXL5uLC5LzM
+        qOzczLyqhM35vnH59r7xoP5VqWAGCPl8DRZfqMZkq2CdEYcEe7k0Ojp5aAwOSRBCNIdFA5uAzlSj02kM
+        kPYsJoevxmCh95+rwRLoq1C5ANCqdLgOzrbFwgImyH+wG4SA+GpgSbCxR7QqDXiFb+fsHhWbrm9mLdAz
+        dA+OidxSEp6yxWaTu6n1RkNzG7ggXAFwEx0+KtgljaR+ohsHLAMVHC+sCktRVVVRDesAsDmEsqoccfGj
+        J4f4dkBx4wG6eogSR/wlQQVccAY/QqcQQWdRnr6oRxBIe8IBoloBkf8HqwewSkD0Vha7Bom2EXc/yQSF
+        r2DIAewJYAU4wFAEnAFxD9dHO4aKIWJ8HhKIlqRIrXfySs4t0zcxByL5P3D/fyykOhENYK9yYgFUNmSU
+        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
+        APhWCoc+IB5GgMgHldw7M1rR3A2Yjr2S2McZyAfbWE+pDskvEYAIGwhTQLwEiOMfCWDHHbQt7bnxb5k/
+        GJJHiEfTFvgbMYhdfNdVgP7ZGad81jg7Y6IXiGYcqMsqHEFWJewApU2rduq1LqslYTPvsZkeyIS+2s/f
+        06y82Ru93m++MK68sbbw5tLS1/rDT6/Z99sHb/zh9ac+XJl/bXHw3on17958/P3rj79zaPOdI1vfXl34
+        5OSB7197/MOTB79z8eyP7jjx3Ycv//irT/z0uSd//+7X/vDy1/782Xf+6x+++5fvf/LXD9//l3e++b9+
+        9Ol//Pzj37358i9efem3r77yq5ce+tU9t//6xLHfX7f/f123769X7/3z2X2/P7fxpzNrfzy6/tPdS7/Y
+        nPx2c/KTSfOH7fInlew71fhb7cwH7dz3y4mPavk3G7lnM5FHIr6HEr4n0+Hbo/5Tfseqy7bbaRs6LCO7
+        dclpK9rMHoPBb9YHLUaXUe82GNxGvd9k8BkMYIWw1eSzmL02W9DtjXoDYY8nHPKGfXRz+F3eoM+bCgbj
+        /lCaDRBCoYAvlkw1csVBsdKv1NqVQq2UqxdLvWK92ewVGqNab7lcn2DncLJvbnmjO1xpDVebw9XedH1u
+        YXNhfn9/YaOzuGcyf3i6enhh4/Da1qmt4yf3HD25sv/s5sHzR05fd+zkpaOHLu/dOL125Op9B46s7wZn
+        HJxbPNAcTNL5WixRTWTrkUTeF0p6A0lfMJnL1zK5cjSej8azqVK10h7lK91Ysphv9hvDaaU2HC9ujZe2
+        is3R/O5Th47eNr9xaN+JCwf3njiw5+r9x29e3n92uudce25ve7TSn2501/e2F9e6w1WwVLW/ANyHRBW+
+        e9Hl3+62Urkzwwe473AFmPbjgjXAYIDLG4qk8vF0gSVddjf4wOMPuUEGTg9TdxweO9tH4+/qsTicZquT
+        ytpoAbRBCEPhAs7UGqNab2w2Jw8+/vSB6y4ZvLFye3r7pQceufuFex9+7Yabbt5/6kBtfrc7mAKSesPJ
+        QmOxPd3ncPtlMjkwWmC36NaAFcmTIzL6NXr6YaD3BT0IAthxyuNgevxZNszMUbIIp2xk/uj2AVoxzxdO
+        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
+        nQc37hxt7tyaXrW+rpWoX7WxrnVTY1t3a2dPK+JZ3Q21pjVdDe1dLWu2tm/Y0baxp6VzS3PH1vaN2zq6
+        e5vXbKlt7KxDTjq6W9dCuRsxpBo743WruGMn1ZyoW1XbvKa2pSPd0lnXui7V0BGtaQon6kPxulA8HYzV
+        wc3TRmuaIjVNCBJPr5JvQ7ZEU03RJIXR2mZcQsgXm+tXc1tqsjFa01gdrqlwBWDeKtCCMFoeNKunws2n
+        RPLZMt5IDEaT9U3tbeu6B/YfOXXp9s37z5+6dLOmrrG4jPN9Tvkx8V9G+naIAbgCA/Bw556RNRt6Nm7d
+        NX3i9KG5hT1HZvfNnhiZpwH4lX/2g1//vT/5Nz/7h//17/7bH/zJj3//z/+XP/+Pf/PPf/Rn3/rN33n0
+        vV9765PvvPjuRy++8/433v3gpbff/8Y7H7707offePfDl995n5dvf/DKWxA++vrbj77+1qOX3v7g1Uff
+        fP39T+T349fe++br7330xqOP3/7os1/61uePvvX5ux9/9+0Pv/3ao49feuvd519+/cVX3njptbdeeevd
+        V9959No7H7z+3oevv/fBq28/evXdD19/9AkCvvn+x4jh5Tffe+n1d1545a3nX37rhVfefuGVN59/6Y2v
+        ff2151585ZkXXn743EvA11567cVX33rp9Xdfe/vRK2++99RzL926+/Ttuw/vPnjmiXtP3bx9/9rNe5ev
+        37l07fb5q0+cuXjtxJkLM8dOT86fIuYWJmZOTMwtTM2fnDp+5ujpi8fPXj116RYq5/Kdp89cvXvq0hPn
+        bt2//OSzF249PHPliZOXbpy6ePPkhRvHF68cP3v5zNUnzt24u3j17pmrd9BCxxevnrwIhVvQv/nwhWv3
+        vnbp9sNz159cvHp78cpt/l67c/HmfQgvPfHw0q0H52/cPX/9SSicv3FPOej7xMPLt5+6fAd4eOXO01fv
+        PnP9/nNX7z1z7vrdCzfunbl868yVW5du3seM4MaDr91++sW7z379zjMv3nnu6w9efPXpF1+7//wrd559
+        6clnX3rw/Mv3X3gZjttPvwCde8994y7lUH4BoSB88pkX7j7z4hMPX7j18PnbT33t5oNnrz351NU7D68J
+        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
+</value>
+  </data>
+</root>

Some files were not shown because too many files changed in this diff