diff --git a/OpenFK/ConfigForm.cs b/OpenFK/ConfigForm.cs
index a59e2b1..65c2af1 100644
--- a/OpenFK/ConfigForm.cs
+++ b/OpenFK/ConfigForm.cs
@@ -1,11 +1,4 @@
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 OpenFK
@@ -26,7 +19,8 @@ namespace OpenFK
HTTPBox2.Text = Properties.Settings.Default.HTTPHost2;
TCPHostBox.Text = Properties.Settings.Default.TCPHost;
TCPPortBox.Text = Properties.Settings.Default.TCPPort;
- label8.Text = "OpenFK v" + System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
+ string currentVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
+ label8.Text = "OpenFK v" + currentVersion.Substring(0, currentVersion.LastIndexOf("."));
UpdateTextboxes();
}
diff --git a/OpenFK/DebugWindow.Designer.cs b/OpenFK/DebugForm.Designer.cs
similarity index 95%
rename from OpenFK/DebugWindow.Designer.cs
rename to OpenFK/DebugForm.Designer.cs
index 1e68971..af638d9 100644
--- a/OpenFK/DebugWindow.Designer.cs
+++ b/OpenFK/DebugForm.Designer.cs
@@ -1,7 +1,7 @@
namespace OpenFK
{
- partial class DebugWindow
+ partial class DebugForm
{
///
/// Required designer variable.
@@ -29,6 +29,7 @@ namespace OpenFK
///
private void InitializeComponent()
{
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DebugForm));
this.generalLogs = new System.Windows.Forms.RichTextBox();
this.tabControl1 = new System.Windows.Forms.TabControl();
this.logTab = new System.Windows.Forms.TabPage();
@@ -92,6 +93,7 @@ namespace OpenFK
// generalLogs
//
this.generalLogs.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.generalLogs.HideSelection = false;
this.generalLogs.Location = new System.Drawing.Point(3, 3);
this.generalLogs.Name = "generalLogs";
this.generalLogs.ReadOnly = true;
@@ -140,6 +142,7 @@ namespace OpenFK
// fileLogs
//
this.fileLogs.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.fileLogs.HideSelection = false;
this.fileLogs.Location = new System.Drawing.Point(3, 3);
this.fileLogs.Name = "fileLogs";
this.fileLogs.ReadOnly = true;
@@ -161,6 +164,7 @@ namespace OpenFK
// incomingLogs
//
this.incomingLogs.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.incomingLogs.HideSelection = false;
this.incomingLogs.Location = new System.Drawing.Point(3, 3);
this.incomingLogs.Name = "incomingLogs";
this.incomingLogs.ReadOnly = true;
@@ -181,6 +185,7 @@ namespace OpenFK
// outgoingLogs
//
this.outgoingLogs.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.outgoingLogs.HideSelection = false;
this.outgoingLogs.Location = new System.Drawing.Point(0, 0);
this.outgoingLogs.Name = "outgoingLogs";
this.outgoingLogs.ReadOnly = true;
@@ -229,6 +234,7 @@ namespace OpenFK
// CLoggerAll
//
this.CLoggerAll.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.CLoggerAll.HideSelection = false;
this.CLoggerAll.Location = new System.Drawing.Point(3, 3);
this.CLoggerAll.Name = "CLoggerAll";
this.CLoggerAll.ReadOnly = true;
@@ -250,6 +256,7 @@ namespace OpenFK
// CLoggerTrace
//
this.CLoggerTrace.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.CLoggerTrace.HideSelection = false;
this.CLoggerTrace.Location = new System.Drawing.Point(3, 3);
this.CLoggerTrace.Name = "CLoggerTrace";
this.CLoggerTrace.ReadOnly = true;
@@ -270,6 +277,7 @@ namespace OpenFK
// CLoggerDebug
//
this.CLoggerDebug.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.CLoggerDebug.HideSelection = false;
this.CLoggerDebug.Location = new System.Drawing.Point(0, 0);
this.CLoggerDebug.Name = "CLoggerDebug";
this.CLoggerDebug.ReadOnly = true;
@@ -290,6 +298,7 @@ namespace OpenFK
// CLoggerInfo
//
this.CLoggerInfo.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.CLoggerInfo.HideSelection = false;
this.CLoggerInfo.Location = new System.Drawing.Point(0, 0);
this.CLoggerInfo.Name = "CLoggerInfo";
this.CLoggerInfo.ReadOnly = true;
@@ -310,6 +319,7 @@ namespace OpenFK
// CLoggerWarning
//
this.CLoggerWarning.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.CLoggerWarning.HideSelection = false;
this.CLoggerWarning.Location = new System.Drawing.Point(0, 0);
this.CLoggerWarning.Name = "CLoggerWarning";
this.CLoggerWarning.ReadOnly = true;
@@ -330,6 +340,7 @@ namespace OpenFK
// CLoggerError
//
this.CLoggerError.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.CLoggerError.HideSelection = false;
this.CLoggerError.Location = new System.Drawing.Point(0, 0);
this.CLoggerError.Name = "CLoggerError";
this.CLoggerError.ReadOnly = true;
@@ -350,6 +361,7 @@ namespace OpenFK
// CLoggerFatal
//
this.CLoggerFatal.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.CLoggerFatal.HideSelection = false;
this.CLoggerFatal.Location = new System.Drawing.Point(0, 0);
this.CLoggerFatal.Name = "CLoggerFatal";
this.CLoggerFatal.ReadOnly = true;
@@ -395,6 +407,7 @@ namespace OpenFK
// NetworkAllLogs
//
this.NetworkAllLogs.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.NetworkAllLogs.HideSelection = false;
this.NetworkAllLogs.Location = new System.Drawing.Point(3, 3);
this.NetworkAllLogs.Name = "NetworkAllLogs";
this.NetworkAllLogs.ReadOnly = true;
@@ -416,6 +429,7 @@ namespace OpenFK
// NetworkGetLogs
//
this.NetworkGetLogs.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.NetworkGetLogs.HideSelection = false;
this.NetworkGetLogs.Location = new System.Drawing.Point(3, 3);
this.NetworkGetLogs.Name = "NetworkGetLogs";
this.NetworkGetLogs.ReadOnly = true;
@@ -436,6 +450,7 @@ namespace OpenFK
// NetworkPostLogs
//
this.NetworkPostLogs.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.NetworkPostLogs.HideSelection = false;
this.NetworkPostLogs.Location = new System.Drawing.Point(0, 0);
this.NetworkPostLogs.Name = "NetworkPostLogs";
this.NetworkPostLogs.ReadOnly = true;
@@ -457,6 +472,7 @@ namespace OpenFK
// NetworkCommandLogs
//
this.NetworkCommandLogs.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.NetworkCommandLogs.HideSelection = false;
this.NetworkCommandLogs.Location = new System.Drawing.Point(3, 3);
this.NetworkCommandLogs.Name = "NetworkCommandLogs";
this.NetworkCommandLogs.ReadOnly = true;
@@ -477,6 +493,7 @@ namespace OpenFK
// staticStorageLogs
//
this.staticStorageLogs.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.staticStorageLogs.HideSelection = false;
this.staticStorageLogs.Location = new System.Drawing.Point(0, 0);
this.staticStorageLogs.Name = "staticStorageLogs";
this.staticStorageLogs.ReadOnly = true;
@@ -484,13 +501,14 @@ namespace OpenFK
this.staticStorageLogs.TabIndex = 0;
this.staticStorageLogs.Text = "";
//
- // DebugWindow
+ // DebugForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(607, 455);
this.Controls.Add(this.tabControl1);
- this.Name = "DebugWindow";
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.Name = "DebugForm";
this.Text = "OpenFK - Debug";
this.tabControl1.ResumeLayout(false);
this.logTab.ResumeLayout(false);
diff --git a/OpenFK/DebugWindow.cs b/OpenFK/DebugForm.cs
similarity index 83%
rename from OpenFK/DebugWindow.cs
rename to OpenFK/DebugForm.cs
index 4e8ad8e..c4e694e 100644
--- a/OpenFK/DebugWindow.cs
+++ b/OpenFK/DebugForm.cs
@@ -1,19 +1,12 @@
using OpenFK.OFK.Common;
-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 OpenFK
{
- public partial class DebugWindow : Form
+ public partial class DebugForm : Form
{
- public DebugWindow()
+ public DebugForm()
{
InitializeComponent();
diff --git a/OpenFK/DebugForm.resx b/OpenFK/DebugForm.resx
new file mode 100644
index 0000000..7a64ce6
--- /dev/null
+++ b/OpenFK/DebugForm.resx
@@ -0,0 +1,2492 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+
+
+ AAABAA0AAAAAAAEAIABXFQAA1gAAAICAAAABACAAKAgBAC0WAACAgAAAAQAIAChMAABVHgEAQEAAAAEA
+ IAAoQgAAfWoBAEBAAAABAAgAKBYAAKWsAQAwMAAAAQAgAKglAADNwgEAMDAAAAEACACoDgAAdegBACAg
+ AAABACAAqBAAAB33AQAgIAAAAQAIAKgIAADFBwIAGBgAAAEAIACICQAAbRACABgYAAABAAgAyAYAAPUZ
+ AgAQEAAAAQAgAGgEAAC9IAIAEBAAAAEACABoBQAAJSUCAIlQTkcNChoKAAAADUlIRFIAAAEAAAABAAgG
+ AAAAXHKoZgAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAU
+ 7ElEQVR4Xu3dfYxXVX7HcUV0pWBTJAWb0KjrP7SrNpE0Jho0pMSa+vCPwX982GBQU6JIzCpSq2MBA3Fd
+ 5cka4u7yFOoIijqV3XWplocsupa0iMiyC3S6INXISIqBGeTp13Nnz1WW/czM+Z7f95xzz/193snrj8WZ
+ e8+95+tZeZo5izHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY6zS/a/ROM0JgzHU6XNSOGV8y2AZ9Zhx5kYi
+ Uw3GihYYaEbOtMpgFetPDLRZrljrNshAM+FqnMEStM5AG9IM1lqhGWjGAYMF6mYDvXRtbQardysMtPfa
+ njRYE31poBcbA6tf5xlor2O50GD99LyBXlxKrB6hvU3pHaPl+7aBXk7VvGiwPPu5gfa0am4zWqItBnoB
+ OSh+xZjl0QUG2sMcdBu16bsGesicsWqH9ixnxU+Ns2mwcdxAD1In7QarVh8YaK/q5lKjUi0z0EJbAf+Y
+ aPpGGWhvWsE2I3pjDbSYVsbShPailU02gtRpoBvSN35msDj9ykB7QN8o/tJb8VNyrx420EVpYH9ssDDl
+ 8lvHVbTUGDD0ieSH6YbeMfnpM/TB5O+XBmuuvQZ6t+Svz9AHZ+3888+HPx5Z8SvVTNZfGehdRjN27Fj4
+ 4zXQZ5sN9AlZefXVVxtndvToUfixkc0lJ+jdRXPq1Ck7Nd+0Z88e+LEZKv4qfb+hT6q08ePH220auDvu
+ uANeg6itrc1OycA99NBD8BoZGDD0SZXT1dVlt8IvdE1qXc02bNgweN0KGjD0Sck99dRT9lXrdeLECXgv
+ ah0h6ujogPeqiAErfr8QfWJUI0aMsK8zfA8++CBcA9XX/Pnz7e6Hb8KECXANCSwynEKfHNyGDRvsK0sT
+ WhPVy6BBg+xup6n4qStaVyTOoU9WN3HiRPtaqtGll14K10n1UMWefvppuNZAnEOfrKKnp8c+enXasWMH
+ XCvVw3XXXWd3uvpddNFF8BmUODfDQBcQW7BggX20aobWTPWUW5s2bYLP4ekhQxS6iLO3337bPkY1K36R
+ Ea2b6i+31qxZA59DSBy6iEgV27x5M1wrtZZp06bZiah+aP0exKGLiFQttEZqbeiP/VYttG4P4oovVYwu
+ 5KwqDR06FK6PqFTl0HqF/tbwCl3M2cKFC+0jpOnNN9+E6yJC7r77bjs51WnOnDlwrULeoYuJpAqthcjF
+ sWPH7BSlD63Pg3foYiKxO/fcc+E6iKSqEFqXB+8uN9AFncVq6dKl8P5EzbjlllvshKUJrUmo6e8jgC7q
+ 7IEHHrCPEi5035hY+NB7j+nw4cN2JfGaNGkSXItQ06GLioTq7LPPhveLZfXq1XYlLEYHDx6E+xBTzND9
+ PTRd8fXF0YWdhQjdJ5YhQ4bYVbAUXX/99XBfYhk3bpxdSdjQvYW+MppuqIEu7kw7dI9YWHVC+xNTs1+V
+ aqDQPYXOM1RCF3d2ww032EfSCd0jtI0bN9q7syp15MgRuF8xheiaa66B9xJSC11cRCt07ZCGDx9u78yq
+ 3G233Qb3L5YxY8bYleiE7uFBrU8NdANnGnV2dsJrh8LyC+1jTPv377craS50baE9hmroJs40QtcN4cMP
+ P7R3ZDlW/Ek+tK+xaISuK6Qeuomziy++2D6aX1OnToXX1TR69Gh7N1aHJk+eDPc5tNtvv92uwK+RI0fC
+ 6wqph24i0kzoeppYfUP7HVozoet5UG+DgW7kzLcLLrgAXk9D8S2fWP0r/t4/2v9QBg8ebO8sD11P6CdG
+ kNDNnBXfn88ndK1maf+qLcujRx99FM5DCD59+eWX8FpCwUI3c+ZzKqLrNIsxNBchSCu+bwG6jlCw0M1E
+ pKFr+Pr000/tVRn7XWhONB0/ftzeyS10DQ/BeslAN3QmCX2+L8b6Sumr7vRJEvp8oXlG0NBNne3atcs+
+ av+999578PN9MOYSmh0Nr7/+ur1D/23duhV+vlDw0E1FXEKf56P4TiuMSUJz1CyX0Od5CB66qchA3Xrr
+ rfDzfDDm05IlS+A8+br66qvtlfsOfZ6H4H3PQDd2NlDoc3zMnj3bXpExv8455xw4Wz4GCn2O0BQjSujm
+ zt566y37yH9YzBceu4+272hMe2QGWbmEZstXX73yyivw44WihW4u0lfoY32E/mIN0tC/ADSj8fD0x+0b
+ qm7d3d1wxnz0FfpYD9FCNxdBoY/zVZWKAUeDT79v8/sf2DdWzdCM+UKhj/MQrVsNtABnZ6b5Vzir0C//
+ YwscdOpflUOz5uPQoUP2it+EPk7ob4yooUU4e+655+yj/y70Mb5ShwabZKqY5lehPr1Zs2bBjxGKHlqE
+ SFl7ezv85z5ShgaZ/L27vnpfhxHNnI/nn3/eXjG///wvQ4sQKUP/zMeVV15prxi3f3t3PRxg0lGlJkyY
+ AGfPRxn6Zx6iN8ZAC3FWdNVVV8F/5iNFaGApjKqEZs/HJZdconW9PzeShBbj7P7774c/7mPFihW9LzNW
+ aEApvI61P7U7kK5169bBGfRx5513wh8XShZaTBKx6njrp3AwKa7iK/ykDM1gQsk6bqAFReX7lYYkFQOH
+ BpHSSlXsLzHWjx4jWUMMtKioQocGj6rjlVfX2J2KG5rFBAYbSUOLiiZk7avXwIGjajp58qTduXihmYws
+ eWhRURRfPy1UJ06chENG1Rez4jtFo9mMKHn7DLSw4EKGBovysWT5SruT4UOzGclOoxKhxQV100032dev
+ 39ZtH8GhovwUf8ckdPfccw+c0QgqE1pcUCFDg0T5ihGa0QgqE1pcMCG/V/8P5i+CQ0T5enbeQru74dqx
+ Ywec1cAq0zsGWmAQIUMDRPmLEZrVgN40KhVapLqQfwIMDQ7VR4zQzAZSudAi1YUMDQ3VR4zQzAZSudAi
+ VYUMDQzVT4zQ7AZQuf7ZQAtVMXToUPt69evp6YHDQvVz5Ei33fVwjRo1Cs6wou8blQwtVkXI0KBQfcUI
+ zbCiyoYW27QpU6bY16rfuxs2wiGh+nrn3zfY3Q/XzJkz4SwrqWxosU0LGRoQqr8YoVlWUtmmGWjB3nbv
+ 3m1fp35PPT0XDgfVX9vsOXYKwnXgwAE4002616h0aNHeQoYGg1pHjNBMN6nyoUV7CRkaCGo9MUKz3YTK
+ hxbtJWRoGKj1xAjNdhMq398ZaOEiIUODQK0rRmjGPVxnZBFavLPRo0fb16Zf1xdfwCGg1nUgwneSvvzy
+ y+GsC2UTWryzkKEBIIoRmnWhbEKLdxaq197ogJtPtHrNG3ZKwoVmXSib0OKdhQptPFEpdGjWhbIJLd5Z
+ iKb/YxvcdKLSo4+32WkJE5p1oWxCi3cWIrThRGcKGZp1oWxCi3emHdpoor6ECs26UDahxTvTjN/Tj6RC
+ fdk5NOtC2YQW70wztMFEAwkRmnWhbEKLd6ZV5//8Fm4u0UB2/3ennSK90KwLZRNavDOt0MYSudIOzbpQ
+ NqHFO9PopSXL4aYSuVr8w6V2mnRCsy6UTWjxzjRCG0okpRmadaFsQot3phHaTCIpzdCsC2UTWrwzjdBm
+ EklphmZdKJvQ4p1phDaTSEozNOtC2YQW70wjtJlEUpqhWRfKJrR4ZxqhzSSS0gzNulA2ocU70whtJpGU
+ ZmjWhbIJLd6ZRmgzUxj711fDZ3Q1dNgweN1c/MV3mvtSWH86chS8biyaoecTyia0eGcaoc1MgQcAD4Ay
+ 9HxC2YQW70wjtJkp8ADgAVCGnk8om9DinWmENjMFHgA8AMrQ8wllE1q8M43QZqbAA4AHQBl6PqFsQot3
+ phHazBR4APAAKEPPJ5RNaPHONEKbmQIPAB4AZej5hLIJLd6ZRmgzU+ABwAOgDD2fUDahxTvTCG1mCjwA
+ eACUoecTyia0eGcaoc1MgQcAD4Ay9HxC2YQW70wjtJkp8ADgAVCGnk8om9DinWmENjMFHgA8AMrQ8wll
+ E1q8M43QZqbAA4AHQBl6PqFsQot3phHazBR4APAAKEPPJ5RNaPHONEKbmQIPAB4AZej5hLIJLd6ZRmgz
+ U+ABwAOgDD2fUDahxTvTCG1mCjwAeACUoecTyia0eGcaoc1MgQcAD4Ay9HxC2YQW70wjtJkp8ADgAVCG
+ nk8om9DinWmENjMFHgA8AMrQ8wllE1q8M43QZqbAA4AHQBl6PqFsQot3phHazBR4APAAKEPPJ5RNaPHO
+ NEKbmQIPAB4AZej5hLIJLd6ZRmgzU+ABwAOgDD2fUDahxTvTCG1mCjwAeACUoecTyia0eGcaoc1MgQcA
+ D4Ay9HxC2YQW70wjtJkp8ADgAVCGnk8om9DinWmENjMFHgA8AMrQ8wllE1q8M43QZqbAA4AHQBl6PqFs
+ Qot3phHazBR4APAAKEPPJ5RNaPHONEKbmQIPAB4AZej5hLIJLd6ZRmgzU+ABwAOgDD2fUDahxTvTCG1m
+ CjwAeACUoecTyia0eGcaoc1MgQcAD4Ay9HxC2YQW70wjtJkp8ADgAVCGnk8om9DinWmENjMFHgA8AMrQ
+ 8wllE1q8M43QZqbAA4AHQBl6PqFsQot3phHazBR4APAAKEPPJ5RNaPHONEKbmQIPAB4AZej5hLIJLd6Z
+ RmgzU+ABwAOgDD2fUDahxTvTCG1mCjwAeACUoecTyia0eGcaoc1MgQcAD4Ay9HxC2YQW70wjtJkp8ADg
+ AVCGnk8om9DinWmENjMFHgA8AMrQ8wllE1q8M43QZqbAA4AHQBl6PqFsQot3phHazBR4APAAKEPPJ5RN
+ aPHONEKbmQIPAB4AZej5hLIJLd6ZRmgzU+ABwAOgDD2fUDahxTvTCG1mCjwAeACUoecTyia0eGcaoc1M
+ gQcAD4Ay9HxC2YQW70wjtJlEUpqhWRfKJrR4ZxqhzSSS0gzNulA2ocU70whtJpGUZmjWhbIJLd6ZRmgz
+ iaQ0Q7MulE1o8c40QptJJKUZmnWhbEKLd6YR2kwiKc3QrAtlE1q8M43QZhJJaYZmXSib0OKdaYQ2k0hK
+ MzTrQtmEFu9MI7SZRFKaoVkXyia0eGcaoc0kktIMzbpQNqHFO9MIbSaRlGZo1oWyCS3emUZoM4mkNEOz
+ LpRNaPHONEKbSSSlGZp1oWxCi3em0Ysv/RhuKJGrdzdstNOkE5p1oWxCi3emFdpUIlfaoVkXyia0eGea
+ oY0lGkh3T4+dIL3QrAtlE1q8M80W/2gp3GCi/oQIzbpQNqHFO9MObTBRX0KFZl0om9DinYUIbTQREio0
+ 60LZhBbvLEQ/XLocbjbR6UKGZl0om9DinYUKbThR6bkFL9hJCROadaFsQot3FjK08USF0KFZF8omtHhn
+ IVuyfCXcfGptW7d9ZCckXGjWhbIJLd5Z6NAAUGuLEZp1oWxCi3cWIzQE1JpOnjxppyJsaNaFsgkt3llX
+ V5d9ZeFavrIdDgO1nlihWRfKJrR4kRihYaCcPQZ+rH+xOu+88+CcC2UTWrxYjNBQUGt4ePrjdgrCh+bb
+ QzahxYt9/vnn9vWFa2X7ajgcVH+xQrPtKZvQ4r3ECA0H1Vvx28ExOnHiBJxrT9mEFu8tRmhIqL5ihea5
+ CVmFHsDLZ599Zl9nuNpXvwYHhernt3v32V0P29q1a+E8e8quHxnoQbzECA0L1U+s0Bx7+o2RZehhvMUI
+ DQzVR6zGjRsHZ9hT1qEH8rJ//377esO16rXX4eBQPcQKza+n+42se9FAD+YlRmhwKH+xQnPbhFqEHsxb
+ jNAAUb4ee+Kf7M6GD82spz8yahN6QC979+61rzpcr73RAQeJ8hQrNK9NqFULDPSQXmKFhony8sa/rrW7
+ GbbDhw/DWfVUy9CDeovZs/MWwuGi6osVmlFPp4zahh7YS2dnp3318dr0i/fgkFG1/ORn6+yOxemFF16A
+ M+qp1v3AQA/tJVVHjhyBg0dp/EPbLLszaUKz6Wm9UfvQg3tLHRpICu/Xv9lldyBtl112GZxLTy0Tengv
+ u3fvtluRtu/NeAIOKul46cfL7JuuVmgmPd1otExzDPQSvFSppSv+BQ4wyX311Vf2rVYzNItNaLnQS/BW
+ tXb+ehccaurbhk2/sG8vj9AcehpktGToZXjZuXOn3ZZqVXzVWTTsNKMxa8737VvKLzSDTWjZZhrohXip
+ euhfglazd98n9m3k2759++D8eWr50EvxlkMfbPnPxvaPf9XY09nZ+GT//kZX1xeNI93d0b5GvWbHjh3r
+ Xfv/HTrUONDV1dj3yf7e5yp+lb54xv/6cJv9yPqE5s7TUYOZ0Mvx8vHHH9ttYky/Rx55BM6dJ2Z7wkAv
+ yAtjoULz5mmZwU4LvSRvjGk3fPhwOGueGAi9KC/bttXv554sbWjOPH3HYKDpBnphXhjTCs1XE1g/oRfW
+ lAMHDthtZMwvNFeemEPoxTVt0aJFdjsZcw/NUhOYQw8b6OWpuOKKK+zWMvaHvfzyy3BuFDBB6AWqY6z4
+ Hn6DBw+G86Hoc4MJQy8yCNZa3XvvvXAOAmIeTTXQywxmy5YtdkRYndq+fTvc70iKv/PCPEMvNLgpU6bY
+ 0WG5NmbMGLi3CbAmQy81ihEjRthxYlVv3rx5cA8TG2mwJvt7A73cqFi16u7uhvtUMUwp9HKT6OnpsSPI
+ Yjdx4kS4JxXFlEMvOZn29nY7lixUmzZtgu8+E0y5yQZ60UndeOONdlz7rvjP1eJbnBdfxbj4nYb169c3
+ Ojo6GitXrmwsXry48cwzzzRmz57dePLJJxvTp09vTJ06tXHfffc17rrrrt7/17v55pu/NmHChK+NHz++
+ ce21135t7Nixv/e/T//Y069RXLNU3GPSpEm99yvuW9y/ra2tMXPmzMbcuXN7f25drHHZsmWNFStWNFat
+ WtW79nXr1vX+C/r+++/3/ir7nj17ep/x4MGDjaNHj9onl3fhhRfC95wZFij0somqZIfBAna+gV48URWw
+ iKENIErlHoMl6ICBNoQoJpa4+QbaGKJQJhisYl1hoM0ialaHwTIKbSKRxDCDZd4pA20u0ZmKL0rDatoW
+ A206ta49BmuxKvGXjCiZsQZjZw030IBQvSwxGOs3NDiUpxPGOQZj4noMNFRUbXcZjKnVbqBBo2oofkGX
+ seAVf9oLDSDFd4nBWJKKn1OioaRwnjUYq1x/afyZMaT3f7FmGmwUvxtTvM9vFz/AGGOMMcYYY4wxxhhj
+ jDHGGGOMMcYYY6zfzjrr/wFyMZuEm/JQjQAAAABJRU5ErkJggigAAACAAAAAAAEAAAEAIAAAAAAAAAAC
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADrAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAEoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAH0AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAzAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA8gAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP9WVlb/////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////qqqq/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP/8/Pz/////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP//////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPUAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////9OTk7/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wMDA///////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAJEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD5AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/zY2Nv//////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /7Guq/95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP+4tbP/////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////8YGBj/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA////////////////////////////////////////////////////////////////
+ /////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP//////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8+Pj7/////////////////////
+ /////////////////////////////////////////////////////////////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3x4c///////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /+zs7P8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA////////////////////////////////////////////////////////////////
+ /////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/+jo5///////////////////////////
+ /////////////////////////////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP0AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////
+ ////////////////////////////////////////////7u7t/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/R0dH////////////////////////////////////////////////////////////////
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ ////////////////////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAzgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////
+ //////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////////////////////
+ ////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/////////////////////////////////////////////////////////////////////
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ //////////////////////////////////////////////////////////////////////8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/1JSUv//////////////////////////
+ //////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////
+ //////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/////////////////////////////////////////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD//v7+////////////////////////////////////////////////////////////////
+ /0xMTP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////
+ //////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////
+ /////////////////////////////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP9cXFz/////////////////////////////////////////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP+cmZX/////////////////////////////////////////////////////
+ ////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////////////////////
+ /////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////////////////////////////////////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/v7+/////////////////////////////////////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////////////////////
+ /////////////////7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+/v7//////////////////////
+ /////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ ////////////////////////////////////////////////////////////v7+//wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/7+/v/////////////////////////////////////////////////95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////
+ //////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/////////////////
+ /////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD//////////////////////////////////////////////////////7+/v/8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP+/v7////////////////////////////////////////////95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////
+ ////////////////////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////
+ /////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP////////////////////////////////////////////////+/v7//AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/////////////////////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////
+ /////////////////////////////////7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+/v7//////
+ //////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////////////////v7+/
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////////////////////////////////////
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////////////////////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/
+ ////////////////////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////////////////////
+ /7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+/v7//////////////////////////////////////
+ //////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////
+ ////////////////////////////////////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /7+/v////////////////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////////////////////
+ //////+/v7//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/////////////////////////////////
+ ////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /////////////////////////////////////////////////7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP+/v7////////////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////
+ ////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////////////////////
+ /////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP////////////////////////////////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/v7+/////////////////////////////////////////////eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////
+ /////////////////7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+/v7//////////////////////
+ //////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/////////////////////////////////////////////////v7+//wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/7+/v////////////////////////////////////////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////
+ //////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/////////////////
+ ////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/////////////////////////////////////////////////7+/v/8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP+/v7////////////////////////////////////////////95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////
+ ////////////////////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////
+ /////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP////////////////////////////////////////////////+/v7//AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/////////////////////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////
+ /////////////////////////////////7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+/v7//////
+ //////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////////////////v7+/
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////////////////////////////////////
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////////////////////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/
+ ////////////////////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////////////////////
+ /7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+/v7//////////////////////////////////////
+ //////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////
+ ////////////////////////////////////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /7+/v////////////////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////////////////////
+ //////+/v7//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/////////////////////////////////
+ ////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /////////////////////////////////////////////////7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP+/v7////////////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////
+ ////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////////////////////
+ /////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP////////////////////////////////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/v7+/////////////////////////////////////////////eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////
+ /////////////////7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+/v7//////////////////////
+ //////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/////////////////////////////////////////////////v7+//wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/7+/v////////////////////////////////////////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////
+ //////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/////////////////
+ ////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/////////////////////////////////////////////////7+/v/8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP+/v7////////////////////////////////////////////95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////
+ ////////////////////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////
+ /////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP////////////////////////////////////////////////+/v7//AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/////////////////////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////
+ /////////////////////////////////7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+/v7//////
+ //////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////////////////v7+/
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////////////////////////////////////
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////////////////////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/
+ ////////////////////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////////////////////
+ /7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+/v7//////////////////////////////////////
+ ////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ ////////////////////////////////////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /7+/v/////////////////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////////////////////
+ //////+/v7//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/v7+/////////////////////////////////
+ //////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ /////////////////////////////////////////////////7+/v/8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP+/v7///////////////////////////////////////////////////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////////////////////
+ ////////////v7+//wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7+/v///////////////////////////
+ /////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////////////////////////////////////////////////////+/v7//AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA////////////////////////////////////////////////////////////g397
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/g396////////////////////////////////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/eXl5////////////////
+ ////////////////////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////////////////////////////////////////////////////+RkZH/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////////////////////////////////////
+ ///////y8vH/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/8vHx////////////////////////////////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAABwAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////
+ //////////////////////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////
+ //////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP///////////////////////////////////////////////////////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////
+ /////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAEwAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA////////////////////////////////////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAEAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD//Pz8////////////////
+ ////////////////////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////////////////////////////////////
+ //////+dmpb/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP86Ojr/////
+ ////////////////////////////////////////////////////////////eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD//v7+////////////////////////////////////////////////////////////////
+ ////////////U1NT/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAACZAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////
+ /////////////////////////////v7+/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAI4AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/BAQE/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP//////////////////////////////////////////////////////////////////////////
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wEBAf8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////
+ //////////////////////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////////////////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP///////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////QEBA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA////////////////////////////////////////////////////////////////
+ ////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3p2cf//////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/Kioq////////////AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5QAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////
+ ////////////////////////////////////////////////////////////////////////////fHl0
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP//////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAANoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/0NDQ//////////////////9/f3/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/9/f3////////////////
+ /zg4OP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP/j4+P/////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP///////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP////////////////////////////////8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /////////////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////v7+/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+QkJD/////////////////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/IiIi////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////
+ /////////////////4WFhf8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ ////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP///////////////////////////////////////////wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP//////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////j4+P8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////
+ ////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP////////////////////////////////////////////////9+fn7/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8NDQ3/////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD///////////////////////////////////////////////////////////8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/3d3d////////////////////////////////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/8PDw////////////////////////////////
+ /////////////////////////////////9LS0v8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP//////////////////////////////////////////////////////////////////////AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ ////////////////////////////////////////////////////////////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////
+ ////////////////////////////////////////////qamp/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////////////////////
+ ////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/////////////////////////////////////////////////////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA//z8/P//////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////
+ //////////////////////////////////////////////////////////////////////8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/6enp////////////////////////////////////////////////////////////////
+ ///////////////////////////////////////Pz8//AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////v7+/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAANAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAHAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP9paWn/////////////////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////
+ ////////////////////////////////////////////////////////////mJiY/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////
+ //////9kZGT/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/4iIiP//////////////////////////////////////////
+ //////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wICAv//////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP//////////////////////GRkZ/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAVQAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAABKAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAMEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAADdAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACJAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAC7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAA0AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACfAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAMIAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAA7AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOUAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZgAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ dgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAmgAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAlgAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////AAA
+ AAAAA/////////////AAAAAAAAA////////////AAAAAAAAAB///////////AAAAAAAAAAB/////////
+ /AAAAAAAAAAAB////////+AAAAAAAAAAAAD///////+AAAAAAAAAAAAAH//////+AAAAAAAAAAAAAB//
+ /////AAAAAAAAAAAAAAP//////gAAAAAAAAAAAAAD//////4AAAAAAAAAAAAAAf/////8AAAAAAAAAAA
+ AAAH/////+AAAAAAAAAAAAAAA//////gAAAAAAAAAAAAAAH/////wAAAAAAAAAAAAAAB/////4AAAAAA
+ AAAAAAAAAP////+AAAAAAAAAAAAAAAD/////AAAAAAAAAAAAAAAAf////gAAAAAAAAAAAAAAAH////4A
+ AAAAAAAAAAAAAAA////8AAAAAAAAAAAAAAAAP///+AAAAAAAAAAAAAAAAB////gAAAAAAAAAAAAAAAAP
+ ///wAAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAf//+AAAAAAAAAAAAAAAAAH///AAAAAAAAAAAAA
+ AAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAA
+ AAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AA
+ AAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD
+ ///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAA
+ AAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAA
+ AAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AA
+ AAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD
+ ///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAA
+ AAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAA
+ AAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AA
+ AAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD
+ ///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAA
+ AAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAA
+ AAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//4AA
+ AAAAAAAAAAAAAAAB//+AAAAAAAAAAAAAAAAAAf//gAAAAAAAAAAAAAAAAAH//4AAAAAAAAAAAAAAAAAB
+ //8AAAAAAAAAAAAAAAAAAP//AAAAAAAAAAAAAAAAAAD//wAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAA
+ AAAAAH/+AAAAAAAAAAAAAAAAAAB//gAAAAAAAAAAAAAAAAAAf/4AAAAAAAAAAAAAAAAAAH/8AAAAAAAA
+ AAAAAAAAAAA//AAAAAAAAAAAAAAAAAAAP/wAAAAAAAAAAAAAAAAAAD/8AAAAAAAAAAAAAAAAAAA/+AAA
+ AAAAAAAAAAAAAAAAH/gAAAAAAAAAAAAAAAAAAB/4AAAAAAAAAAAAAAAAAAAf+AAAAAAAAAAAAAAAAAAA
+ H/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAA
+ AAAAAA/gAAAAAAAAAAAAAAAAAAAH4AAAAAAAAAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfgAAAAAAAA
+ AAAAAAAAAAAHwAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAADwAAA
+ AAAP//////AAAAAAA8AAAAAAH//////4AAAAAAP4AAAAAH///////gAAAAAf/4AAAAH///////+AAAAB
+ ///4AAAD////////wAAAH////wAAD/////////AAAP/////wAD/////////8AA///////wD/////////
+ /gB////////h//////////+H////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////8oAAAAgAAAAAABAAABAAgAAAAA
+ AACAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/3tzc///////5t7m/0paSv+MpZz/EBAQ/xAxGf9rY1L/vd7v
+ /4zmzv865s7/jOaE/zrmhP+cWqX/jK3O/zqtzv86rYT/Y62E/2Pmzv8Q5s7/Y+aE/xDmhP9jrc7/EK3O
+ /xCthP+1vb3/a4xS/++9Uv9rvVL/72NS/yljUv+tvVL/Kb1S/61jUv9rYxn/770Z/2u9Gf/vYxn/KWMZ
+ /629Gf8pvRn/rWMZ/5xae/9KjFL/zr1S/0q9Uv/OY1L/CGNS/4y9Uv8IvVL/jGNS/0pjGf/OvRn/Sr0Z
+ /85jGf8IYxn/jL0Z/wi9Gf+MYxn/ta17/+ate//m5nv/teZ7/7Wcvf/ee87/3jGE/94xzv+ce87/nDGE
+ /5wxzv/eWu//3hCl/94Q7/+cWu//nBCl/5wQ7/+EhHv/jKV7/+bvvf/ee6X/te+9/+acvf/v71L/jObv
+ /2vvUv/vlFL/Oubv/4zmpf865qX/KZRS/63vUv8p71L/rZRS/5x7pf9rlBn/jK3v/zqt7/86raX/7+8Z
+ /2vvGf/vlBn/KZQZ/63vGf8p7xn/rZQZ/2sZhP8pGYT/Y62l/2Pm7/8Q5u//Y+al/xDmpf9jre//EK3v
+ /xCtpf9rWrX/axC1/ylatf8pELX/zu9S/0rvUv/OlFL/CJRS/4zvUv8I71L/jJRS/0qUGf/O7xn/Su8Z
+ /86UGf8IlBn/jO8Z/wjvGf+MlBn/ShmE/wgZhP9KWrX/ShC1/whatf8IELX/ezpC/3s6CP+1OkL/tToI
+ /3sQQv97EAj/tRBC/7UQCP+9zr3/taWc/9577//eMaX/3jHv/5x77/+cMaX/nDHv/2tze//mrZz/5uac
+ /7XmnP/OWoT/5ta9/2tKhP8pSoT/Qjpa/2ta5v9rEOb/KVrm/ykQ5v9KSoT/CEqE/0pa5v9KEOb/CFrm
+ /wgQ5v9COgj/5jpC/xA6Qv/mOgj/5pzv/7Wc7/9CEEL/QhAI/+YQQv8QEEL/5hAI/2t7tf9rMbX/KXu1
+ /ykxtf9Ke7X/SjG1/wh7tf8IMbX/Qjo6/+a9vf97OmP/ezop/7U6Y/+1Oin/exBj/3sQKf+1EGP/tRAp
+ /xAQIf8pe4T/71qE/+9azv/vEIT/7xDO/61azv+tEIT/rRDO/857hP/OWqX/CHuE/85azv/OEIT/zhDO
+ /4xazv+MEIT/jBDO/0p7hP9CMSn/a3vm/2sx5v8pe+b/KTHm/0p75v9KMeb/CHvm/wgx5v/mOmP/EDpj
+ /+Y6Kf/mve//tb3v/0IQY/9CECn/5hBj/xAQY//mECn/73uE/+9apf+99+//7/fv/6WEe/8QKQD/e3t7
+ ///37/97e3P/GQAA/3trc///9///AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPwAAPwAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiVA6IJlZWVlRoa
+ GhoaGhoaGhoaGhoaGhoaGhoalRqVlZWVA5UDlQMDA5WWBM0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABvkDAgIC
+ AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC/pVNwwAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ zQX2AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9padBwAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAw5YCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgL6AwUEBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAABJUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgICAgICAgICAgICAgL2GvngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAGCAMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACVAgICAgICAgICAgICAgICAgICAgL2AgL2AgIC
+ AgICAgICAgICAgICAgICAvYC9gICAgICAgICAgICAgICAgICAgICAgICAgICAv4EAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnQICAgICAgICAgICAgICAgICAgL2
+ AwMDAwMDA/YD9vYD9gP29gP29gP2AwMDAwMDA08D9gL+AvoCAgICAgICAgICAgICAgICAgICAgMAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOD2AgICAgICAgICAgIC
+ AgICAgL2Gvv7+wEBAfv7+wH7Afv7+wEB+/sI+wH7AQH7+wH7AfsBThoDAgICAgICAgICAgICAgICAgIC
+ AgICAgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlf4CAgIC
+ AgICAgICAgICAgIDlvv7AQH7CPsBAQH7CPsBAQEI+wEBAfsB+wj7AQEBCPudAfsI+/v7BZX2AgL+AgIC
+ AgICAgICAgICAgIC9gYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAECAgICAgICAgICAgICAgIDTvsB+wH7AQH7+wH7AQEB+/sBAfv7AfsBAQEB+/v7AfsB+/sBAQEBAQH7
+ AQFNGqL+AgICAgICAgICAgICAgICXgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAADg9gICAgICAgICAgICAgKVTfsBAfsBCPsB+wH7CPsB+/sBCPsBAQH7CPsB+/v7AQj7AfsB
+ CPv7Afv7+wEI+/v7+/tOGgMCAgICAgICAgICAgL2BwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAJUCAgICAgICAgICAvYaTfv7+/sBAQH7nfsI+wH7+wj7AQEBAQEBAQH7+/sI
+ nQEB+wH7AfsBAQH7CAEB+/v7CAEBAQH7nZYCAgICAgICAgICAgJAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdAgICAgICAgICAgL2TfsBAQEI+537+wH7+/sBAZ0B+wGd+/sB
+ GwH7+wGd+/sB+wH7+wEI+wEB+/v7AfsBnfv7AQEBAQEBAQMC/gICAgICAgICAgLDAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P4CAgICAgICAgICApYBAQEBAQH7CPv7CAEBAQH7
+ +wEB+wj7AQH7CAEB+wgBAQH7CAEB+wEB+/sIAfv7AfsIAQH9G537+/sBTgICAgICAgICAgICApUAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACVAgICAgICAgICAgID+/v7Afv7+wH7
+ AQH7AQH7Afv7CPv7AQEB+wH7AQH7+/sB+/v7Afv7AfsB+/sBAQEI+wH7AfsBAQEBCPv7AwICAgICAgIC
+ AgICAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+QICAgICAgICAgIC9k0I
+ AfsI+/sI+wEBAQH7AfsIAQH7AQH7+wH7+537+wgBAfsIAQH7CAH7+wgBnQEBAfsB+/sBAfv7+/sBAQFN
+ AgICAgICAgICAgICAwYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOD+AgICAgIC
+ AgICAgKW+/sB+wEBAfsBAfv7+/sI+/sBAQEB+wH7CPsBCPsBAQEBAQEB+wEBAQEB+wEB+/v7AfsBAQj7
+ AQEI+wH7+/uV/gICAgICAgICAgIC+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ lQICAgICAgICAgICAwEBAQH7+wEBAfsB+wj7AfsB+/sBAfsI+wH7AQEBAQEBAQEBAQEB+/v7AZ0B+/sI
+ +/sIAfv7+wH7AfsB+wgBAfv2AgICAgICAgICAgL2zQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAJ0CAgICAgICAgICAvZN+537+wEI+50BAQj7AQEBAfsBCPv7+/sBAQEB+/v7+wEbAQEbAZ37
+ AfsI+wEB+/sBAfsBAQH7CPsBAQH7AfsB+xoCAgICAgICAgICAgL5AAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAATQICAgICAgICAgIClgH7CPsB+wEBGwEB+wH7+/sBAQGd+wgB+wH7AQH7CAEB
+ AQEBAQH7CAH7AQEB+wgBAQH7AfsBAQEB+wH7AQEBAfsB+/YCAgICAgICAgICAk0AAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNAgICAgICAgICAgP7+/sBAQEBAQEBAfud+/sBCPsBAQEBAQEB
+ +wj7+wEB+wH7+/sB+/v7AQEB+wEbAQH7+wH7CPv7AfsB+wj7+/v7AQj7lgICAgICAgICAgICTQAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABk0CAgICAgICAgL2TQgBAfv7+wEBAfsB+wgBAQEB
+ nf0bAQEBAQEBnfsI+/sB+wgBAfsIAQEB+50BAQEB+wgB+50B+wj7AQGd+/sIAQEB+/sBAwICAgICAgIC
+ AgJNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATQICAgICAgICApad+wEB/QEI+/v7
+ Afv7AQEBAQEbAQEB+wEbAQH7+/sBAZ37+wH7AfsB+/v7CPsBAfsB+wEBAfv7+50B+wEBAQEB+/v7AQgF
+ AgICAgICAgICAk0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNAgICAgICAgIDAQEB
+ /Rv7AfsI+/sIAQH7+wH7AQEBAQEBAQEB+wj7AQH7CPsB+/udAfsI+wH7+/sBAQEBAfv7CPsBAfsIAQEB
+ +/sIAQEB+52iAgICAgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE0CAgIC
+ AgICAk0BAQEBAQEB+wEBAfsBAQH7CPsBAfsB+/v7nfv7AQEB+/sBAQEBAQj7+wEBAQH7CPv7+/v7CPsB
+ AQH7+/v7ARv9AfudAQEBAU0CAgICAgICAgJNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAATQICAgICAgL2ARsBAQEBAfud+wH7Afv7AQH7AfsBAfsIAfsI+wEBAfsI+/v7+wH7AQEBAfv7AQEB
+ +wgBAQH7AQH7+wj7AQEBAQEBAfv7+wH7AQICAgICAgICAk0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAABNAgICAgICAgIBAQEBARv9AfsI+wH7CPv7+wH7CPsBAfsB+wEBAfv7+wEBAQEI+wEB
+ +/v7AQj7Afv7+wEBAQEB+wH7+wEBAQEB+/v7AQj7+wEB9gICAgICAgICTQYAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAABk0CAgICAgIC9vsB+/sBAfsBAQH7AQH7CAEBAQH7+/sBAQH7Afv7CPsB
+ AfsB+wH7+/sIAQH7Afv7CAEB+wH7AQH7CAEBAf0bAfsI+wH7+wgB+/sCAgICAgICAgJNAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATQICAgICAgICAfsBCPsBnfv7+wH7+wH7AQH7+/sBCPv7
+ +wEI+wEBAfv7CPud+wEI+/v7AfsBAQH7Afv7+wj7+wH7AQEBAQEB+wEBAQEB+wEBAfYCAgICAgICAk0A
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNAgICAgICAvYBAQEBAQH7CAH7CAH7+wH7
+ +wgBAQH7CPsBAQEB+/sBAQH7AfsB+wEBAfsIAfv7AQH7CAEBAfsI+wEBARsBAZ0BAfsB+wEBAQEBAgIC
+ AgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE0CAgICAgICAvsB+/v7+wH7
+ +wH7AQEBCPsBAQEBAQEB/f0BAQEB+wj7AQH7AQj7AQGdAfsBAfsI+/sBAQEBAQH9/QEBAQH7Afv7AQj7
+ Afv7+/v2AgICAgICAgJNBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGTQICAgICAgL2
+ AfsI+wH7CAEBAQH7AfsB+/vNAAAAAAAA/AQB+wEB+/v7AQEBAQH7+/sBAfsBAfsB+80AAAAAAAAABAEB
+ AfsIAQH7+/v7CPsBAQICAgICAgICAk0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABN
+ AgICAgICAgIB+wEBAQH7AfsB+/sI+wEB+wb8AAAAAAAABAEB+/sBAQj7+/v7+/v7CPv7AQH7AfsBBvwA
+ AAAAAAAI/QH7+/v7+wEB+wj7AQEB9gICAgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAE0CAgICAgIC9gEBAQEBAQH7CPsBAfsB+wEBBwAAAAAAAAAE+wgBAfsB+/sI+/sIAQH7+wH7
+ CAH7AQEHAAAAAAAAAAQB+wgBAfsI+/udAQEB+/sCAgICAgICAgJNAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAATQICAgICAgIC+wEBARsBAfv7AQEBAfsB+wEG/AAAAAAAAAQBAfsBAfsBAQEB
+ AQEBAQEBCPv7AQH7AQYAAAAAAAAABAEBAfsBAQEBAQEBAQEBAfYCAgICAgICAk0AAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZNAgICAgICAvYBAfudAfsI+wEBAfsIAfsB+80AAAAAAAD8BAEB
+ AfsIAfv7nfsBAQEBAQH7+wH7AQH7zQAAAAAAAAAEAQEBAfsB+wH7+/0bAQEBAgICAgICAgICTQAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE0CAgICAgIC/vsBAfv7AfsBAQGdGwEBAQEB+AAA
+ AAAAAAAE/QH7Afv7AfsI+wEBGwEBAQEBCPsBAQEG/AAAAAAAAAj9AQEBAQj7+wEI+wEB+wH2AgICAgIC
+ AgJNBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATQICAgICAgICAfsIAQEBAfv7AQEB
+ AQEB+/vNAAAAAAAAAAT7AfsI+wEBAQEBAQEB/RsBAQH7+/v7+wcAAAAAAAAABAEBGwEB+wEBAQEBAQEB
+ +wICAgICAgICAk0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNAgICAgICAgIB+/sB
+ AQEBAQj7+wEB+/v7AQb8AAAAAAAABP0BAfsBAfv7+wH7+wEBAQGdAQEBCPsBBgAAAAAAAAAEAQEBAfsB
+ +/sBAQEBAQEB9gICAgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABk0CAgIC
+ AgICAgj7Af0bAfsB+wH7+/sIAQEBBwAAAAAAAPwEAfsBAQH7CAH7CPv7+/sBARsBAQEB+/vNAAAAAAAA
+ /AQBAQEB+wgB/RsBARsBAQECAgICAgICAgJNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAATQICAgICAgIC+wEB+wEBAQH7+wEI+/sBAQEG/AAAAAAAAAQBAQH7Afv7AQEBAQEBCPsBAQH7+/sB
+ AQb8AAAAAAAABAEB+/v7AfsBAQEBAQH7AfYCAgICAgICAk0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAABNAgICAgICAvYBAQEBAQH7CAEBAQEBAQH7+wcAAAAAAAAABAEBAfsI+50BAQEBAZ37
+ AQEB+wgBAfsBBwAAAAAAAAAEAQH7CAH7Afv7nQH7AQH7AgICAgICAgICTQAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAE0CAgICAgICAgH7AQEB+/v7AQEBAQH7+wEBBgAAAAAAAAAEAQH7+wEB
+ AfsBGwH7+wEB+/v7AQEBAQEGAAAAAAAAAAQBAQEBAQH7AQj7+wH7+wH2AgICAgICAgJNAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGTQICAgICAgL2Af0bnfsI+wEBGwEB+wj7+/vNAAAAAAAA
+ /AQB+wgB+/sBAQH7CAEBAfsIAQEBAQH7+wYAAAAAAAD8BAEB+/v7AQEBAQH7CAEBAQICAgICAgICAk0A
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNAgICAgICAgL7AQEBAQEBAQEBAfsBAQEB
+ +wb8AAAAAAAABP0BAfsB+wj7AQH7AQH7+/v7AQEbAQEBBgYAAAAAAAAEAQEBAQj7+/v7AQEBAQH79gIC
+ AgICAgICTQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE0CAgICAgIC9gH7Afv7AQEB
+ AQH7nfsB+wEBBwAAAAAAAAAEAfsBAQEB+/v7AQH7+wgBAQH7AQEB+/vNAAAAAAAAAAQB+wEB+/sI+wH9
+ GwH7AQECAgICAgICAgJNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATQICAgICAgIC
+ AQH7AQj7AZ0bAQEI+wEB+wEG/AAAAAAAAAQBAQH7+/v7CPsBnQH7+wEBAQH7+wEBAQb8AAAAAAAABAEB
+ AfsB+wEBAfsBAQEB+/YCAgICAgICAk0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABN
+ AgICAgICAvb7AQEB+/v7AQEB+/sB+/sBTc0AAAAAAAD8BAEB+wgBAQEBAQH7CAH7+/v7CAEB/QEBBwAA
+ AAAAAPwEAQEB+wgB+/udAfv7+wEBAgICAgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAE0CAgICAgICAgEB+wH7AQj7AQEB+wj7AQj7BgAAAAAAAAAE/fv7+wEBAQEBARsBAQEBCPv7
+ AQH7GwEGAAAAAAAAAAQBAQH7+/sB+wj7AQEI+/v2AgICAgICAgJNBgAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAGTQICAgICAgL2+/sI+wH7Afv7+wEB+wEB+/sHAAAAAAAAAAT7CAEBAQEBAQEB
+ AQEB+wH7Afv7AQH7+wYAAAAAAAAABAH7+wgB+/sB+wH7AfsBAQICAgICAgICAk0AAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNAgICAgICAgIBAQEBAQH7AfsI+wEBAfsBAQb8AAAAAAAABAEB
+ AQEBG/0BG/0B+wEBAfv7AQj7AQEBBgYAAAAAAAAE/QEBAQEBAQj7AQEBAfsBAgICAgICAgICTQAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE0CAgICAgIC9gH7+/v7CAH7AQEB+/sBAfv7zQAA
+ AAAAAPwEAfsB+wEB+wEB+/sBnfsIAZ0BAQEB+/vNAAAAAAAA/AT7Afv7nfsB+/v7+/sIAfsCAgICAgIC
+ AgJNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATQICAgICAgIC+wH7CPv7AQGd+/v7
+ CPv7+wEGAAAAAAAAAAT9AQEB+/sB+/sBAQj7AQEB+/v7+/sBAQYAAAAAAAAABP0BAfsI+wEBAQEI+/v7
+ AfYCAgICAgICAk0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZNAgICAgICAvYBAQEB
+ AQEB+wj7AQH7CPsBAQcAAAAAAAAABAEB+wgB+wgBnfsBARsB+/sI+/sI+/sBBwAAAAAAAAAEAfsBAQH7
+ +/sBAQEBAQEBAgICAgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE0CAgIC
+ AgICAgH7AQEB+wEBAQEBAfsBAQH7BgAAAAAAAAAE+wEBAQEB+wH7+wEBAQEBAQEBAQEBAQEG/AAAAAAA
+ AAT7Afv7AQEBCPv7+/sB+wH2AgICAgICAgJNBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAATQICAgICAgL2AQH7+wH9GwH7+/sBAQEBAQEHAAYGBgAGAASdARsB+wEB+wgB+/sB+/v7AQH7AQEB
+ +wcABgAGBgYABPsI+/sB+wEBAfsIAfsB+wICAgICAgICAk0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAABNAgICAgICAgL7+wEI+wEBAQEBCPv7Afv7AQEBAQj7AQEBAQEBAQEBAfsBAQEB+wj7
+ AQj7+wH7+/ud+wj7AZ0I+wEBAfsBAQj7AQEBAQEBAQEB9gICAgICAgICTQAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAABk0CAgICAgIC9gEBAfv7+wH7AQH7+537CPv7+/sB+/v7nQH7AfsB+/sI
+ +/v7+wEBAfsBAQH7CAH7CPsB+wEBAfv7AfudAQEB+wEBGwEB+/sBAQECAgICAgICAgJNAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATQICAgICAgL+AfsBAfsI+wEB+/sBCPsBAQH7CPsB+wj7
+ +/v7CPsBAfsBAfsI+wEB/QH7AZ37+wEBAQEBAfv7AfsI+wH7AfsBAQGdAfv7CPv7AQICAgICAgICAk0G
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNAgICAgICAgJNAQEBAQEB+wj7AQEB+wH7
+ AQEB+wEB+wj7AQEB+/udAQEBAQEBARv7AQH7CPsBAQH7+/kI+wEBAQH7+/sI+/v7AfsBAQEBAQFNAgIC
+ AgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE0CAgICAgICApUBAQEB+wEB
+ AQEB+/v7+wj7AQH9AQH7AQEB+wH7+wj7+/sB+wEBAZ0BAQEBAQH7+wH7CPsBAfv7+wEBCPsBAfsI+wEB
+ +/sBAZX+AgICAgICAgJNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATQICAgICAgIC
+ /k4B+/sBARsBAfsI+wEBAfv9G/v7nQH7AfsI+wEBAfsI+/ud+/v7Af0bAfsB+wgB+wH7+/v7CAEBAQEB
+ AQEBAfv7+/sIAQEFAgICAgICAgICAk0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABN
+ AgICAgICAgICAwEBAQj7AQH7AQEBAQEBAZ0BAfsI+wEB+/sBAfsB+/sB+wj7AQj7+wEBAQH7+/sB+wH7
+ CPv7Afv7+/sBG/0BAQEI+wEBAQP2AgICAgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAE0CAgICAgICAgL+BQEB+wEBAQH7+wH9GwEB+wEBAQEB+wj7AQH7CPsBAQEBAQEBAQEBAQH7
+ CPsB+wgB+wEBAQEB+widAQEB+wH7AfsB+/uWAgICAgICAgICAgJNAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAATQICAgICAgICAgL2AQEBAfv7+wEI+/sBAQEBAfv7+wEBAQEB+/v7AQEB+/v7
+ +/v7AQEB+/sBAZ0BAQEBAQH7Afv7+wEB+wH7+wj7AQEBAQMCAgICAgICAgICAk0AAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAADN9gICAgICAgICAv4aAQH7CPsB+/udAfv7+wH7CAEBARsBAfsI
+ Afv7+/sIAfsI+wEB+wj7+/sB+/v7+wH7nQH7CAEBAfsI+wEBAQEBAf0aAgICAgICAgICAgICzQAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD5AgICAgICAgICAvZNAQEBAQEB+wj7AQEI+wEB
+ AQEBAQH7AQH7AQEI+wH7AQEBAQEbAQEBCPsBAQj7+wj7AQEB+wH7+/sBAQH7+wEBTfb+AgICAgICAgIC
+ AvkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYDAgICAgICAgIC/pUB+wH7+wEB
+ AfsBAf0bAfv7+wH7+537AfudAfsB+/sB+wEBAQGd+wEBAQH7AQEB+/v7+50B+wj7Afv7AQEB+wGVAgIC
+ AgICAgICAgIDBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgCAgICAgICAgIC
+ /k0B+wEI+wEBAQH7+wGdAQEI+wEBCPv7AQj7AQEBnQj7Afv7+wEB+/sBG/0B+/v7CPv7CPv7AQEBAfsI
+ +wEBTQICAgICAgICAgICAggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABpUC
+ AgICAgICAgIClQEBAQEBAfv7CPsBAQH7Afv7AfsBAQEB+/v7AfsBAQH7CAEB+wgBAQEB+/udAQEBAQH7
+ AQEB+/sBAfsBAQGVAgICAgICAgICAgIDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAwwL+AgICAgICAgICBQEB+wEb/QH7AQH7+wH7+wj7AQH7AfsB+wj7+wH7+/v7+wH7+wEB+/v7
+ AQj7+wH7AQH7+wH7+wj7AQH7Tv4CAgICAgICAgIC/sMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAGgICAgICAgICAgIDAQEBAQH7+wH7+/sI+wEBAQEB+wj7AQEB+wgB+/sIAQH7
+ CPsB+/sIAQEB+/sBAQH7CAH7CAEB+wH7nQEDAgICAgICAgICAgIaAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg/v4CAgICAgICAgKWAQEBAQEBCPsBCPsBAQEBAfv7+wEB+wH7
+ +wEBAQH7AQH7AQEBAfsBAfsBAQj7AQEBAQH7+wEBnQEBlgICAgICAgICAgIC/uAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAgICAgICAgICAvb7AfsB+wH7AQH7Afv9GwH7
+ CPsBAfsI+wEBAfsB+wH7AQEB+wH7AfsBAQEBAQH9GwH7AQEB+wEB+Zb2AgICAgICAgIC/gIFAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM32AgICAgICAgICAhr7AZ0BAQEB
+ +wH7AQEBnfsBAQEBAQEBAfv7+wj7+wj7+/v7CPv7CPv7+/sBGwEBAQEBAQEBAfcDAgICAgICAgICAgIC
+ 9s0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ0CAgICAgICAgIC
+ AgP3AQEB+wH7CAEBAQEBAQEBARsBAfv7CPsB+wEB+/sI+wH7AQH7+wgBAQEBAQEBAfv5AfmVAgICAgIC
+ AgICAgICAgL5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAABgP+
+ AgICAgICAgICAgKVTQEBAQH7AfsBG/37+/ud+/sBnfv7AZ37+wGd+/sBnfv7AZ37+wH7+/sB+wEBAfuW
+ 9gICAgICAgICAgICAgICAwYAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdCAAA
+ AAAAAAAACAICAgICAgICAgICAgL2lgEBAQEBAQEB+wgB+wgBAfsIAQH7CAEB+wgBAfsIAQH7CAEB+wgB
+ AQEBAflNAwICAgICAgICAgICAgICAgIIAAAAAAAAAAAEnQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAABoDAAAAAAAAAAAAlQICAgICAgICAgICAgICAwX9AQEB+wH7AfsB+wH7AfsB+wH7AfsB+wH7AfsB
+ +wH7AfsBAQEBAQFNlQICAgICAgICAgICAgICAgIClQAAAAAAAAAAAAOWAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA9v75AAAAAAAAAADDAgICAgICAgICAgICAgICApVN+wEBAQEBAQEBAQEBAQEBAQEB
+ AQEBAQEBAQEBAQEBAQEBAQH7lvYCAgICAgICAgICAgICAgIC/gLDAAAAAAAAAAABAvYAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAMMCAvYGAAAAAAAAAABAAgICAgICAgICAgICAgICAvaW+QEB+wEBAfsB
+ AQH7AQEB+wEBAfsBAQH7AQEB+wEBAfsBBQMCAgICAgICAgICAgICAgICAgICGgAAAAAAAAAABvb+AsMA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIC/gUAAAAAAAAAAAcCAgICAgICAgICAgICAgICAgIC
+ Avb+AgL2/gIC9v4CAvb+AgL2/gIC9v4CAvb+AgL2/gICAgICAgICAgICAgICAgICAgIC/gUGAAAAAAAA
+ AAAFAgICAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAgIC/gcAAAAAAAAAAE0CAgICAgICAgIC
+ AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXD
+ AAAAAAAAAAAAB/7+AgIaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABvYCAgICGgAAAAAAAAAAzZYC
+ AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgP9AAAAAAAAAAAAAAAaAgICAv4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDAgICAgICwwAA
+ AAAAAAAAAMMDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgICAgICAv4FBgAAAAAAAAAAAAAAwwICAgICAsMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE0C
+ AgICAgKVAAAAAAAAAAAAAAAB9gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgICAgICAgICAgICAgKVwwAAAAAAAAAAAAAAAACVAgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAlf4CAgICAgIIAAAAAAAAAAAAAADNlgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgICAgICAgICAgICAgICAgICAgIDCAAAAAAAAAAAAAAAAAAACAICAgICAgIaAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAb+AgICAgICAgMGAAAAAAAAAAAAAAAApZUCAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgICAgICAgICAgICAgICAgICAgICAgICAv76BQYAAAAAAAAAAAAAAAAAAAgDAgICAgIC/v4GAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAABP4CAgICAgICAvkAAAAAAAAAAAAAAAAAAAH2AgICAgICAgICAgIC
+ AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcMAAAAAAAAAAAAAAAAAAOAaAgICAgIC
+ AgICAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZNAgICAgICAgIC+gQAAAAAAAAAAAAAAAAAAAYFAvoC
+ AvoC+gL6AvoC+gL6AvoC+gL6AvoC+gL6AvoC+gL6AvoC+gL6AvoCAgICAwgAAAAAAAAAAAAAAAAAAAYF
+ /gICAgICAgICAgICTQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJUCAgICAgICAgICAhrNAAAAAAAAAAAA
+ AAAAAADDnQGdAZ0BnQGdAZ0BnQGdAZ0BnQGdAZ0BnQGdAZ0BnQGdAZ0BnQGdAZ0BnQgGAAAAAAAAAAAA
+ AAAAAAAIAwICAgICAgICAgICAgKVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG/gICAgICAgICAgICAvZN
+ BgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAADglQICAgICAgICAgICAgICAv4GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT+AgICAgIC
+ AgICAgICAgIDBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAADNBf4CAgICAgICAgICAgICAgICAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ BQICAgICAgICAgICAgICAgICGuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAMCAgICAgICAgICAgICAgICAgL+BQAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAABAwICAgL+AgICAgICAgICAgIC9k0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw5X+AgICAgICAgICAgICAgICAgICAgP7AAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAzQiW9gICAgICAgICAgICAgICAgMEAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAgICAgICAgICAgICAgICAgL2lgHN
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw/mV/v7+/v4CAgICAgICAwQAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEA/4CAgICAgICAgIC
+ ApVNwwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGBAUDAgL+AgIC/k0AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGTf4C
+ Av4CAgIDlgQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/Rr2ApbN
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAB0AC9hoB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAOAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////////////////////////////////////
+ ///////////////////////////////////////////////////////////////////////8AAAAAAAD
+ ////////////8AAAAAAAAD///////////8AAAAAAAAAH//////////8AAAAAAAAAAH/////////8AAAA
+ AAAAAAAH////////4AAAAAAAAAAAAP///////4AAAAAAAAAAAAAf//////4AAAAAAAAAAAAAH//////8
+ AAAAAAAAAAAAAA//////+AAAAAAAAAAAAAAP//////gAAAAAAAAAAAAAB//////wAAAAAAAAAAAAAAf/
+ ////4AAAAAAAAAAAAAAD/////+AAAAAAAAAAAAAAAf/////AAAAAAAAAAAAAAAH/////gAAAAAAAAAAA
+ AAAA/////4AAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAB////+AAAAAAAAAAAAAAAAf////gAAAAAA
+ AAAAAAAAAD////wAAAAAAAAAAAAAAAA////4AAAAAAAAAAAAAAAAH///+AAAAAAAAAAAAAAAAA////AA
+ AAAAAAAAAAAAAAAP///gAAAAAAAAAAAAAAAAB///4AAAAAAAAAAAAAAAAAf//8AAAAAAAAAAAAAAAAAD
+ ///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAA
+ AAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAA
+ AAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AA
+ AAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD
+ ///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAA
+ AAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAA
+ AAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AA
+ AAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD
+ ///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAA
+ AAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAA
+ AAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AA
+ AAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD
+ ///AAAAAAAAAAAAAAAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAA
+ AAAAA///wAAAAAAAAAAAAAAAAAP//8AAAAAAAAAAAAAAAAAD///AAAAAAAAAAAAAAAAAA///gAAAAAAA
+ AAAAAAAAAAH//4AAAAAAAAAAAAAAAAAB//+AAAAAAAAAAAAAAAAAAf//gAAAAAAAAAAAAAAAAAH//wAA
+ AAAAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAAAP//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAA
+ f/4AAAAAAAAAAAAAAAAAAH/+AAAAAAAAAAAAAAAAAAB//gAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAA
+ AAAAAD/8AAAAAAAAAAAAAAAAAAA//AAAAAAAAAAAAAAAAAAAP/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAA
+ AAAAAAAAAAAf+AAAAAAAAAAAAAAAAAAAH/gAAAAAAAAAAAAAAAAAAB/4AAAAAAAAAAAAAAAAAAAf8AAA
+ AAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAA
+ D+AAAAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAH4AAAAAAAAAAAAAAAAAAAB+AAAAAAAAAAAAAA
+ AAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAPAAAAAAA//
+ ////8AAAAAADwAAAAAAf//////gAAAAAA/gAAAAAf//////+AAAAAB//gAAAAf///////4AAAAH///gA
+ AAP////////AAAAf////AAAP////////8AAA//////AAP/////////wAD///////AP/////////+AH//
+ /////+H//////////4f/////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////ygAAABAAAAAgAAAAAEAIAAAAAAAAIAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA5QAAANQAAADMAAAAwwAAANMAAADdAAAA
+ 5QAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAFYAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAABkAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP9/f3//////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAA/wAAAP8AAAD/AAAA////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ /wAAAP////////////////////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ sQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA/wAAAP///////////////////////////////////////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////////////////AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAACwAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////
+ ////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/////////////////////////////////+fn5/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/////
+ ////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP////////////////////////////////8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD//////////////////////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/////////////////////////////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP//////////////////////////
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/////
+ //////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA//////////////////////+joJ3/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP//////////////////////o6Cd/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/////////////////////
+ /6Ognf95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP///////////////////////////wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ //////////////////////+joJ3/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA
+ /wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA
+ /wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////
+ //////8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP//////////////////////o6Cd/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ ////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD//////////////////////6Ognf95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP///////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA////////////////
+ //////+joJ3/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD///////////////////////////8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP//////////////////////o6Cd/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA
+ /wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD//////////////////////6Ognf95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP///////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA//////////////////////+joJ3/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD///////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP//////////
+ ////////////o6Cd/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA
+ /wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD//////////////////////6Ognf95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA//////////////////////+joJ3/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD///////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP//////////////////////o6Cd
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/wAAAP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/////
+ /////////////////6Ognf95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA
+ /wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA
+ /wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA//////////////////////+joJ3/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP//////////////////////o6Cd/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/////////////////////
+ //////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP///////////////////////////wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ ////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////
+ //////8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP////////////////////////////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////
+ ////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/////////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP//////////
+ //////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/////////////////////////////////wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA////////////////////////////joqG/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP////////////////////////////////95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw//r5+f//////////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////
+ /////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ //z8/P////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP//////////////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////////////////////////////////AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP///////////wAAAP8AAAD/AAAA/wAAAP8iIiL/////////////////////
+ //////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////////////////////
+ ////////////NTU1/wAAAP8AAAD/AAAA/wAAAP///////v7+/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD///////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////AgIC/wAAAP8AAAD/AAAA/wAAAP8AAAD///////////8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAP8AAAD/AAAA
+ /wAAAP//////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD//v7+/////////////////wAAAP8AAAD/AAAA/wAAAP8AAABFAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP///////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP//////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/5+fn////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/////////////////////////////////AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA////////////////
+ ////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA6QAAAP8AAAD/AAAA
+ /wAAAP////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA//7+/v//////////
+ ////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA/wAAAN8AAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP/+/v7/////////////////////////////////////
+ //////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP////////////////////////////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAEgAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMMAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAA////////////////////////8AAAP//////AAAAD/////gAAAAB/
+ ///4AAAAAAf//+AAAAAAA///4AAAAAAD///AAAAAAAH//4AAAAAAAf//gAAAAAAA//8AAAAAAAB//gAA
+ AAAAAH/+AAAAAAAAP/wAAAAAAAA/+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAA
+ H/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAA
+ AAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAA
+ H/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAA
+ AAAAAB/wAAAAAAAAD/AAAAAAAAAP8AAAAAAAAA/wAAAAAAAAD+AAAAAAAAAH4AAAAAAAAAfgAAAAAAAA
+ B+AAAAAAAAAHwAAAAAAAAAPAAAAAAAAAA8AAAAAAAAADgAAAAAAAAAGAAAAAAAAAAYAAAAAAAAABgAAD
+ ///AAAHwAA////AAD/4AP////AB//+B////+B////f////+///////////////////////8oAAAAQAAA
+ AIAAAAABAAgAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wICAv8KCgr/CwsL/xgYGP9eXl7/pKSk
+ /+np6f/q6ur/ZGRk/2ZmZv/s7Oz/p6en/2FhYf8bGxv/BwcH/0JCQv+JiYn/0NDQ//7+/v//////mZmZ
+ /zAwMP/Ly8v/09PT/4yMjP9FRUX/CAgI//T09P/u7u7/a2tr/wMDA/8NDQ3/+vr6//b29v9DQ0P/GRkZ
+ //39/f+cnJz/FRUV/yoqKv+8vLz/1tbW/zc3N/8tLS3/qamp/7e3t/+Xl5f/VlZW/+Li4v/V1dX/lJSU
+ //j4+P8jIyP/Dw8P/5CQkP/7+/v/8PDw/3BwcP8EBAT/h4eH/5OTk/9RUVH/jY2N/wEBAf9fX1//6Ojo
+ /9LS0v8/Pz//i4uL/xISEv8RERH/Li4u/8XFxf+mpqb/Ghoa/xAQEP/r6+v//Pz8/8zMzP9ubm7/CQkJ
+ /+Hh4f/y8vL/dHR0/wUFBf9tbW3/ioqK/9ra2v95eXn/8vLx/6mnpP95dXD/gX14/8TCwP97e3v/2NjY
+ /0hISP9QUFD/FhYW//Hx8f/9/Pz/w8G//4B9eP+QjYn/3dzb/xcXF/9PT0//R0dH/93c2v+QjIj/p6Wi
+ //Hw8P8rKyv/y8nH/4B8d//Bv73/LCws/7W1tf/4+Pf/hYF9/7m3tP/09PP/RkZG/9HR0f/v7+7/fnp1
+ /7GvrP9jY2P/qaej/3t3cv/q6ej/ZWVl/8HBwf/k4+L/enZx/6Gem//Dw8P/mpeT/9zb2v/V1NP/k4+L
+ /7q4tv9JR0T/QkA+/3FtaP9JRkP/cW1p/w8ODv9nY1//Dg4N/2hkYP92cm3/eHVw/9jW1f+UkY3/qqek
+ /97d3P/29vX/hoN+/6Ohnf+Pj4//19XU/3x4c//r6+r/oaGh/9zc3P+qqKX/s7Gu//f39/8gICD/Pj4+
+ /4eDf/+Cfnr/9fX1/5GRkf+PjIj/29vb/9jX1v+cmZX/fnp2/5+cmf/Ew8D/PT09/+Xk4/+ppqP/kY6K
+ /7a0sf/b2tn/19fX//Hx8P/z8/L/9fX0//f39v/19PT/8/Pz/01NTf+YmJj/uLi4/39/f/9ycnL/1NTU
+ /0tLS/9sbGz/aWlp/2JiYv9dXV3/XFxc/1tbW/8cHBz/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAABysvMhM1Bzs/P0M/OzkENzQkKzB5QBdEAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAFEKYBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUyT97UQAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ8cIFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCLGyHEA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACxSIUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU
+ FBQUxgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANxQUFBQUFBQUFCK+v8AiwampwSKuwsNacK4UFBQU
+ FBQUFBQUFBTEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtyUUFBQUFBQUuLmjXFxcXFxcXFxcXFxcXFxc
+ uru8OBQUFBQUFBQUvVUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7EUFBQUFBOys1xcXFxcXFxcXFxcXFxc
+ XFxcXFxcXLS1toMUFBQUFBQeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK8UFBQUFJ2wXFxcXFxcXFxcXFxc
+ XFxcXFxcXFxcXFxcXFxcZhQUFBQUTTYAAAAAAAAAAAAAAAAAAAAAAAAAAKslFBQUFJ6sXFxcXFxcXFxc
+ XFxcXFxcXFxcXFxcXFxcXFxcXK2uFBQUFBQRAAAAAAAAAAAAAAAAAAAAAAAAAAOmFBQUFBSnXFxcXFxc
+ XFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcqBQUFBQUqaoAAAAAAAAAAAAAAAAAAAAAAAChFBQUFBSiXFxc
+ XFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXKOkFBQUFBSlAAAAAAAAAAAAAAAAAAAAAAAAiRQUFBSe
+ n1xcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcoBQUFBQUiQAAAAAAAAAAAAAAAAAAAAAAAIkU
+ FBQUnFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFydFBQUFIkAAAAAAAAAAAAAAAAAAAAA
+ AACJFBQUmlxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcmxQUFBSJAAAAAAAAAAAAAAAA
+ AAAAAAAAiRQUFI5cXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFwTFBQUiQAAAAAAAAAA
+ AAAAAAAAAAAAAIkUFBSOXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcExQUFIkAAAAA
+ AAAAAAAAAAAAAAAAAACJFBQUjlxcXFxcXFxcmJiYmJlcXFxcXFxcXFxcXJiYmJiZXFxcXFxcXBMUFBSJ
+ AAAAAAAAAAAAAAAAAAAAAAAAiRQUFI5cXFxcXFxcXJQAAACVXFxcXFxcXFxcXFyWAAAAl1xcXFxcXFwT
+ FBQUiQAAAAAAAAAAAAAAAAAAAAAAAIkUFBSOXFxcXFxcXFyUAAAAlVxcXFxcXFxcXFxclgAAAJdcXFxc
+ XFxcExQUFIkAAAAAAAAAAAAAAAAAAAAAAACJFBQUjlxcXFxcXFxclAAAAJVcXFxcXFxcXFxcXJYAAACX
+ XFxcXFxcXBMUFBSJAAAAAAAAAAAAAAAAAAAAAAAAiRQUFI5cXFxcXFxcXJQAAACVXFxcXFxcXFxcXFyW
+ AAAAl1xcXFxcXFwTFBQUiQAAAAAAAAAAAAAAAAAAAAAAAIkUFBSOXFxcXFxcXFyUAAAAlVxcXFxcXFxc
+ XFxclgAAAJdcXFxcXFxcExQUFIkAAAAAAAAAAAAAAAAAAAAAAACJFBQUjlxcXFxcXFxclAAAAJVcXFxc
+ XFxcXFxcXJYAAACXXFxcXFxcXBMUFBSJAAAAAAAAAAAAAAAAAAAAAAAAiRQUFI5cXFxcXFxcXJQAAACV
+ XFxcXFxcXFxcXFyWAAAAl1xcXFxcXFwTFBQUiQAAAAAAAAAAAAAAAAAAAAAAAIkUFBSOXFxcXFxcXFyU
+ AAAAlVxcXFxcXFxcXFxclgAAAJdcXFxcXFxcExQUFIkAAAAAAAAAAAAAAAAAAAAAAACJFBQUjlxcXFxc
+ XFxclAAAAJVcXFxcXFxcXFxcXJYAAACXXFxcXFxcXBMUFBSJAAAAAAAAAAAAAAAAAAAAAAAAiRQUFI5c
+ XFxcXFxcXJQAAACVXFxcXFxcXFxcXFyWAAAAl1xcXFxcXFwTFBQUiQAAAAAAAAAAAAAAAAAAAAAAAIkU
+ FBSOXFxcXFxcXFyUAAAAlVxcXFxcXFxcXFxclgAAAJdcXFxcXFxcExQUFIkAAAAAAAAAAAAAAAAAAAAA
+ AACJFBQUjlxcXFxcXFxclAAAAJVcXFxcXFxcXFxcXJYAAACXXFxcXFxcXBMUFBSJAAAAAAAAAAAAAAAA
+ AAAAAAAAiRQUFI5cXFxcXFxcXI+QkJCRXFxcXFxcXFxcXFySkJCQk1xcXFxcXFwTFBQUiQAAAAAAAAAA
+ AAAAAAAAAAAAAIkUFBSOXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcExQUFIkAAAAA
+ AAAAAAAAAAAAAAAAAACJFBQUjFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcjRQUFBSJ
+ AAAAAAAAAAAAAAAAAAAAAAAAiRQUFBSKXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXIsU
+ FBQUiQAAAAAAAAAAAAAAAAAAAAAAAIUUFBQUhodcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxc
+ XIgUFBQUFIUAAAAAAAAAAAAAAAAAAAAAAACAFBQUFBSBXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxc
+ XFxcXIKDFBQUFBSEAAAAAAAAAAAAAAAAAAAAAAAAH3wUFBQUfX5cXFxcXFxcXFxcXFxcXFxcXFxcXFxc
+ XFxcXFxcXFx/FBQUFBRDHwAAAAAAAAAAAAAAAAAAAAAAAAAaFBQUFBR5XFxcXFxcXFxcXFxcXFxcXFxc
+ XFxcXFxcXFxcXFxdehQUFBQUewAAAAAAAAAAAAAAAAAAAAAAAAAAAHYUFBQUd3hcXFxcXFxcXFxcXFxc
+ XFxcXFxcXFxcXFxcXFxcdBQUFBQULgAAAAAAAAAAAAAAAAAAAAAAAAAAAABxOBQUFBRyXFxcXFxcXFxc
+ XFxcXFxcXFxcXFxcXFxcXFxzdGUUFBQUTnUAAAAAAAAAAAAAAAAAAAAAAABVAAAAAC8UFBQUFG1uXFxc
+ XFxcXFxcXFxcXFxcXFxcXFxcXFxvcBQUFBQUFBUAAAAAVQAAAAAAAAAAAAAAAAAAYWIAAABjZBQUFBQU
+ ZWZnXFxcXFxcXFxcXFxcXFxcXFxcXGhpFBQUFBQUFFNqAAAAa2wAAAAAAAAAAAAAAAAAAFdYVQAAAFkU
+ FBQUFBQUWltcXFxcXFxcXFxcXFxcXFxcXV4lFBQUFBQUFBRfAAAAVWARAAAAAAAAAAAAAAAAAABPFFAA
+ AABRUhQUFBQUFBQUJSUlJSUlJSUlJSUlJSUlJRMUFBQUFBQUFFNUVQAAAFYUFwAAAAAAAAAAAAAAAABG
+ JRQLRwAAAEhJFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE0pLAAAAAExNFE5HAAAAAAAAAAAA
+ AAAAPhQUFD8AAAAAQEFCFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQ0QAAAAAAABFFBQUPgAAAAAA
+ AAAAAAAAADMUFBQ0NQAAAAAANjc4FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ5OjsAAAAAAAM8IRQUFD0A
+ AAAAAAAAAAAAAAAqFBQUFBIrAAAAAAAALC0uLi4uLi4uLi4uLi4uLi4uLi4uLi4vBAAAAAAAADAxFBQU
+ FBQyAAAAAAAAAAAAAAAkExQUFBQUJSYnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCkU
+ FBQUFBQUEyQAAAAAAAAAAAAAEBwUFBQUFBQUHR4fAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAg
+ GSEUFBQUFBQUFCIjAAAAAAAAAAAAAAAPEBESExQUFBQUFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAFhcUFBQUFBMYGRobAAAAAAAAAAAAAAAAAAAAAAQFBgcICQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAABCgsLDA0OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAADAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////
+ ///////////////wAAA//////8AAAAP////+AAAAAH////gAAAAAB///4AAAAAAD///gAAAAAAP//8AA
+ AAAAAf//gAAAAAAB//+AAAAAAAD//wAAAAAAAH/+AAAAAAAAf/4AAAAAAAA//AAAAAAAAD/4AAAAAAAA
+ H/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAA
+ AAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAA
+ H/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAA
+ AAAAAB/4AAAAAAAAH/gAAAAAAAAf+AAAAAAAAB/4AAAAAAAAH/AAAAAAAAAP8AAAAAAAAA/wAAAAAAAA
+ D/AAAAAAAAAP4AAAAAAAAAfgAAAAAAAAB+AAAAAAAAAH4AAAAAAAAAfAAAAAAAAAA8AAAAAAAAADwAAA
+ AAAAAAOAAAAAAAAAAYAAAAAAAAABgAAAAAAAAAGAAAP//8AAAfAAD///8AAP/gA////8AH//4H////4H
+ ///9/////7///////////////////////ygAAAAwAAAAYAAAAAEAIAAAAAAAAEgAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ /wAAAP//////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD//////////////////////////////////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP////////////////////////////////95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD///////////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA////////////////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA////////////////
+ //////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////kZGR
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////
+ //////////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ /////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD//////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD//////////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD//////////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/qaek/////////////////wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/qaek////////////////
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////
+ ////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/qaek
+ /////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP95dXD/qaek/////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/qaek/////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/qaek/////////////////wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/qaek////////////////
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////
+ ////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/qaek
+ /////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP95dXD/qaek/////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/qaek/////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/qaek/////////////////wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/qaek////////////////
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/////
+ ////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/qaek
+ /////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/////////////////fXl0/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD//////////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD//////////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD//////////////////////wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD///////////////////////////95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP///////////////////////////wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA////////////////
+ //////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw//z7+///////////////////////AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ ////////////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP//////////////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////
+ //////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8iIiL///////////////////////////95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /////////////////////////////////zs7O/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAHQAAAD/AAAA/wAAAP//////AAAA/wAAAP8AAAD/////////////////////
+ ////////////oZ6a/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP+al5P//////////////////////////////////////wAAAP8AAAD/AAAA//////8AAAD/AAAA
+ /wAAAP8AAABhAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA////////////AAAA/wAAAP8AAAD/AAAA
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ ////////////AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA////////////////
+ /wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/////////////////AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////
+ //////////////////////////////////////////////////////////////////////+oqKj/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8HBwf/////////////////AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA//////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAA/wAAAP8AAAD//////////////////////////////////////wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////////
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA////////////////////////////////
+ //////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP/5+fn//////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////
+ //////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAAUAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8AAP///////wAA//gA
+ AD//AAD/4AAAA/8AAP+AAAAA/wAA/wAAAAB/AAD+AAAAAH8AAP4AAAAAPwAA/AAAAAA/AAD4AAAAAB8A
+ APgAAAAAHwAA8AAAAAAPAADwAAAAAA8AAPAAAAAADwAA8AAAAAAPAADwAAAAAA8AAPAAAAAADwAA8AAA
+ AAAPAADwAAAAAA8AAPAAAAAADwAA8AAAAAAPAADwAAAAAA8AAPAAAAAADwAA8AAAAAAPAADwAAAAAA8A
+ APAAAAAADwAA8AAAAAAPAADwAAAAAA8AAPAAAAAADwAA8AAAAAAPAADwAAAAAA8AAPAAAAAADwAA4AAA
+ AAAHAADgAAAAAAcAAOAAAAAABwAA4AAAAAAHAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAACAAAAAAAEA
+ AIAAAAAAAQAAgAAAAAABAACAAAAAAAEAAIAA//8AAQAA+AP//8AfAAD/j///8f8AAP///////wAA////
+ ////AAAoAAAAMAAAAGAAAAABAAgAAAAAAAASAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wUFBf89PT3/hISE
+ /8DAwP9eXl7/AQEB/2BgYP/CwsL/hoaG/0BAQP8GBgb/ISEh/2lpaf+vr6//8fHx///////6+vr/WFhY
+ /wgICP+8vLz/8vLy/7Kysv9ra2v/IyMj/6urq/+7u7v/KSkp/yAgIP+urq7/qqqq/+Xl5f9UVFT/Ghoa
+ /4GBgf+JiYn/hYWF/yIiIv9HR0f/2dnZ/2hoaP8nJyf/Q0ND/3Nzc//39/f/CQkJ/3x8fP8mJib/4+Pj
+ /7Ozs/9CQkL/1dXV/97e3v9PT0//oaGh//v7+/9bW1v//v7+//7+/f/+/f3/tra2/yUlJf8oKCj/X19f
+ /5WVlf8KCgr/u7m3/315df95dXD/u7m2/5SUlP8VFRX/1dTS/4qGgv99fX3/GRkZ/xgYGP+opaL/n5yY
+ /+vr6v/z8/P/mpqa/9jX1f+JhYH/m5ub/y0tLf/8/Pz//f39/4+Mh/+/vbv/uLi4/8jGxP+AfHj/8/Py
+ /7m5uf8SEhL/+Pf3/4WBfP+vrar/ExMT/7i2s/97d3L/6Ojn/4mGgf+8urf/XFlV/zIwLv9NS0j/TktI
+ /0hFQv8vLSv/R0VC/y8uLP9TUE3/HBsa/0A+O/9SUEz/qaek/9rZ1//19fX/hoJ+/56bmP/r6+v/1tTT
+ /+fn5v/09PT/qaej/66sqf+AgID/ra2t//b19f+IhYD/gHx3//Ly8f8LCwv/FxcX/42Jhf+Rjor/trSx
+ /+Lh4P9iYmL/V1dX/5yZlv+QjYn/ko+L/5SRjf+VkY3/lZKO/5OQjP+RjYn/kI2I/83Lyv/y8fH/0NDQ
+ /wMDA/+jo6P/RERE/zs7O//T09P/jIyM/yQkJP/s7Oz/p6en/2FhYf8bGxv/EBAQ/wwMDP8HBwf/Dg4O
+ /wICAv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAC2lpi2nAQEBCwsTQaaopWOpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AACgQHcQEBAQEBAQEBAQEBAQEBChoqOkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnR1XEBAQEBAQEBAQ
+ EBAQEBAQEBAQEBA5np+cAAAAAAAAAAAAAAAAAAAAAAAAAACbEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQ
+ EBAQnAAAAAAAAAAAAAAAAAAAAAAAAI0QEBAQEDlIjo+QkZKTkZGUkJWWTZeYEBAQEBAQmZoAAAAAAAAA
+ AAAAAAAAAAAAh3oQEBARW4hEREREREREREREREREREREiYqLEBAQEIwAAAAAAAAAAAAAAAAAAAAAgRAQ
+ EIKDRERERERERERERERERERERERERESEhRAQEB+GAAAAAAAAAAAAAAAAAAASEBAQEH5ERERERERERERE
+ REREREREREREREREfxAQEBCAAAAAAAAAAAAAAAAAAC16EBAQe0RERERERERERERERERERERERERERERE
+ ZXwQEBB9QQAAAAAAAAAAAAAAAGMQEBB3eERERERERERERERERERERERERERERERERHkQEBAQYwAAAAAA
+ AAAAAAAAAGMQEBB1RERERERERERERERERERERERERERERERERER2EBAQYwAAAAAAAAAAAAAAAGMQEBBT
+ RERERERERERERERERERERERERERERERERERCEBAQYwAAAAAAAAAAAAAAAGMQEBBTRERERERERERERERE
+ RERERERERERERERERERCEBAQYwAAAAAAAAAAAAAAAGMQEBBTRERERERxcnJzRERERERERER0cnJzRERE
+ RERCEBAQYwAAAAAAAAAAAAAAAGMQEBBTRERERERtAABuRERERERERERvAABwRERERERCEBAQYwAAAAAA
+ AAAAAAAAAGMQEBBTRERERERtAABuRERERERERERvAABwRERERERCEBAQYwAAAAAAAAAAAAAAAGMQEBBT
+ RERERERtAABuRERERERERERvAABwRERERERCEBAQYwAAAAAAAAAAAAAAAGMQEBBTRERERERtAABuRERE
+ RERERERvAABwRERERERCEBAQYwAAAAAAAAAAAAAAAGMQEBBTRERERERtAABuRERERERERERvAABwRERE
+ RERCEBAQYwAAAAAAAAAAAAAAAGMQEBBTRERERERtAABuRERERERERERvAABwRERERERCEBAQYwAAAAAA
+ AAAAAAAAAGMQEBBTRERERERtAABuRERERERERERvAABwRERERERCEBAQYwAAAAAAAAAAAAAAAGMQEBBT
+ RERERERtAABuRERERERERERvAABwRERERERCEBAQYwAAAAAAAAAAAAAAAGMQEBBTRERERERpamprRERE
+ RERERERpampsRERERERCEBAQYwAAAAAAAAAAAAAAAGMQEBBnRERERERERERERERERERERERERERERERE
+ RERoEBAQYwAAAAAAAAAAAAAAAGMQEBBkRERERERERERERERERERERERERERERERERGVmEBAQYwAAAAAA
+ AAAAAAAAAF8QEBBgYURERERERERERERERERERERERERERERERGIQEBAQXwAAAAAAAAAAAAAAAABaEBAQ
+ W0REREREREREREREREREREREREREREREXF0QEBBeAAAAAAAAAAAAAAAAAABVVhAQV1hERERERERERERE
+ REREREREREREREREWRAQEFZVAAAAAAAAAAAAAAAAAAAAURAQEFJERERERERERERERERERERERERERERT
+ ERAQEFQAAAAAAAAAAAAAAAAAAAAATBUQEBBNRERERERERERERERERERERERERE5PEBAQUEsAAAAAAAAA
+ AAAAAAAAIUcAAC4QEBAQSElERERERERERERERERERERJSBAQEBAQSgAAR0sAAAAAAAAAAAAAP0AAAEEw
+ EBAQEBFCQ0REREREREREREREQ0UREBAQEBAwQQAARj8AAAAAAAAAAAAANjcbAAA4EBAQEBAQOTo7Ojo7
+ Ojs6Ozs6ORAQEBAQEDw9AAA+NzYAAAAAAAAAAAAAMBAxAAAAMjMQEBAQEBAQEBAQEBAQEBAQEBAQEBA0
+ NQAAAAAWEDAAAAAAAAAAAAApEBAQKgAAAAErFRAQEBAQEBAQEBAQEBAQEBAQLCItAAAACy4QEBAvAAAA
+ AAAAAAANEBAQHyAAAAAAISIjIyMjIyMjIyMjIyMjIyMkJQAAAAAmJxAQEBAoAAAAAAAAAAAZEBAQEBAa
+ GwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHB0QEBAQEBAeAAAAAAAAAAAMDQ4PEBAQERIAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAATFBAQEBAVFhcYAAAAAAAAAAAAAAABAgMEBQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ BgcICQoLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAP///////wAA////////AAD/+AAAP/8AAP/gAAAD/wAA/4AAAAD/AAD/AAAAAH8A
+ AP4AAAAAfwAA/gAAAAA/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA8AAA
+ AAAPAADwAAAAAA8AAPAAAAAADwAA8AAAAAAPAADwAAAAAA8AAPAAAAAADwAA8AAAAAAPAADwAAAAAA8A
+ APAAAAAADwAA8AAAAAAPAADwAAAAAA8AAPAAAAAADwAA8AAAAAAPAADwAAAAAA8AAPAAAAAADwAA8AAA
+ AAAPAADwAAAAAA8AAPAAAAAADwAA8AAAAAAPAADgAAAAAAcAAOAAAAAABwAA4AAAAAAHAADgAAAAAAcA
+ AMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAIAAAAAAAQAAgAAAAAABAACAAAAAAAEAAIAAAAAAAQAAgAD/
+ /wABAAD4A///wB8AAP+P///x/wAA////////AAD///////8AACgAAAAgAAAAQAAAAAEAIAAAAAAAACAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////////////////////////////////////////
+ //////8GBgb/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/////////////////////////////////////////////////////
+ //////////////////////////////////////8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA////////////////////////////eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw//////////////////////////////////////8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP////////////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/////////////////wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/////////////////eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw////////////////
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP////////////////95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////
+ ////////////AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD///////////8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/////
+ //////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP///////////wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP///////////3l1cP95dXD/eXVw/3l1cP8FBQT/BQUE/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /wQEBP8EBAT/eXVw/3l1cP95dXD/eXVw////////////AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAD/AAAA////////////eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD///////////8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD///////////95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP///////////wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP///////////3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw////////////AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA////////////eXVw/3l1cP95dXD/eXVw
+ /wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/////
+ //////8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD///////////95dXD/eXVw
+ /3l1cP95dXD/AAAA/wAAAP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/3l1cP95dXD/eXVw
+ /3l1cP///////////wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP//////////
+ /3l1cP95dXD/eXVw/3l1cP8AAAD/AAAA/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw
+ /3l1cP95dXD/eXVw////////////AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ ////////////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD///////////8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD///////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/+bl5P///////////wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAADhAAAA/wAAAP////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////AAAA/wAAAP8AAADWAAAA
+ AAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/1paWv///////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/////////////////3Nzc/8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/////////////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////////////////AAAA
+ /wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA////////////////
+ //////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD//////wAAAP8AAAD/////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////8AAAD/AAAA/wAAAP//////AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAD/AAAA////////////AAAA
+ /wAAAP8AAAD/AAAA////////////////////////////////////////////////////////////////
+ ////////////AAAA/wAAAP8AAAD/AAAA////////////AAAA/wAAAP8AAAAAAAAAAAAAAP8AAAD/////
+ ////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA//////////////////////8AAAD/AAAA/wAAAAAAAAAAAAAA
+ /wAAAP///////////////////////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/////////////////////////////////wAAAP8AAAD/AAAA
+ AAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////+AA//+AAA/+AAAH/gAAA/wAAAP4AAA
+ B+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfAAAADwAAA
+ A8AAAAPAAAADgAAAAYAAAAGAAAABgAAAAQAf+ADgP/wH/P//P/////8oAAAAIAAAAEAAAAABAAgAAAAA
+ AAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAA/x0dHf9kZGT/VlZW/wEBAf9XV1f/ZWVl/x8fH/8RERH/j4+P
+ /9bW1v//////Jycn//7+/v/X19f/kZGR/wYGBv/19fX/8/Pz/3R0dP8FBQX/CwsL/1hYWP9cXFz/LCws
+ /zo6Ov/Ozs7/9PT0/7m5uf9qamr/4uLi//v7+/8QEBD/AwMD/4ODg/+4uLj/d3d3/wQEBP8CAgL/tbW1
+ /+jo6P9gYGD/dnZ2/zQ0NP9MTEz/zczK/4WCff95dXD/e3dy/7Kwrf/39vb/YWFh/0tLS//k5OT/8vLx
+ /5iVkf+FgXz/zMvJ/+Xl5f9+fn7/rKmm/39/f/8ZGRn/5uXk/3p2cf+IhID/+vr5/xoaGv+cmZX/vbu5
+ /2JiYv/j4+L/f3x3/93c2v8nJST/ISAf/3Jvav8mJST/c29q/wcHB/9wbGj/cG1o/z89Ov87OTb/dHBs
+ /z48Ov91cWz/9fX0/5mWkv9UVFT/1NPS/+Pi4f9ZWVn/xsbG/6ilov+ppqP/4ODg/wgICP/29vb/9/f2
+ /7i2s/+Cfnn/hIB8//Dw7/9zc3P/+fj4/8bFw/+2s7H/t7Wy/7e1s/+2tLL/tbOw/8C+u//k4+L/ycnJ
+ /2lpaf/a2tr/6+vr/6enp/8uLi7/UFBQ/62trf+zs7P/sLCw/66urv+vr6//srKy/3t7e/81NTX/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAJnh5ent8eXx9e34nen+AJgAAAAAAAAAAAAAAAAAAIXN0CwsLCwsLCwsLCwsLCwt1dncA
+ AAAAAAAAAAAAAABoCwsLaWprbGRkbW5vcHENCwsLcgQAAAAAAAAAAAAADGILY2RlLy8vLy8vLy8vL2Ze
+ ZwsLXAAAAAAAAAAAACFdCwteLy8vLy8vLy8vLy8vLy9fCwtgYQAAAAAAAAAAWQsLWi8vLy8vLy8vLy8v
+ Ly8vL0BbCwtcAAAAAAAAAABGC1cuLy8vLy8vLy8vLy8vLy8vL1gLC0YAAAAAAAAAAEYLSS8vLy8vLy8v
+ Ly8vLy8vLy8vLw0LRgAAAAAAAAAARgtJLy8vL1JTVC8vLy8vVVNWLy8vDQtGAAAAAAAAAABGC0kvLy8v
+ TwBQLy8vLy9PAFEvLy8NC0YAAAAAAAAAAEYLSS8vLy9PAFAvLy8vL08AUS8vLw0LRgAAAAAAAAAARgtJ
+ Ly8vL08AUC8vLy8vTwBRLy8vDQtGAAAAAAAAAABGC0kvLy8vTwBQLy8vLy9PAFEvLy8NC0YAAAAAAAAA
+ AEYLSS8vLy9PAFAvLy8vL08AUS8vLw0LRgAAAAAAAAAARgtJLy8vL0pLTC8vLy8vTUtOLy8vDQtGAAAA
+ AAAAAABGC0cvLy8vLy8vLy8vLy8vLy8vL0gLC0YAAAAAAAAAADMLC0QvLy8vLy8vLy8vLy8vLy8vRQsL
+ MwAAAAAAAAAAPhILP0AvLy8vLy8vLy8vLy8vL0FCCxtDAAAAAAAAAAAAOwsLPC8vLy8vLy8vLy8vLy8v
+ LQsLPQAAAAAAAAAABAAVNQs2Ny8vLy8vLy8vLy8vODkNCzoVAAQAAAAAAAArLAApCwsNLS4vLy8vLy8v
+ MDEyCwsLMwA0KwAAAAAAACQKJSYnCwsLCw0NDQ0NDQ0NCwsLKCkEJQoqAAAAAAAAHAsdAAADHgsLCwsL
+ CwsLCwsLHw8gACEiCyMAAAAAABARCxITFAAVFhcXFxcXFxcXFxcYAAAZGgsLGxAAAAAACAkKCwsKDAAA
+ AAAAAAAAAAAAAAAABg0LCw4PCAAAAAAAAAABAgMAAAAAAAAAAAAAAAAAAAAEBQYHAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////4AD//4AAD/4AAAf+AAAD/AAAA/gAAAH4AAA
+ B+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB8AAAAPAAAADwAAA
+ A8AAAAOAAAABgAAAAYAAAAGAAAABAB/4AOA//Af8//8//////ygAAAAYAAAAMAAAAAEAIAAAAAAAABIA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA
+ ////////////6+vr/+vr6//5+fn/////////////////AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAC3AAAA/5+fn///////////////////////////////////////////
+ ////////////////////////////AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA
+ /////////////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////////
+ /wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD///////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP///////////wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAP////////////////95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP////////////////8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAP///////////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD///////////8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAP///////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD///////////8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAP//////////
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw/3l1cP95dXD/////
+ //////8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAP///////////3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw
+ /3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw/3l1cP95dXD///////////8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAP///////////3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw
+ /3l1cP95dXD///////////8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAP///////////3l1cP95dXD/eXVw
+ /wAAAP8AAAD/eXVw/3l1cP95dXD/eXVw/wAAAP8AAAD/eXVw/3l1cP95dXD///////////8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAP///////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD///////////8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAP//////////
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////////
+ //////8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD///////////95dXD/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP///////////wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAP8AAAD///////////+PjIf/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /////////////////wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA////////////////
+ /3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAA/wAAAP//////AAAA/wAAAP//////////////////////////////////////////
+ //////////////////////8AAAD/AAAA//////8AAAD/AAAA/wAAAAAAAAAAAAAA////////////AAAA
+ /wAAAP8AAAD/////////////////////////////////////////////////AAAA/wAAAP8AAAD/////
+ ////////////AAAA/wAAAAAAAAAAAAAA//////////////////////8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////////////////////AAAA/wAAAAAAAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A/AA/APAADwDgAAcA4AAH
+ AMAAAwDAAAMAwAADAMAAAwDAAAMAwAADAMAAAwDAAAMAwAADAMAAAwDAAAMAwAADAIAAAQCAAAEAgAAB
+ AIAAAQAA/wAA4f+HAP///wAoAAAAGAAAADAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ /wEBAf8wMDD/SEhI/0lJSf8yMjL/jY2N/+jo6P//////t7e3/xYWFv85OTn/6+vr/+np6f+Ojo7/o6Oj
+ /19fX/8eHh7/xMTE/8PDw/9mZmb/AgIC/xISEv+Xl5f/YWFh/7a2tv9nZ2f/9PT0//7+/v/Ly8v/Nzc3
+ /7W1tf8rKyv/ISEh//j4+P/W1dP/i4eD/3l1cP96dnH/rqyp/yIiIv8qKir/qamp/768uv+Cf3r/29rZ
+ //Hw8P9+e3b/jImF//z8/P86Ojr/iYmJ/6uppv/Ew8D/gX15/2BdWf9cWVX/XFlW/5qXk/+BfXj/JCMh
+ /xcXFv8kIiH/GBcW/1hVUv9TUU3/WFVR/4mFgf+in5v/goKC/9TT0f/h4N//hISE/+rq6v+opaL/pqSg
+ //n5+f8jIyP/VlZW/9TT0v+ZlpL/hYF9/4eDfv+Hg3//hoN+/4WCff+Kh4P/rKqn/9HQzv/4+Pf/d3d3
+ /7Ozs/8RERH/CQkJ/2VlZf+Hh4f/g4OD/4WFhf+AgID/QkJC/wcHB/8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF1eX0hF
+ RWBhX2JjZAAAAAAAAAAAAAAAWkkICAgICAgICAgIG1tcAAAAAAAAAABOCBxPUFFSU1RVVldYWQgGAAAA
+ AAAAAApJCEolJSUlJSUlJSUlSwhMTQAAAAAAAEUIRiUlJSUlJSUlJSUlJUcISAAAAAAAADMIQyUlJSUl
+ JSUlJSUlJUQIMwAAAAAAADMIOyUlQEElJSUlQkElJToIMwAAAAAAADMIOyUlPD0lJSUlPj8lJToIMwAA
+ AAAAADMIOyUlPD0lJSUlPj8lJToIMwAAAAAAADMIOyUlPD0lJSUlPj8lJToIMwAAAAAAADMIOyUlPD0l
+ JSUlPj8lJToIMwAAAAAAADMINiUlNzglJSUlNzklJToIMwAAAAAAADMINCUlJSUlJSUlJSUlJTUIMwAA
+ AAAAAAscLi8lJSUlJSUlJSUlMDEcMgAAAAAAAAAqCCslJSUlJSUlJSUsLQgqAAAAAAAAESAhIggjJCUl
+ JSUlJicbCCIoKREAAAAAGBkAGhsICBwcHBwcHAgIHR4AHxgAAAAADwgQABEPEhISEhISEhMUFRYXCA8A
+ AAAABgcICQoAAAAAAAAAAAAACwwIDQ4AAAAAAAECAwAAAAAAAAAAAAAAAAQFAQAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD8AD8A8AAPAOAABwDgAAcAwAAD
+ AMAAAwDAAAMAwAADAMAAAwDAAAMAwAADAMAAAwDAAAMAwAADAMAAAwDAAAMAgAABAIAAAQCAAAEAgAAB
+ AAD/AADh/4cA////ACgAAAAQAAAAIAAAAAEAIAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAA//////////////////////////////////////////////////////8AAAD/AAAA
+ AAAAAAAAAAAAAAAAAAAAAP//////eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP//////AAAA
+ /wAAAAAAAAAAAAAAAAAAAP///////////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/////
+ //////8AAAD/AAAAAAAAAAAAAAD//////3l1cP95dXD/eXVw/3l1cP95dXD/eXVw/3l1cP95dXD/eXVw
+ /6qnpP//////AAAA/wAAAAAAAAAAAAAA//////95dXD/eXVw/3l1cP8AAAD/eXVw/3l1cP95dXD/AAAA
+ /3l1cP+qp6T//////wAAAP8AAAAAAAAAAAAAAP//////eXVw/3l1cP95dXD/AAAA/3l1cP95dXD/eXVw
+ /wAAAP95dXD/qqek//////8AAAD/AAAAAAAAAAAAAAD//////3l1cP95dXD/eXVw/wAAAP95dXD/eXVw
+ /3l1cP8AAAD/eXVw/6qnpP//////AAAA/wAAAAAAAAAAAAAA//////99eXT/eXVw/3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP///////////wAAAP8AAAAAAAAAAAAAAP8AAAD//////3l1cP95dXD/eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD//////wAAAP8AAAD/AAAAAAAAAAAAAAD/AAAA////////////eXVw
+ /3l1cP95dXD/eXVw/3l1cP95dXD///////////8AAAD/AAAA/wAAAAAAAAAAAAAA//////8AAAD/////
+ //////////////////////////////////////8AAAD//////wAAAP8AAAAAAAAA////////////////
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/////////////////AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8A
+ AOAHAADAAwAAwAMAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAAAAAAAH4AAA//8A
+ ACgAAAAQAAAAIAAAAAEACAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAD/BwcH/y4uLv8vLy//CAgI
+ /2dnZ//y8vL/k5OT/w0NDf8tLS3/IiIi/xkZGf/BwcH/9fX1/0xMTP+RkZH/zs7O//////////7//v7+
+ /6Kiov+Xl5f/FhYW/9HR0f/i4eD/kY6K/3l1cP95dXH/qqek//Ly8f9jY2P/+fj4/4aCfv+Sjor/sLCw
+ /768uf/Pzcv/q6il/0hGQ/9BPzz/SEVD/7y6t/9APjv/ODY0/2pnYv9oZWH/ra2t/9PS0f/f3tz/rq6u
+ /zw8PP/9/f3/tLKv/3t3cv98eHP/rqyp/1BQUP93d3f/9vb2/+/v7v/b2tj/3NrZ/9va2f/d3Nr/+Pj3
+ //r6+v+np6f/FRUV/1hYWP9XV1f/Wlpa/0tLS/8ODg7/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA
+ /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAA
+ AAAAAABDREVFREZHSAAAAAAAAAA5Ojs8PT4/QEFCAAAAAAAyMzQ1GhoaGjY3ETgAAAAALi8aGhoaGhoa
+ GjAxAAAAACIlGiwtGhosLRopIgAAAAAiJRoqKxoaKisaKSIAAAAAIiUaKisaGiorGikiAAAAACIlGiYn
+ GhooJxopIgAAAAAiIxoaGhoaGhoaJCIAAAAAHh8gGhoaGhoaIRMeAAAACBYXGBkaGhobHB0XFggAAA4P
+ AhAREhISERMUCxUOAAAFBgcICQICAgIKCwwNBQAAAAECAAAAAAAAAAADBAAAAAAAAAAAAAAAAAAAAAAA
+ AP//AADgBwAAwAMAAMADAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAAAAAAAB+AA
+ AP//AAA=
+
+
+
\ No newline at end of file
diff --git a/OpenFK/DebugWindow.resx b/OpenFK/DebugWindow.resx
deleted file mode 100644
index 1af7de1..0000000
--- a/OpenFK/DebugWindow.resx
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
\ No newline at end of file
diff --git a/OpenFK/Form1.cs b/OpenFK/Form1.cs
deleted file mode 100644
index 87f6119..0000000
--- a/OpenFK/Form1.cs
+++ /dev/null
@@ -1,1162 +0,0 @@
-using AxShockwaveFlashObjects;
-using DiscordRPC;
-using Microsoft.Win32;
-using OpenFK.OFK.Common;
-using OpenFK.Properties;
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Diagnostics;
-using System.Drawing;
-using System.IO;
-using System.IO.Pipes;
-using System.Linq;
-using System.Net;
-using System.Net.Http;
-using System.Runtime.InteropServices;
-using System.Text;
-using System.Threading;
-using System.Threading.Tasks;
-using System.Windows.Forms;
-using System.Xml;
-using System.Xml.Linq;
-
-namespace OpenFK
-{
-
- // ===================================
- // ____ ______ _ __
- // / __ \ | ____| |/ /
- //| | | |_ __ ___ _ __ | |__ | ' /
- //| | | | '_ \ / _ \ '_ \| __| | <
- //| |__| | |_) | __/ | | | | | . \
- // \____/| .__/ \___|_| |_|_| |_|\_\
- // | |
- // |_|
- // ===================================
-
- public partial class Form1 : Form
- {
- //Online Data
- public string Host; //Host
- public string Host1; //Host2
- public string Store; //FilestoreV2 (For updates)
- public string TStore; //Trunk
-
- public XDocument netStore; //GitHub update.xml
- public XDocument fsnetStore; //GitHub update.xml for FSGUI
- public bool WasUpdated = false; //Determines if the OpenFK update script should run.
-
- //Rich Presence Data
- public string currentBitty;
- public string currentBittyName;
- public string currentWorld;
- public string currentActivity;
-
- //Debug Flags
- public bool DebugMB;
- public bool DebugOnline;
-
- //MegaByte Data
- private System.Windows.Forms.Timer bittyTimer; //Timer to check connected bitty.
-
- [DllImport("kernel32.dll")]
- public static extern IntPtr OpenProcess(int dwDesiredAccess, bool bInheritHandle, int dwProcessId);
-
- [DllImport("kernel32.dll")]
- public static extern bool ReadProcessMemory(int hProcess, int lpBaseAddress, byte[] lpBuffer, int dwSize, ref int lpNumberOfBytesRead);
- const int PROCESS_WM_READ = 0x0010;
-
- public string bittyID; //Current bitty connected.
- public string usbBittyID;
-
-
- //Items
- public XmlDocument bittyData;
- public XmlDocument userData;
- public DiscordRpcClient client;
- private FileSystemWatcher watcher;
-
- public Form1(string[] args)
- {
- InitializeComponent();
- if (args.Contains("/debug"))
- {
- DebugWindow debug = new DebugWindow();
- debug.Show();
- }
- }
-
- private void Form1_Load(object sender, EventArgs e)
- {
- //Checks if the main SWF exists
- if(!File.Exists(Directory.GetCurrentDirectory() + @"\Main.swf"))
- {
- MessageBox.Show("Could not find Main.swf!", "OpenFK", MessageBoxButtons.OK, MessageBoxIcon.Error);
- Application.Exit();
- }
- //End of Main.SWF check
-
- //RP Initialize
- if (Settings.Default.RPC == true)
- {
- client = new DiscordRpcClient("506150783893504001");
- client.Initialize();
- setRP("Main Menu", "At the main menu", "fffffff0", "U.B.");
- }
- //End of RP Initialize
-
- DebugOnline = Properties.Settings.Default.IsOnline;
-
- //Flash initialization
- AS2Container.Quality = Settings.Default.Quality;
- AS2Container.Quality2 = "High";
- AS2Container.ScaleMode = Settings.Default.ScaleMode;
- AS2Container.Movie = Directory.GetCurrentDirectory() + @"\Main.swf"; //Sets Main.swf as the Flash Movie to Play.
- AS2Container.Play(); //Plays Main.swf
- LogManager.LogGeneral("[AS2Container] Main.swf is Loaded");
- AS2Container.FSCommand += new _IShockwaveFlashEvents_FSCommandEventHandler(flashPlayer_FSCommand); //This sets up the FSCommand handler, which CCommunicator likes to use a lot.
-
- try
- {
- AS3Container.Quality = Settings.Default.Quality;
- AS3Container.Quality2 = "High";
- AS3Container.ScaleMode = Settings.Default.ScaleMode;
- AS3Container.Movie = Directory.GetCurrentDirectory() + @"\MainAS3.swf"; //Sets MainAS3.swf as the Flash Movie to Play.
- LogManager.LogGeneral("[AS3Container] MainAS3.swf is Loaded");
- AS3Container.FSCommand += new _IShockwaveFlashEvents_FSCommandEventHandler(flashPlayerAS3_FSCommand);
- AS3Container.FlashCall += new _IShockwaveFlashEvents_FlashCallEventHandler(flashPlayerAS3_FlashCall);
- }
- catch
- {
- LogManager.LogGeneral("[AS3Container] AS3 Failed to Load! Potentially an older version.");
- }
- //End of Flash initialization
-
- //customF Initialization
- if (Settings.Default.customF == true) //If using no USB
- {
- this.watcher = new FileSystemWatcher();
- watcher.Path = Directory.GetCurrentDirectory();
- watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
- | NotifyFilters.FileName | NotifyFilters.DirectoryName;
- watcher.Filter = "customF.txt";
- watcher.Changed += OnChanged;
- watcher.SynchronizingObject = AS2Container;
- watcher.EnableRaisingEvents = true;
- }
- //End of customF Initialization
-
- //USB Initialization
-
- if (Settings.Default.USBSupport == true)
- {
- var key = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers", true);
- if (key == null)
- throw new InvalidOperationException(@"Cannot open registry key HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers.");
- using (key)
- key.SetValue(Directory.GetParent(Directory.GetCurrentDirectory()) + @"\MegaByte\" + "MegaByte.exe", "VISTASP2");
- Process MBRun = new Process();
- ProcessStartInfo MBData = new ProcessStartInfo();
- MBData.FileName = Directory.GetParent(Directory.GetCurrentDirectory()) + @"\MegaByte\" + "MegaByte.exe";
- MBData.Arguments = "-MBRun -MBDebug";
- MBData.UseShellExecute = false;
- MBData.WindowStyle = ProcessWindowStyle.Minimized;
- MBRun.StartInfo = MBData;
- MBRun.Start();
- InitTimer();
- }
-
- //End of USB Initialization
- }
-
- private void flashPlayerAS3_FSCommand(object sender, _IShockwaveFlashEvents_FSCommandEvent e)
- {
- LogManager.LogIncoming("[AS3] [SendMsg] " + e.args);
- if(e.args.Contains("save_jpeg0"); //Gives result to game.
- }
- }
-
- if (e.args.Contains("");
- }
- }
-
- //
- //CUSTOMF
- //
- private void OnChanged(object sender, FileSystemEventArgs e)
- {
- try //Runs a loop to keep reading until the file is not being saved.
- {
- setBitty(File.ReadAllText(Directory.GetCurrentDirectory() + @"\customF.txt").Remove(0, 14));
- }
- catch
- {
- OnChanged(sender, e);
- }
- }
-
- //
- //FSCOMMAND HANDLER
- //
-
- void flashPlayer_FSCommand(object sender, _IShockwaveFlashEvents_FSCommandEvent e) //FSCommand Handler
- {
- // We put these here because these use a different xml scheme and to prevent clutter in the general logs.
- // It is also important to return, since only we call this and know to not put anything else in it to prevent bugs due to bad code below.
-
- if (e.args.Contains("");
- }
- }
-
- //
- //END OF LOADED
- //
-
- //
- // XML SAVE COMMANDS
- //
-
- if (e.args.Contains("");
- setVar(@"");
- setVar(@"");
- }
-
- if (e.args.Contains(""); //Tells the AS3 game to end.
- AS3Container.SendToBack(); //Returns to AS2 container.
- AS3Container.Stop();
- }
-
- if(e.args.Contains("" is the string. Unsure if it does anything, but it does not give a failure.
- AS3Container.CallFunction(@"setid%3c%63%6f%6d%6d%61%6e%64%73%3e%3c%73%65%74%69%64%20%69%64%3d%22%30%22%20%2f%3e%3c%2f%63%6f%6d%6d%61%6e%64%73%3e%3c%63%6f%6d%6d%61%6e%64%73%3e%3c%73%65%74%69%64%20%69%64%3d%22%30%22%20%2f%3e%3c%2f%63%6f%6d%6d%61%6e%64%73%3e");
- AS3Container.SendToBack();
- Directory.Delete(Directory.GetCurrentDirectory() + @"\misc\tmp\", true); //Deletes the temporary folder used for the results.
- }
-
- if (e.args.Contains("");
- }
-
- //UPDATE CHECKS (Not standard netcommands)
- if (e.args.Contains("");
- try
- {
- var localStore = XDocument.Load(Directory.GetCurrentDirectory() + @"\update.xml");
- localVersion = localStore.Root.Attribute("name").Value;
- localVerNum = localStore.Root.Attribute("version").Value;
- }
- catch
- {
- LogManager.LogNetwork("[Update] Update.xml was not found", "NetCommand");
- }
- setVar(@"");
- try
- {
- LogManager.LogNetwork("[Update] Downloading Update.xml from GitHub", "NetCommand");
- netStore = XDocument.Parse(Get(@"https://raw.githubusercontent.com/GittyMac/OpenFK/master/update.xml"));
- LogManager.LogNetwork("[Update] Update.xml was downloaded", "NetCommand");
- string netVersion = netStore.Root.Attribute("name").Value;
- string netVersionNum = netStore.Root.Attribute("version").Value;
- string netVersionSize = netStore.Root.Attribute("size").Value;
- setVar(@"");
- if (localVersion != netVersion)
- {
- LogManager.LogNetwork("[Update] An update is needed", "NetCommand");
- netStore.Save(Directory.GetCurrentDirectory() + @"\update.xml");
- setVar(@"");
- }
- else if(File.Exists(Directory.GetCurrentDirectory() + @"\FunkeySelectorGUI.exe"))
- {
- try
- {
- var localStore = XDocument.Load(Directory.GetCurrentDirectory() + @"\fsguiupdate.xml");
- fslocalVersion = localStore.Root.Attribute("name").Value;
- fslocalVerNum = localStore.Root.Attribute("version").Value;
- }
- catch
- {
- LogManager.LogNetwork("[Update] FSGUI Update.xml was not found", "NetCommand");
- }
- setVar(@"");
- try
- {
- LogManager.LogNetwork("[Update] Downloading FSGUI Update.xml from GitHub", "NetCommand");
- fsnetStore = XDocument.Parse(Get(@"https://raw.githubusercontent.com/GittyMac/FunkeySelectorGUI/master/update.xml"));
- LogManager.LogNetwork("[Update] FSGUI Update.xml was downloaded", "NetCommand");
- string fsnetVersion = fsnetStore.Root.Attribute("name").Value;
- string fsnetVersionNum = fsnetStore.Root.Attribute("version").Value;
- string fsnetVersionSize = fsnetStore.Root.Attribute("size").Value;
- setVar(@"");
- if (fslocalVersion != fsnetVersion)
- {
- try
- {
- Process process = Process.GetProcessesByName("FunkeySelectorGUI")[0];
- process.Kill();
- }
- catch
- {
- LogManager.LogNetwork("[Update] Cannot close FSGUI", "NetCommand");
- }
- LogManager.LogNetwork("[Update] A FSGUI update is needed", "NetCommand");
- setVar(@"");
- }
- else
- {
- setVar(@"");
- }
- }
- catch
- {
- LogManager.LogNetwork("[Update] No FSGUI update", "NetCommand");
- setVar(@"");
- }
- }
- else
- {
- setVar(@"");
- }
- }
- catch
- {
- LogManager.LogNetwork("[Update] No update", "NetCommand");
- setVar(@"");
- }
- }
-
- if(e.args.Contains(@"");
- }
- else
- {
- string netDL = "";
- if (Environment.Is64BitProcess)
- {
- netDL = netStore.Root.Attribute("url64").Value;
- }
- else
- {
- netDL = netStore.Root.Attribute("url32").Value;
- }
-
- using (var client = new WebClient())
- {
- ServicePointManager.Expect100Continue = true;
- ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
- client.DownloadFile(netDL, Directory.GetCurrentDirectory() + @"\tmpdl.zip");
- }
- netStore.Save(Directory.GetCurrentDirectory() + @"\update.xml");
- Directory.CreateDirectory(Path.GetDirectoryName(Directory.GetCurrentDirectory() + @"\tmpdl\"));
- System.IO.Compression.ZipFile.ExtractToDirectory(Directory.GetCurrentDirectory() + @"\tmpdl.zip", Directory.GetCurrentDirectory() + @"\tmpdl\");
- setVar(@"");
- WasUpdated = true;
- }
- }
- catch
- {
- setVar(@"");
- }
- }
-
- //
- //END OF HTTP NETCOMMANDS
- //
-
- //
- // XML LOAD COMMANDS
- //
-
- if (e.args.Contains("", "") + @"";
- if (!Directory.Exists(Directory.GetCurrentDirectory() + @"\data\" + "system"))
- {
- Directory.CreateDirectory(Directory.GetCurrentDirectory() + @"\data\" + "system");
- }
- if (Settings.Default.RDF == true)
- {
- Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1");
- byte[] RDFData = iso_8859_1.GetBytes(data2send.ToString());
- File.WriteAllBytes(Directory.GetCurrentDirectory() + @"\data\" + "system" + @"\" + "users" + ".rdf", iso_8859_1.GetBytes(RDFTool.encode(iso_8859_1.GetString(RDFData))));
- }
- else File.WriteAllText(Directory.GetCurrentDirectory() + @"\data\" + "system" + @"\" + "users" + ".xml", data2send.ToString()); //saves
- LogManager.LogFile("[UserAdd] [Succes] " + username);
- }
- }
-
- //
- // END OF XML LOAD COMMANDS
- //
-
- //
- //FSGUI
- //
-
- if (e.args.Contains("");
- }
- if (e.CloseReason == CloseReason.WindowsShutDown) //If windows is shutting down
- {
- if (Settings.Default.RPC == true)
- {
- client.Dispose(); //Disposes RP
- }
- if (Settings.Default.USBSupport == true)
- {
- Process process = Process.GetProcessesByName("MegaByte")[0];
- process.Kill();
- }
- Application.Exit(); //Closes OpenFK
- }
- }
-
- //
- //END OF CLOSE BUTTON
- //
-
- //
- //FILE LOADING
- //
-
- public void loadFile(string file, string folder)
- {
- Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1");
- string index = "";
- string filedata = "";
- try
- {
- if (Settings.Default.RDF == true)
- {
- byte[] RDFData = File.ReadAllBytes(Directory.GetCurrentDirectory() + @"\data\" + folder + @"\" + file + ".rdf");
- filedata = RDFTool.decode(iso_8859_1.GetString(RDFData));
- }
- else filedata = File.ReadAllText(Directory.GetCurrentDirectory() + @"\data\" + folder + @"\" + file + ".xml"); //Puts XML file to string
- index = @"" + filedata + @"";
-
-
- if (file == "funkeys")
- {
- bittyData = new XmlDocument();
- bittyData.LoadXml(filedata);
- }
-
- if (file == "users")
- {
- userData = new XmlDocument();
- userData.LoadXml(filedata);
- }
-
- if (file == "config")
- {
- XmlDocument configData = new XmlDocument();
- configData.LoadXml(filedata);
-
- if (Properties.Settings.Default.IsOnline)
- {
- XmlAttribute host = (XmlAttribute)configData.SelectSingleNode("/settings/host/@value");
- host.Value = Properties.Settings.Default.HTTPHost1;
-
- XmlAttribute host1 = (XmlAttribute)configData.SelectSingleNode("/settings/host1/@value");
- host1.Value = Properties.Settings.Default.HTTPHost2;
-
- XmlAttribute tcpHost = (XmlAttribute)configData.SelectSingleNode("/settings/arkone_host/@value");
- tcpHost.Value = Properties.Settings.Default.TCPHost;
-
- XmlAttribute tcpPort = (XmlAttribute)configData.SelectSingleNode("/settings/arkone_port/@value");
- tcpPort.Value = Properties.Settings.Default.TCPPort;
-
- filedata = configData.OuterXml;
- index = @"" + filedata + @"";
- }
-
- XmlNodeList xnList1 = configData.SelectNodes("/settings/host"); //filters xml to the load info;
- foreach (XmlNode xn in xnList1) //fetches the information to load
- {
- Host = xn.Attributes["value"].Value;
- }
-
- XmlNodeList xnList2 = configData.SelectNodes("/settings/host1"); //filters xml to the load info;
- foreach (XmlNode xn in xnList2) //fetches the information to load
- {
- Host1 = xn.Attributes["value"].Value;
- }
-
- XmlNodeList xnList3 = configData.SelectNodes("/settings/store"); //filters xml to the load info;
- foreach (XmlNode xn in xnList3) //fetches the information to load
- {
- Store = xn.Attributes["value"].Value;
- }
-
- XmlNodeList xnList4 = configData.SelectNodes("/settings/trunkstore"); //filters xml to the load info;
- foreach (XmlNode xn in xnList4) //fetches the information to load
- {
- TStore = xn.Attributes["value"].Value;
- }
- }
-
- }
- catch
- {
- index = @""; //I would just let dotNET handle this, but UGLevels needs an error to continue.
- }
- setVar(index.ToString()); //Sends XML data to the game
- LogManager.LogFile($"[Load] [Success] {folder}/{file}");
- }
-
- //
- //END OF FILE LOADING
- //
-
- //
- //SET FLASH VARIABLE
- //
-
- public void setVar(string msg)
- {
- LogManager.LogOutgoing("[SetVar/Return] Returned Message - " + msg);
- AS2Container.SetVariable("msg", msg); //Sends message (msg) to the game
- }
-
- //
- //END OF SET FLASH VARIABLE
- //
-
- //
- //RICH PRESENCE
- //
-
- void setRP(string title, string info, string bittyID, string bittyName)
- {
- currentWorld = title;
- currentActivity = info;
- currentBitty = bittyID;
- currentBittyName = bittyName;
- client.SetPresence(new RichPresence()
- {
- Details = info,
- State = title,
- Assets = new Assets()
- {
- LargeImageKey = bittyID,
- LargeImageText = bittyName
- }
- });
- }
-
- //
- //END OF RICH PRESENCE
- //
-
- //
- //SET BITTY
- //
-
- void setBitty(string localBittyID)
- {
- if(bittyID != localBittyID)
- {
- setVar(@"");
- bittyID = localBittyID;
- currentBitty = localBittyID.ToLower();
- if (Settings.Default.RPC == true)
- {
- try
- {
- XmlNodeList nodes = bittyData.SelectNodes("//funkey[@id='" + localBittyID + "']");
- foreach (XmlNode xn in nodes)
- {
- currentBittyName = xn.Attributes["name"].Value;
- }
- setRP(currentWorld, currentActivity, currentBitty, currentBittyName);
- }
- catch
- {
-
- }
- }
- }
- }
-
- //
- //END OF SET BITTY
- //
-
- //
- //POST REQUESTS
- //
- public string HTTPPost(string info, string uri)
- {
- LogManager.LogNetwork($"{uri} {info}", "POST");
-
- var request = (HttpWebRequest)WebRequest.Create(uri);
- var data = Encoding.ASCII.GetBytes(info);
- request.Method = "POST";
- request.ContentType = "application/xml";
- request.ContentLength = data.Length;
- using (var stream = request.GetRequestStream())
- {
- stream.Write(data, 0, data.Length);
- }
- var response = (HttpWebResponse)request.GetResponse();
- var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
-
- string tnurl = "";
-
- if(responseString.Contains("
/// Required designer variable.
@@ -28,7 +28,7 @@
///
private void InitializeComponent()
{
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(GameForm));
this.AS2Container = new OpenFK.FlashRightClick();
this.AS3Container = new OpenFK.FlashRightClick();
((System.ComponentModel.ISupportInitialize)(this.AS2Container)).BeginInit();
@@ -55,17 +55,19 @@
this.AS3Container.Size = new System.Drawing.Size(800, 600);
this.AS3Container.TabIndex = 1;
//
- // Form1
+ // GameForm
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(800, 600);
this.Controls.Add(this.AS2Container);
this.Controls.Add(this.AS3Container);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.Name = "Form1";
+ this.KeyPreview = true;
+ this.Name = "GameForm";
this.Text = "OpenFK";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form_FormClosing);
this.Load += new System.EventHandler(this.Form1_Load);
+ this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.GameForm_KeyPress);
((System.ComponentModel.ISupportInitialize)(this.AS2Container)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.AS3Container)).EndInit();
this.ResumeLayout(false);
diff --git a/OpenFK/GameForm.cs b/OpenFK/GameForm.cs
new file mode 100644
index 0000000..1279eab
--- /dev/null
+++ b/OpenFK/GameForm.cs
@@ -0,0 +1,409 @@
+using AxShockwaveFlashObjects;
+using OpenFK.OFK.Common;
+using OpenFK.OFK.Core;
+using OpenFK.OFK.Net;
+using OpenFK.Properties;
+using System;
+using System.Diagnostics;
+using System.IO;
+using System.Linq;
+using System.Net;
+using System.Runtime.InteropServices;
+using System.Text;
+using System.Windows.Forms;
+using System.Xml;
+
+namespace OpenFK
+{
+
+ // ===================================
+ // Game Form
+ // OpenFK's Primary Container
+ // ===================================
+
+ public partial class GameForm : Form
+ {
+ //Rich Presence Data
+
+
+ public GameForm(string[] args)
+ {
+ InitializeComponent();
+ if (args.Contains("/debug"))
+ {
+ Globals.IsDebug = true;
+ DebugForm debug = new DebugForm();
+ debug.Show();
+ }
+ }
+
+ private void Form1_Load(object sender, EventArgs e)
+ {
+ if (!File.Exists(Directory.GetCurrentDirectory() + @"\Main.swf"))
+ {
+ MessageBox.Show("Could not find Main.swf!", "OpenFK", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ Application.Exit();
+ }
+
+ if (Settings.Default.RPC == true)
+ {
+ RichPresenceManager.InitRPC();
+ }
+
+ AS2Container.Quality = Settings.Default.Quality;
+ AS2Container.Quality2 = "High";
+ AS2Container.ScaleMode = Settings.Default.ScaleMode;
+ AS2Container.Movie = Directory.GetCurrentDirectory() + @"\Main.swf";
+ AS2Container.Play();
+ LogManager.LogGeneral("[AS2Container] Main.swf is Loaded");
+ AS2Container.FSCommand += new _IShockwaveFlashEvents_FSCommandEventHandler(flashPlayer_FSCommand); //This sets up the FSCommand handler, which CCommunicator likes to use a lot.
+
+ try
+ {
+ AS3Container.Quality = Settings.Default.Quality;
+ AS3Container.Quality2 = "High";
+ AS3Container.ScaleMode = Settings.Default.ScaleMode;
+ AS3Container.Movie = Directory.GetCurrentDirectory() + @"\MainAS3.swf";
+ LogManager.LogGeneral("[AS3Container] MainAS3.swf is Loaded");
+ AS3Container.FSCommand += new _IShockwaveFlashEvents_FSCommandEventHandler(flashPlayerAS3_FSCommand);
+ AS3Container.FlashCall += new _IShockwaveFlashEvents_FlashCallEventHandler(flashPlayerAS3_FlashCall);
+ }
+ catch
+ {
+ LogManager.LogGeneral("[AS3Container] AS3 Failed to Load! Potentially an older version.");
+ }
+
+ //Globals
+ Globals.GameForm = this;
+ Globals.AS2Container = AS2Container;
+ Globals.AS3Container = AS3Container;
+
+ BittyManager.InitBitty();
+ }
+
+ private void flashPlayerAS3_FSCommand(object sender, _IShockwaveFlashEvents_FSCommandEvent e)
+ {
+ string[] commandsList;
+
+ try
+ {
+ commandsList = CommandParser.ParseReceivedMessage(e.args);
+ }
+ catch
+ {
+ LogManager.LogGeneral($"[AS3] [SendMsg] [Error] Failed to parse message! - {e.args}");
+ return;
+ }
+
+ foreach (string command in commandsList)
+ {
+ string[] commandInfo = CommandParser.ParseCommand(command);
+ if (commandInfo[0] != "log" || commandInfo[0] != "staticstorage")
+ {
+ LogManager.LogIncoming("[AS3] [SendMsg] " + e.args);
+ }
+ switch (commandInfo[0])
+ {
+ case "save_jpeg":
+ FileManager.SaveJPEG(commandInfo[1], commandInfo[2], commandInfo[3]);
+ break;
+ case "as3_transit":
+ SetVar(command); //Sends the AS3 command to AS2.
+ break;
+ }
+ }
+ }
+
+ private void flashPlayerAS3_FlashCall(object sender, _IShockwaveFlashEvents_FlashCallEvent e)
+ {
+ string[] commandsList;
+
+ try
+ {
+ commandsList = CommandParser.ParseReceivedMessage(e.request);
+ }
+ catch
+ {
+ LogManager.LogGeneral($"[AS3] [FlashCall] [Error] Failed to parse message! - {e.request}");
+ return;
+ }
+
+ foreach (string command in commandsList)
+ {
+ string[] commandInfo = CommandParser.ParseCommand(command);
+ if (commandInfo[0] != "log" || commandInfo[0] != "staticstorage")
+ {
+ LogManager.LogIncoming("[AS3] [SendMsg] " + e.request);
+ }
+ switch (commandInfo[0])
+ {
+ case "as3_loaded":
+ SetVar(@"");
+ break;
+ }
+ }
+ }
+
+ void flashPlayer_FSCommand(object sender, _IShockwaveFlashEvents_FSCommandEvent e)
+ {
+ string[] commandsList;
+
+ try
+ {
+ commandsList = CommandParser.ParseReceivedMessage(e.args);
+ }
+ catch
+ {
+ LogManager.LogGeneral($"[AS2] [SendMsg] [Error] Failed to parse message! - {e.args}");
+ return;
+ }
+
+ foreach (string command in commandsList)
+ {
+ string[] commandInfo = CommandParser.ParseCommand(command);
+ if (commandInfo[0] != "log" && commandInfo[0] != "staticstorage")
+ {
+ LogManager.LogIncoming("[AS2] [SendMsg] " + e.args);
+ }
+
+ switch (commandInfo[0])
+ {
+ // ----------------------------- FileManager ---------------------------- \\
+ case "load":
+ SetVar(FileManager.LoadFile(commandInfo[1], commandInfo[2]));
+ break;
+ case "save":
+ FileManager.SaveFile(commandInfo[1], commandInfo[2], command);
+ break;
+ case "createuser":
+ FileManager.CreateUser(commandInfo[1], commandInfo[2], commandInfo[3], commandInfo[4], commandInfo[5]);
+ break;
+
+ // ----------------------------- HttpManager ---------------------------- \\
+ case "netcommands":
+ LogManager.LogNetwork("Netcommand called.", "NetCommand");
+
+ string tnurl = "";
+ if (e.args.Contains("");
+ break;
+ case "as3_load":
+ AS3Container.Play();
+ AS2Container.SendToBack();
+ SetVar(@"");
+ SetVar(@"");
+ SetVar(@"");
+ break;
+ case "as3_close":
+ SetVar(@"");
+ AS3Container.SendToBack();
+ AS3Container.Stop();
+ break;
+ case "as3_setcurrentid":
+ //The game unescapes this string. "" is the string. Unsure if it does anything, but it does not give a failure.
+ AS3Container.CallFunction(@"setid%3c%63%6f%6d%6d%61%6e%64%73%3e%3c%73%65%74%69%64%20%69%64%3d%22%30%22%20%2f%3e%3c%2f%63%6f%6d%6d%61%6e%64%73%3e%3c%63%6f%6d%6d%61%6e%64%73%3e%3c%73%65%74%69%64%20%69%64%3d%22%30%22%20%2f%3e%3c%2f%63%6f%6d%6d%61%6e%64%73%3e");
+ AS3Container.SendToBack();
+ Directory.Delete(Directory.GetCurrentDirectory() + @"\misc\tmp\", true); //Deletes the temporary folder used for the results.
+ break;
+ case "checktrunkupdate":
+ SetVar(@"");
+ break;
+ case "readytorecieve":
+ break;
+ default:
+ LogManager.LogGeneral($"[AS2] [SendMsg] Unhandled command! - {command}");
+ break;
+ }
+ }
+
+ }
+
+ void Form_FormClosing(object sender, FormClosingEventArgs e)
+ {
+ e.Cancel = (e.CloseReason == CloseReason.UserClosing);
+ if (e.CloseReason == CloseReason.UserClosing)
+ {
+ SetVar(@"");
+ }
+ if (e.CloseReason == CloseReason.WindowsShutDown)
+ {
+ DisposeElements();
+ Application.Exit();
+ }
+ }
+
+ public void RadicaClose()
+ {
+ LogManager.LogGeneral("[OpenFK] Radicaclose was called");
+ DisposeElements();
+ StartUpdate();
+ Application.Exit();
+ }
+
+ void DisposeElements()
+ {
+ if (Settings.Default.RPC == true)
+ {
+ RichPresenceManager.Client.Dispose();
+ }
+ if (Settings.Default.USBSupport == true)
+ {
+ try
+ {
+ Process process = Process.GetProcessesByName("MegaByte")[0];
+ process.Kill();
+ }
+ catch
+ {
+ StartUpdate();
+ Application.Exit();
+ }
+ }
+ if (Settings.Default.customF == true)
+ {
+ try
+ {
+ Process process = Process.GetProcessesByName("FunkeySelectorGUI")[0];
+ process.Kill();
+ }
+ catch
+ {
+ StartUpdate();
+ Application.Exit();
+ }
+ }
+ }
+
+ void StartUpdate()
+ {
+ if (Globals.WasUpdated)
+ {
+ ProcessStartInfo updatescript = new ProcessStartInfo(Directory.GetCurrentDirectory() + @"\tmpdl\OpenFK.exe");
+ updatescript.Arguments = "/update";
+ updatescript.WorkingDirectory = Directory.GetCurrentDirectory() + @"\tmpdl";
+ updatescript.UseShellExecute = false;
+ Process.Start(updatescript);
+ }
+ }
+
+ public void SetVar(string msg)
+ {
+ LogManager.LogOutgoing("[SetVar/Return] Returned Message - " + msg);
+ AS2Container.SetVariable("msg", msg);
+ }
+
+ const int WM_COPYDATA = 0x004A;
+
+ [StructLayout(LayoutKind.Sequential)]
+ public struct COPYDATASTRUCT
+ {
+ public IntPtr dwData;
+ public int cbData;
+ public IntPtr lpData;
+ }
+
+ //Receives the Bitty Code from MegaByte and FSGUI.
+ protected override void WndProc(ref Message m)
+ {
+ if (m.Msg == WM_COPYDATA)
+ {
+ COPYDATASTRUCT cds = (COPYDATASTRUCT)m.GetLParam(typeof(COPYDATASTRUCT));
+
+ // Convert lpData to a string
+ byte[] buffer = new byte[cds.cbData];
+ Marshal.Copy(cds.lpData, buffer, 0, buffer.Length);
+ string receivedData = Encoding.ASCII.GetString(buffer);
+
+ LogManager.LogGeneral($"[Bitty] USB Bitty - {receivedData}");
+ BittyManager.SetBitty(receivedData, true);
+ }
+ base.WndProc(ref m);
+ }
+
+ private void GameForm_KeyPress(object sender, KeyPressEventArgs e)
+ {
+ if (e.KeyChar == '`')
+ {
+ BittyManager.ShowGUI();
+ }
+ }
+ }
+}
diff --git a/OpenFK/Form1.resx b/OpenFK/GameForm.resx
similarity index 100%
rename from OpenFK/Form1.resx
rename to OpenFK/GameForm.resx
diff --git a/OpenFK/Globals.cs b/OpenFK/Globals.cs
new file mode 100644
index 0000000..4a33771
--- /dev/null
+++ b/OpenFK/Globals.cs
@@ -0,0 +1,11 @@
+namespace OpenFK
+{
+ static class Globals
+ {
+ public static FlashRightClick AS2Container;
+ public static FlashRightClick AS3Container;
+ public static GameForm GameForm;
+ public static bool WasUpdated;
+ public static bool IsDebug;
+ }
+}
diff --git a/OpenFK/OFK.Common/CommandParser.cs b/OpenFK/OFK.Common/CommandParser.cs
new file mode 100644
index 0000000..0169676
--- /dev/null
+++ b/OpenFK/OFK.Common/CommandParser.cs
@@ -0,0 +1,79 @@
+using System.Collections.Generic;
+using System.Linq;
+using System.Xml.Linq;
+
+namespace OpenFK.OFK.Common
+{
+ static class CommandParser
+ {
+ ///
+ /// Breaks each message into their own XML string.
+ ///
+ ///
+ /// A string array with each raw command in the message.
+ ///
+ public static string[] ParseReceivedMessage(string xmlCommand)
+ {
+ List commandsList = new List();
+
+ xmlCommand = xmlCommand.Replace("\0", string.Empty);
+
+ XDocument breakableXMLMessage = XDocument.Parse(xmlCommand);
+ XElement commandRoot = breakableXMLMessage.Root;
+ if(commandRoot.Name.LocalName != "commands")
+ {
+ commandsList.Add(xmlCommand);
+ return commandsList.ToArray();
+ }
+
+ foreach (var comElement in breakableXMLMessage.Descendants("commands").Elements())
+ {
+ commandsList.Add(comElement.ToString());
+ }
+
+ return commandsList.ToArray();
+ }
+
+ ///
+ /// Parses the command's parameters and descendants.
+ ///
+ ///
+ /// A string array with the first element being the command name, and the subsequent elements being the parameters, then descendants.
+ ///
+ public static string[] ParseCommand(string command)
+ {
+ List commandInfo = new List();
+
+ XDocument commandXML = XDocument.Parse(command);
+ XElement commandRoot = commandXML.Root;
+
+ commandInfo.Add(commandRoot.Name.LocalName);
+
+ var attrNames = (
+ from a in commandRoot.Attributes()
+ select a.Value
+ );
+
+ foreach (string value in attrNames)
+ {
+ commandInfo.Add(value);
+ }
+
+ //Allows parsing of descendant elements.
+ foreach (XElement element in commandRoot.Descendants())
+ {
+ var desAttrNames = (
+ from a in element.Attributes()
+ select a.Value
+ );
+
+ foreach (string value in desAttrNames)
+ {
+ commandInfo.Add(value);
+ }
+ }
+
+ return commandInfo.ToArray();
+ }
+ }
+}
diff --git a/OpenFK/OFK.Common/LogManager.cs b/OpenFK/OFK.Common/LogManager.cs
index 99daaf4..321beb7 100644
--- a/OpenFK/OFK.Common/LogManager.cs
+++ b/OpenFK/OFK.Common/LogManager.cs
@@ -1,9 +1,5 @@
-using System;
-using System.Collections.Generic;
+using System.Collections.Generic;
using System.Diagnostics;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Windows.Forms;
namespace OpenFK.OFK.Common
@@ -20,13 +16,16 @@ namespace OpenFK.OFK.Common
private static void AppendLine(RichTextBox richTextBox, string message)
{
- try
+ if (Globals.IsDebug)
{
- richTextBox.AppendText("\n" + message);
- }
- catch
- {
- Debug.WriteLine($"[{richTextBox.Name}] {message}");
+ try
+ {
+ richTextBox.AppendText("\n" + message);
+ }
+ catch
+ {
+ Debug.WriteLine($"[{richTextBox.Name}] {message}");
+ }
}
}
diff --git a/OpenFK/OFK.Common/RDFManager.cs b/OpenFK/OFK.Common/RDFManager.cs
new file mode 100644
index 0000000..e0740f2
--- /dev/null
+++ b/OpenFK/OFK.Common/RDFManager.cs
@@ -0,0 +1,117 @@
+using System.Text;
+
+namespace OpenFK
+{
+ class RDFManager
+ {
+ private static char[] code = new char[] { (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x34, (char)0x35, (char)0x36, (char)0x37, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xDC, (char)0xDD, (char)0xDE, (char)0xDF, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF };
+
+ ///
+ /// the column to roll
+ ///
+ private static char[][] col = new char[][]
+ {
+ new char[] {(char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x34, (char)0x35, (char)0x36, (char)0x37, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xDC, (char)0xDD, (char)0xDE, (char)0xDF, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB},
+ new char[] {(char)0x32, (char)0x33, (char)0x30, (char)0x31, (char)0x36, (char)0x37, (char)0x34, (char)0x35, (char)0x3A, (char)0x3B, (char)0x38, (char)0x39, (char)0x3E, (char)0x3F, (char)0x3C, (char)0x3D, (char)0x22, (char)0x23, (char)0x20, (char)0x21, (char)0x26, (char)0x27, (char)0x24, (char)0x25, (char)0x2A, (char)0x2B, (char)0x28, (char)0x29, (char)0x2E, (char)0x2F, (char)0x2C, (char)0x2D, (char)0x12, (char)0x13, (char)0x10, (char)0x11, (char)0x16, (char)0x17, (char)0x14, (char)0x15, (char)0x1A, (char)0x1B, (char)0x18, (char)0x19, (char)0x1E, (char)0x1F, (char)0x1C, (char)0x1D, (char)0x02, (char)0x03, (char)0x00, (char)0x01, (char)0x06, (char)0x07, (char)0x04, (char)0x05, (char)0x0A, (char)0x0B, (char)0x08, (char)0x09, (char)0x0E, (char)0x0F, (char)0x0C, (char)0x0D, (char)0x72, (char)0x73, (char)0x70, (char)0x71, (char)0x76, (char)0x77, (char)0x74, (char)0x75, (char)0x7A, (char)0x7B, (char)0x78, (char)0x79, (char)0x7E, (char)0x7F, (char)0x7C, (char)0x7D, (char)0x62, (char)0x63, (char)0x60, (char)0x61, (char)0x66, (char)0x67, (char)0x64, (char)0x65, (char)0x6A, (char)0x6B, (char)0x68, (char)0x69, (char)0x6E, (char)0x6F, (char)0x6C, (char)0x6D, (char)0x52, (char)0x53, (char)0x50, (char)0x51, (char)0x56, (char)0x57, (char)0x54, (char)0x55, (char)0x5A, (char)0x5B, (char)0x58, (char)0x59, (char)0x5E, (char)0x5F, (char)0x5C, (char)0x5D, (char)0x42, (char)0x43, (char)0x40, (char)0x41, (char)0x46, (char)0x47, (char)0x44, (char)0x45, (char)0x4A, (char)0x4B, (char)0x48, (char)0x49, (char)0x4E, (char)0x4F, (char)0x4C, (char)0x4D, (char)0xF2, (char)0xF3, (char)0xF0, (char)0xF1, (char)0xF6, (char)0xF7, (char)0xF4, (char)0xF5, (char)0xFA, (char)0xFB, (char)0xF8, (char)0xF9, (char)0xFE, (char)0xFF, (char)0xFC, (char)0xFD, (char)0xE2, (char)0xE3, (char)0xE0, (char)0xE1, (char)0xE6, (char)0xE7, (char)0xE4, (char)0xE5, (char)0xEA, (char)0xEB, (char)0xE8, (char)0xE9, (char)0xEE, (char)0xEF, (char)0xEC, (char)0xED, (char)0xD2, (char)0xD3, (char)0xD0, (char)0xD1, (char)0xD6, (char)0xD7, (char)0xD4, (char)0xD5, (char)0xDA, (char)0xDB, (char)0xD8, (char)0xD9, (char)0xDE, (char)0xDF, (char)0xDC, (char)0xDD, (char)0xC2, (char)0xC3, (char)0xC0, (char)0xC1, (char)0xC6, (char)0xC7, (char)0xC4, (char)0xC5, (char)0xCA, (char)0xCB, (char)0xC8, (char)0xC9, (char)0xCE, (char)0xCF, (char)0xCC, (char)0xCD, (char)0xB2, (char)0xB3, (char)0xB0, (char)0xB1, (char)0xB6, (char)0xB7, (char)0xB4, (char)0xB5, (char)0xBA, (char)0xBB, (char)0xB8, (char)0xB9, (char)0xBE, (char)0xBF, (char)0xBC, (char)0xBD, (char)0xA2, (char)0xA3, (char)0xA0, (char)0xA1, (char)0xA6, (char)0xA7, (char)0xA4, (char)0xA5, (char)0xAA, (char)0xAB, (char)0xA8, (char)0xA9, (char)0xAE, (char)0xAF, (char)0xAC, (char)0xAD, (char)0x92, (char)0x93, (char)0x90, (char)0x91, (char)0x96, (char)0x97, (char)0x94, (char)0x95, (char)0x9A, (char)0x9B, (char)0x98, (char)0x99, (char)0x9E, (char)0x9F, (char)0x9C, (char)0x9D, (char)0x82, (char)0x83, (char)0x80, (char)0x81, (char)0x86, (char)0x87, (char)0x84, (char)0x85, (char)0x8A, (char)0x8B, (char)0x88, (char)0x89, (char)0x8E, (char)0x8F, (char)0x8C, (char)0x8D},
+ new char[] {(char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x34, (char)0x35, (char)0x36, (char)0x37, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xDC, (char)0xDE, (char)0xDF, (char)0xDF, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3},
+ new char[] {(char)0xE5, (char)0xE4, (char)0xE7, (char)0xE6, (char)0xE1, (char)0xE0, (char)0xE3, (char)0xE2, (char)0xED, (char)0xEC, (char)0xEF, (char)0xEE, (char)0xE9, (char)0xE8, (char)0xEB, (char)0xEA, (char)0xF5, (char)0xF4, (char)0xF7, (char)0xF6, (char)0xF1, (char)0xF0, (char)0xF3, (char)0xF2, (char)0xFD, (char)0xFC, (char)0xFF, (char)0xFE, (char)0xF9, (char)0xF8, (char)0xFB, (char)0xFA, (char)0xC5, (char)0xC4, (char)0xC7, (char)0xC6, (char)0xC1, (char)0xC0, (char)0xC3, (char)0xC2, (char)0xCD, (char)0xCC, (char)0xCF, (char)0xCE, (char)0xC9, (char)0xC8, (char)0xCB, (char)0xCA, (char)0xD5, (char)0xD4, (char)0xD7, (char)0xD6, (char)0xD1, (char)0xD0, (char)0xD3, (char)0xD2, (char)0xDD, (char)0xDC, (char)0xDF, (char)0xDE, (char)0xD9, (char)0xD8, (char)0xDB, (char)0xDA, (char)0xA5, (char)0xA4, (char)0xA7, (char)0xA6, (char)0xA1, (char)0xA0, (char)0xA3, (char)0xA2, (char)0xAD, (char)0xAC, (char)0xAF, (char)0xAE, (char)0xA9, (char)0xA8, (char)0xAB, (char)0xAA, (char)0xB5, (char)0xB4, (char)0xB7, (char)0xB6, (char)0xB1, (char)0xB0, (char)0xB3, (char)0xB2, (char)0xBD, (char)0xBC, (char)0xBF, (char)0xBE, (char)0xB9, (char)0xB8, (char)0xBB, (char)0xBA, (char)0x85, (char)0x84, (char)0x87, (char)0x86, (char)0x81, (char)0x80, (char)0x83, (char)0x82, (char)0x8D, (char)0x8C, (char)0x8F, (char)0x8E, (char)0x89, (char)0x88, (char)0x8B, (char)0x8A, (char)0x95, (char)0x94, (char)0x97, (char)0x96, (char)0x91, (char)0x90, (char)0x93, (char)0x92, (char)0x9D, (char)0x9C, (char)0x9F, (char)0x9E, (char)0x99, (char)0x98, (char)0x9B, (char)0x9A, (char)0x25, (char)0x24, (char)0x27, (char)0x26, (char)0x21, (char)0x20, (char)0x23, (char)0x22, (char)0x2D, (char)0x2C, (char)0x2F, (char)0x2E, (char)0x29, (char)0x28, (char)0x2B, (char)0x2A, (char)0x35, (char)0x34, (char)0x37, (char)0x36, (char)0x31, (char)0x30, (char)0x33, (char)0x32, (char)0x3D, (char)0x3C, (char)0x3F, (char)0x3E, (char)0x39, (char)0x38, (char)0x3B, (char)0x3A, (char)0x05, (char)0x04, (char)0x07, (char)0x06, (char)0x01, (char)0x00, (char)0x03, (char)0x02, (char)0x0D, (char)0x0C, (char)0x0F, (char)0x0E, (char)0x09, (char)0x08, (char)0x0B, (char)0x0A, (char)0x15, (char)0x14, (char)0x17, (char)0x16, (char)0x11, (char)0x10, (char)0x13, (char)0x12, (char)0x1D, (char)0x1C, (char)0x1F, (char)0x1E, (char)0x19, (char)0x18, (char)0x1B, (char)0x1A, (char)0x65, (char)0x64, (char)0x67, (char)0x66, (char)0x61, (char)0x60, (char)0x63, (char)0x62, (char)0x6D, (char)0x6C, (char)0x6F, (char)0x6E, (char)0x69, (char)0x68, (char)0x6B, (char)0x6A, (char)0x75, (char)0x74, (char)0x77, (char)0x76, (char)0x71, (char)0x70, (char)0x73, (char)0x72, (char)0x7D, (char)0x7C, (char)0x7F, (char)0x7E, (char)0x79, (char)0x78, (char)0x7B, (char)0x7A, (char)0x45, (char)0x44, (char)0x47, (char)0x46, (char)0x41, (char)0x40, (char)0x43, (char)0x42, (char)0x4D, (char)0x4C, (char)0x4F, (char)0x4E, (char)0x49, (char)0x48, (char)0x4B, (char)0x4A, (char)0x55, (char)0x54, (char)0x57, (char)0x56, (char)0x51, (char)0x50, (char)0x53, (char)0x52, (char)0x5D, (char)0x5C, (char)0x5F, (char)0x5E, (char)0x59, (char)0x58, (char)0x5B, (char)0x5A},
+ new char[] {(char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xDC, (char)0xDD, (char)0xDE, (char)0xDF, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x34, (char)0x35, (char)0x36, (char)0x37},
+ new char[] {(char)0x79, (char)0x78, (char)0x7B, (char)0x7A, (char)0x7D, (char)0x7C, (char)0x7F, (char)0x7E, (char)0x71, (char)0x70, (char)0x73, (char)0x72, (char)0x75, (char)0x74, (char)0x77, (char)0x76, (char)0x69, (char)0x68, (char)0x6B, (char)0x6A, (char)0x6D, (char)0x6C, (char)0x6F, (char)0x6E, (char)0x61, (char)0x60, (char)0x63, (char)0x62, (char)0x65, (char)0x64, (char)0x67, (char)0x66, (char)0x59, (char)0x58, (char)0x5B, (char)0x5A, (char)0x5D, (char)0x5C, (char)0x5F, (char)0x5E, (char)0x51, (char)0x50, (char)0x53, (char)0x52, (char)0x55, (char)0x54, (char)0x57, (char)0x56, (char)0x49, (char)0x48, (char)0x4B, (char)0x4A, (char)0x4D, (char)0x4C, (char)0x4F, (char)0x4E, (char)0x41, (char)0x40, (char)0x43, (char)0x42, (char)0x45, (char)0x44, (char)0x47, (char)0x46, (char)0x39, (char)0x38, (char)0x3B, (char)0x3A, (char)0x3D, (char)0x3C, (char)0x3F, (char)0x3E, (char)0x31, (char)0x30, (char)0x33, (char)0x32, (char)0x35, (char)0x34, (char)0x37, (char)0x36, (char)0x29, (char)0x28, (char)0x2B, (char)0x2A, (char)0x2D, (char)0x2C, (char)0x2F, (char)0x2E, (char)0x21, (char)0x20, (char)0x23, (char)0x22, (char)0x25, (char)0x24, (char)0x27, (char)0x26, (char)0x19, (char)0x18, (char)0x1B, (char)0x1A, (char)0x1D, (char)0x1C, (char)0x1F, (char)0x1E, (char)0x11, (char)0x10, (char)0x13, (char)0x12, (char)0x15, (char)0x14, (char)0x17, (char)0x16, (char)0x09, (char)0x08, (char)0x0B, (char)0x0A, (char)0x0D, (char)0x0C, (char)0x0F, (char)0x0E, (char)0x01, (char)0x00, (char)0x03, (char)0x02, (char)0x05, (char)0x04, (char)0x07, (char)0x06, (char)0xB9, (char)0xB8, (char)0xBB, (char)0xBA, (char)0xBD, (char)0xBC, (char)0xBF, (char)0xBE, (char)0xB1, (char)0xB0, (char)0xB3, (char)0xB2, (char)0xB5, (char)0xB4, (char)0xB7, (char)0xB6, (char)0xA9, (char)0xA8, (char)0xAB, (char)0xAA, (char)0xAD, (char)0xAC, (char)0xAF, (char)0xAE, (char)0xA1, (char)0xA0, (char)0xA3, (char)0xA2, (char)0xA5, (char)0xA4, (char)0xA7, (char)0xA6, (char)0x99, (char)0x98, (char)0x9B, (char)0x9A, (char)0x9D, (char)0x9C, (char)0x9F, (char)0x9E, (char)0x91, (char)0x90, (char)0x93, (char)0x92, (char)0x95, (char)0x94, (char)0x97, (char)0x96, (char)0x89, (char)0x88, (char)0x8B, (char)0x8A, (char)0x8D, (char)0x8C, (char)0x8F, (char)0x8E, (char)0x81, (char)0x80, (char)0x83, (char)0x82, (char)0x85, (char)0x84, (char)0x87, (char)0x86, (char)0xF9, (char)0xF8, (char)0xFB, (char)0xFA, (char)0xFD, (char)0xFC, (char)0xFF, (char)0xFE, (char)0xF1, (char)0xF0, (char)0xF3, (char)0xF2, (char)0xF5, (char)0xF4, (char)0xF7, (char)0xF6, (char)0xE9, (char)0xE8, (char)0xEB, (char)0xEA, (char)0xED, (char)0xEC, (char)0xEF, (char)0xEE, (char)0xE1, (char)0xE0, (char)0xE3, (char)0xE2, (char)0xE5, (char)0xE4, (char)0xE7, (char)0xE6, (char)0xD9, (char)0xD8, (char)0xDB, (char)0xDA, (char)0xDD, (char)0xDC, (char)0xDF, (char)0xDE, (char)0xD1, (char)0xD0, (char)0xD3, (char)0xD2, (char)0xD5, (char)0xD4, (char)0xD7, (char)0xD6, (char)0xC9, (char)0xC8, (char)0xCB, (char)0xCA, (char)0xCD, (char)0xCC, (char)0xCF, (char)0xCE, (char)0xC1, (char)0xC0, (char)0xC3, (char)0xC2, (char)0xC5, (char)0xC4, (char)0xC7, (char)0xC6},
+ new char[] {(char)0x7F, (char)0x7E, (char)0x7D, (char)0x7C, (char)0x7B, (char)0x7A, (char)0x79, (char)0x78, (char)0x77, (char)0x76, (char)0x75, (char)0x74, (char)0x73, (char)0x72, (char)0x71, (char)0x70, (char)0x6F, (char)0x6E, (char)0x6D, (char)0x6C, (char)0x6B, (char)0x6A, (char)0x69, (char)0x68, (char)0x67, (char)0x66, (char)0x65, (char)0x64, (char)0x63, (char)0x62, (char)0x61, (char)0x60, (char)0x5F, (char)0x5E, (char)0x5D, (char)0x5C, (char)0x5B, (char)0x5A, (char)0x59, (char)0x58, (char)0x57, (char)0x56, (char)0x55, (char)0x54, (char)0x53, (char)0x52, (char)0x51, (char)0x50, (char)0x4F, (char)0x4E, (char)0x4D, (char)0x4C, (char)0x4B, (char)0x4A, (char)0x49, (char)0x48, (char)0x47, (char)0x46, (char)0x45, (char)0x44, (char)0x43, (char)0x42, (char)0x41, (char)0x40, (char)0x3F, (char)0x3E, (char)0x3D, (char)0x3C, (char)0x3B, (char)0x3A, (char)0x39, (char)0x38, (char)0x37, (char)0x36, (char)0x35, (char)0x34, (char)0x33, (char)0x32, (char)0x31, (char)0x30, (char)0x2F, (char)0x2E, (char)0x2D, (char)0x2C, (char)0x2B, (char)0x2A, (char)0x29, (char)0x28, (char)0x27, (char)0x26, (char)0x25, (char)0x24, (char)0x23, (char)0x22, (char)0x21, (char)0x20, (char)0x1F, (char)0x1E, (char)0x1D, (char)0x1C, (char)0x1B, (char)0x1A, (char)0x19, (char)0x18, (char)0x17, (char)0x16, (char)0x15, (char)0x14, (char)0x13, (char)0x12, (char)0x11, (char)0x10, (char)0x0F, (char)0x0E, (char)0x0D, (char)0x0C, (char)0x0B, (char)0x0A, (char)0x09, (char)0x08, (char)0x07, (char)0x06, (char)0x05, (char)0x04, (char)0x03, (char)0x02, (char)0x01, (char)0x00, (char)0xBF, (char)0xBE, (char)0xBD, (char)0xBC, (char)0xBB, (char)0xBA, (char)0xB9, (char)0xB8, (char)0xB7, (char)0xB6, (char)0xB5, (char)0xB4, (char)0xB3, (char)0xB2, (char)0xB1, (char)0xB0, (char)0xAF, (char)0xAE, (char)0xAD, (char)0xAC, (char)0xAB, (char)0xAA, (char)0xA9, (char)0xA8, (char)0xA7, (char)0xA6, (char)0xA5, (char)0xA4, (char)0xA3, (char)0xA2, (char)0xA1, (char)0xA0, (char)0x9F, (char)0x9E, (char)0x9D, (char)0x9C, (char)0x9B, (char)0x9A, (char)0x99, (char)0x98, (char)0x97, (char)0x96, (char)0x95, (char)0x94, (char)0x93, (char)0x92, (char)0x91, (char)0x90, (char)0x8F, (char)0x8E, (char)0x8D, (char)0x8C, (char)0x8B, (char)0x8A, (char)0x89, (char)0x88, (char)0x87, (char)0x86, (char)0x85, (char)0x84, (char)0x83, (char)0x82, (char)0x81, (char)0x80, (char)0xFF, (char)0xFE, (char)0xFD, (char)0xFC, (char)0xFB, (char)0xFA, (char)0xF9, (char)0xF8, (char)0xF7, (char)0xF6, (char)0xF5, (char)0xF4, (char)0xF3, (char)0xF2, (char)0xF1, (char)0xF0, (char)0xEF, (char)0xEE, (char)0xED, (char)0xEC, (char)0xEB, (char)0xEA, (char)0xE9, (char)0xE8, (char)0xE7, (char)0xE6, (char)0xE5, (char)0xE4, (char)0xE3, (char)0xE2, (char)0xE1, (char)0xE0, (char)0xDF, (char)0xDE, (char)0xDD, (char)0xDC, (char)0xDB, (char)0xDA, (char)0xD9, (char)0xD8, (char)0xD7, (char)0xD6, (char)0xD5, (char)0xD4, (char)0xD3, (char)0xD2, (char)0xD1, (char)0xD0, (char)0xCF, (char)0xCE, (char)0xCD, (char)0xCC, (char)0xCB, (char)0xCA, (char)0xC9, (char)0xC8, (char)0xC7, (char)0xC6, (char)0xC5, (char)0xC4, (char)0xC3, (char)0xC2, (char)0xC1, (char)0xC0},
+ new char[] {(char)0x95, (char)0x94, (char)0x97, (char)0x96, (char)0x91, (char)0x90, (char)0x93, (char)0x92, (char)0x9D, (char)0x9C, (char)0x9F, (char)0x9E, (char)0x99, (char)0x98, (char)0x9B, (char)0x9A, (char)0x85, (char)0x84, (char)0x87, (char)0x86, (char)0x81, (char)0x80, (char)0x83, (char)0x82, (char)0x8D, (char)0x8C, (char)0x8F, (char)0x8E, (char)0x89, (char)0x88, (char)0x8B, (char)0x8A, (char)0xB5, (char)0xB4, (char)0xB7, (char)0xB6, (char)0xB1, (char)0xB0, (char)0xB3, (char)0xB2, (char)0xBD, (char)0xBC, (char)0xBF, (char)0xBE, (char)0xB9, (char)0xB8, (char)0xBB, (char)0xBA, (char)0xA5, (char)0xA4, (char)0xA7, (char)0xA6, (char)0xA1, (char)0xA0, (char)0xA3, (char)0xA2, (char)0xAD, (char)0xAC, (char)0xAF, (char)0xAE, (char)0xA9, (char)0xA8, (char)0xAB, (char)0xAA, (char)0xD5, (char)0xD4, (char)0xD7, (char)0xD6, (char)0xD1, (char)0xD0, (char)0xD3, (char)0xD2, (char)0xDD, (char)0xDC, (char)0xDF, (char)0xDE, (char)0xD9, (char)0xD8, (char)0xDB, (char)0xDA, (char)0xC5, (char)0xC4, (char)0xC7, (char)0xC6, (char)0xC1, (char)0xC0, (char)0xC3, (char)0xC2, (char)0xCD, (char)0xCC, (char)0xCF, (char)0xCE, (char)0xC9, (char)0xC8, (char)0xCB, (char)0xCA, (char)0xF5, (char)0xF4, (char)0xF7, (char)0xF6, (char)0xF1, (char)0xF0, (char)0xF3, (char)0xF2, (char)0xFD, (char)0xFC, (char)0xFF, (char)0xFE, (char)0xF9, (char)0xF8, (char)0xFB, (char)0xFA, (char)0xE5, (char)0xE4, (char)0xE7, (char)0xE6, (char)0xE1, (char)0xE0, (char)0xE3, (char)0xE2, (char)0xED, (char)0xEC, (char)0xEF, (char)0xEE, (char)0xE9, (char)0xE8, (char)0xEB, (char)0xEA, (char)0x55, (char)0x54, (char)0x57, (char)0x56, (char)0x51, (char)0x50, (char)0x53, (char)0x52, (char)0x5D, (char)0x5C, (char)0x5F, (char)0x5E, (char)0x59, (char)0x58, (char)0x5B, (char)0x5A, (char)0x45, (char)0x44, (char)0x47, (char)0x46, (char)0x41, (char)0x40, (char)0x43, (char)0x42, (char)0x4D, (char)0x4C, (char)0x4F, (char)0x4E, (char)0x49, (char)0x48, (char)0x4B, (char)0x4A, (char)0x75, (char)0x74, (char)0x77, (char)0x76, (char)0x71, (char)0x70, (char)0x73, (char)0x72, (char)0x7D, (char)0x7C, (char)0x7F, (char)0x7E, (char)0x79, (char)0x78, (char)0x7B, (char)0x7A, (char)0x65, (char)0x64, (char)0x67, (char)0x66, (char)0x61, (char)0x60, (char)0x63, (char)0x62, (char)0x6D, (char)0x6C, (char)0x6F, (char)0x6E, (char)0x69, (char)0x68, (char)0x6B, (char)0x6A, (char)0x15, (char)0x14, (char)0x17, (char)0x16, (char)0x11, (char)0x10, (char)0x13, (char)0x12, (char)0x1D, (char)0x1C, (char)0x1F, (char)0x1E, (char)0x19, (char)0x18, (char)0x1B, (char)0x1A, (char)0x05, (char)0x04, (char)0x07, (char)0x06, (char)0x01, (char)0x00, (char)0x03, (char)0x02, (char)0x0D, (char)0x0C, (char)0x0F, (char)0x0E, (char)0x09, (char)0x08, (char)0x0B, (char)0x0A, (char)0x35, (char)0x34, (char)0x37, (char)0x36, (char)0x31, (char)0x30, (char)0x33, (char)0x32, (char)0x3D, (char)0x3C, (char)0x3F, (char)0x3E, (char)0x39, (char)0x38, (char)0x3B, (char)0x3A, (char)0x25, (char)0x24, (char)0x27, (char)0x26, (char)0x21, (char)0x20, (char)0x23, (char)0x22, (char)0x2D, (char)0x2C, (char)0x2F, (char)0x2E, (char)0x29, (char)0x28, (char)0x2B, (char)0x2A}
+ };
+
+ ///
+ /// the endings for each column
+ ///
+ private static char[][] end = new char[][]
+ {
+ new char[] {(char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x8B},
+ new char[] {(char)0x32, (char)0x6C, (char)0xE5, (char)0x8C},
+ new char[] {(char)0x6C, (char)0xE5, (char)0x8D},
+ new char[] {(char)0xE5, (char)0x8E},
+ new char[] {(char)0x8F},
+ new char[] {(char)0x79, (char)0x7F, (char)0x95, (char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x88},
+ new char[] {(char)0x7F, (char)0x95, (char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x88},
+ new char[] {(char)0x95, (char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x88}
+ };
+
+ ///
+ /// the start of each column
+ ///
+ private static char[] start = new char[] { (char)0xFF, (char)0x00, (char)0xFF, (char)0xAC, (char)0xEB, (char)0x96, (char)0xC4, (char)0x2A };
+
+ ///
+ /// Decodes an RDF file.
+ ///
+ ///
+ /// A string containing the plain-text XML data.
+ ///
+ public static string DecodeRDF(string encoded)
+ {
+ int currentCol = 0;
+ char[] arr = encoded.ToCharArray();
+ char[] ret = new char[arr.Length];
+ int pos = 0;
+ int endchar = 0;
+ foreach (char character in arr)
+ {
+ for (int i = 0; i < 256; i++)
+ {
+ if (col[currentCol][i] == character)
+ {
+ ret[pos++] = code[i];
+ if (code[i] == (char)0x3E)
+ {
+ endchar = pos;
+ }
+ break;
+ }
+ }
+ currentCol++;
+ if (currentCol > 7)
+ {
+ currentCol = 0;
+ }
+ }
+
+ return new string(ret).Substring(start.Length, endchar - start.Length);
+
+ }
+
+ ///
+ /// Encodes a plain-text XML file.
+ ///
+ ///
+ /// A string containing the encoded RDF data.
+ ///
+ public static string EncodeXML(string decoded)
+ {
+ Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1");
+ int currentCol = 0;
+ char[] arr = decoded.ToCharArray();
+ char[] ret = new char[arr.Length];
+ int pos = 0;
+ foreach (char character in arr)
+ {
+ for (int i = 0; i < 256; i++)
+ {
+ if (code[i] == character)
+ {
+ ret[pos++] = col[currentCol][i];
+ break;
+ }
+ }
+ currentCol++;
+ if (currentCol > 7)
+ {
+ currentCol = 0;
+ }
+ }
+ return new string(iso_8859_1.GetChars(iso_8859_1.GetBytes(new string(start) + new string(ret) + new string(end[currentCol]))));
+ }
+
+
+ }
+
+}
diff --git a/OpenFK/OFK.Core/BittyManager.cs b/OpenFK/OFK.Core/BittyManager.cs
new file mode 100644
index 0000000..bfe0ded
--- /dev/null
+++ b/OpenFK/OFK.Core/BittyManager.cs
@@ -0,0 +1,167 @@
+using Microsoft.Win32;
+using OpenFK.OFK.Net;
+using OpenFK.Properties;
+using System;
+using System.Diagnostics;
+using System.IO;
+using System.Runtime.InteropServices;
+using System.Text;
+using System.Text.RegularExpressions;
+using System.Threading;
+using System.Xml;
+
+namespace OpenFK.OFK.Core
+{
+ static class BittyManager
+ {
+ // ===================================
+ // Bitty Manager
+ // Handles the Bitty transmission via both MegaByte and customF.
+ // ===================================
+
+ private static FileSystemWatcher BittyWatcher;
+ private static string BittyID;
+
+ //For MegaByte's config.
+ [DllImport("user32.dll", CharSet = CharSet.Auto)]
+ static extern int GetClassName(IntPtr hwnd, StringBuilder lpClassName, int nMaxCount);
+
+ //FSGUI Focusing
+ private const int SW_SHOWNORMAL = 1;
+ private const int SW_MINIMIZE = 6;
+ const uint SWP_NOSIZE = 0x0001;
+ const uint SWP_NOZORDER = 0x0004;
+
+ [DllImport("user32.dll", EntryPoint = "FindWindow")]
+ public static extern IntPtr FindWindowByCaption(IntPtr ZeroOnly, string lpWindowName);
+
+ [DllImport("user32.dll")]
+ [return: MarshalAs(UnmanagedType.Bool)]
+ static extern bool IsIconic(IntPtr hWnd);
+
+ [DllImport("user32.dll")]
+ [return: MarshalAs(UnmanagedType.Bool)]
+ static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
+
+ [DllImport("user32.dll", SetLastError = true)]
+ static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int X, int Y, int cx, int cy, uint uFlags);
+
+ public static void InitBitty()
+ {
+ //customF Initialization
+ if (Settings.Default.customF == true)
+ {
+ BittyWatcher = new FileSystemWatcher();
+ BittyWatcher.Path = Directory.GetCurrentDirectory();
+ BittyWatcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
+ | NotifyFilters.FileName | NotifyFilters.DirectoryName;
+ BittyWatcher.Filter = "customF.txt";
+ BittyWatcher.Changed += OnChanged;
+ BittyWatcher.SynchronizingObject = Globals.AS2Container;
+ BittyWatcher.EnableRaisingEvents = true;
+
+ if (File.Exists(Directory.GetCurrentDirectory() + @"\FunkeySelectorGUI.exe"))
+ {
+ Process.Start(Directory.GetCurrentDirectory() + @"\FunkeySelectorGUI.exe");
+ Thread.Sleep(500);
+ ShowGUI();
+ }
+ }
+
+ if (Settings.Default.USBSupport == true)
+ {
+ //WinForms uses a randomized class name, so we fill in Config.ini with OpenFK's info.
+ var className = new StringBuilder(256);
+ GetClassName(Globals.GameForm.Handle, className, className.Capacity);
+
+ string configFile = Directory.GetParent(Directory.GetCurrentDirectory()) + @"\Config.ini";
+ string[] configLines = File.ReadAllLines(configFile);
+ configLines[11] = @"ClassName=""" + className.ToString() + @"""";
+ configLines[12] = @"WindowName=""OpenFK""";
+ File.WriteAllLines(configFile, configLines);
+
+ var key = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers", true);
+ if (key == null)
+ throw new InvalidOperationException(@"Cannot open registry key HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers.");
+ using (key)
+ key.SetValue(Directory.GetParent(Directory.GetCurrentDirectory()) + @"\MegaByte\" + "MegaByte.exe", "VISTASP2");
+ Process MBRun = new Process();
+ ProcessStartInfo MBData = new ProcessStartInfo();
+ MBData.FileName = Directory.GetParent(Directory.GetCurrentDirectory()) + @"\MegaByte\" + "MegaByte.exe";
+ MBData.Arguments = "-MBRun -MBDebug";
+ MBData.UseShellExecute = false;
+ MBData.WindowStyle = ProcessWindowStyle.Minimized;
+ MBRun.StartInfo = MBData;
+ MBRun.Start();
+ }
+ }
+
+ static void OnChanged(object sender, FileSystemEventArgs e)
+ {
+ try //Runs a loop to keep reading until the file is not being saved.
+ {
+ SetBitty(File.ReadAllText(Directory.GetCurrentDirectory() + @"\customF.txt").Remove(0, 14), false);
+ }
+ catch
+ {
+ OnChanged(sender, e);
+ }
+ }
+
+ public static void SetBitty(string localBittyID, bool isMB)
+ {
+ if (BittyID != localBittyID)
+ {
+ if (isMB)
+ {
+ string mbBitty = Regex.Replace(localBittyID, @"[^\w\d]", "");
+ Globals.GameForm.SetVar(@$"");
+ }
+ else
+ {
+ Globals.GameForm.SetVar(@$"");
+ }
+ BittyID = localBittyID;
+
+ RichPresenceManager.CurrentBitty = localBittyID.ToLower();
+ if (Settings.Default.RPC == true)
+ {
+ try
+ {
+ XmlNodeList nodes = RichPresenceManager.BittyData.SelectNodes("//funkey[@id='" + localBittyID + "']");
+ foreach (XmlNode xn in nodes)
+ {
+ RichPresenceManager.CurrentBittyName = xn.Attributes["name"].Value;
+ }
+ RichPresenceManager.SetRP(RichPresenceManager.CurrentWorld, RichPresenceManager.CurrentActivity, RichPresenceManager.CurrentBitty, RichPresenceManager.CurrentBittyName);
+ }
+ catch
+ {
+
+ }
+ }
+ }
+ }
+
+ public static void ShowGUI()
+ {
+ //TODO - There's an issue with opening anything other than the primary form.
+ try
+ {
+ IntPtr hwnd = FindWindowByCaption(IntPtr.Zero, "FunkeySelectorGUI");
+ if (IsIconic(hwnd))
+ {
+ ShowWindow(hwnd, SW_SHOWNORMAL);
+ int gameFormCenterX = Globals.GameForm.Location.X + 50;
+ int gameFormCenterY = Globals.GameForm.Location.Y + 50;
+ SetWindowPos(hwnd, IntPtr.Zero, gameFormCenterX, gameFormCenterY, gameFormCenterX, gameFormCenterY, SWP_NOSIZE | SWP_NOZORDER);
+ }
+ else
+ {
+ ShowWindow(hwnd, SW_MINIMIZE);
+ }
+ }
+ catch { }
+ }
+ }
+}
diff --git a/OpenFK/OFK.Core/FileManager.cs b/OpenFK/OFK.Core/FileManager.cs
new file mode 100644
index 0000000..46a79d4
--- /dev/null
+++ b/OpenFK/OFK.Core/FileManager.cs
@@ -0,0 +1,226 @@
+using OpenFK.OFK.Common;
+using OpenFK.OFK.Net;
+using OpenFK.Properties;
+using System;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Xml;
+using System.Xml.Linq;
+
+namespace OpenFK.OFK.Core
+{
+ static class FileManager
+ {
+ // ===================================
+ // File Manager
+ // Handles the modification/access of RDF files.
+ // ===================================
+
+ static XmlDocument UserData;
+
+ ///
+ /// Loads a specified data file and sends the contents to Flash.
+ ///
+ /// The file name to load.
+ /// The profile directory the file is located in.
+ public static string LoadFile(string section, string name)
+ {
+ LogManager.LogFile($"[Load] {name}/{section}");
+ Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1");
+ string response;
+ string filedata;
+ try
+ {
+ if (Settings.Default.RDF == true)
+ {
+ byte[] RDFData = File.ReadAllBytes(Directory.GetCurrentDirectory() + @"\data\" + name + @"\" + section + ".rdf");
+ filedata = RDFManager.DecodeRDF(iso_8859_1.GetString(RDFData));
+ }
+ else filedata = File.ReadAllText(Directory.GetCurrentDirectory() + @"\data\" + name + @"\" + section + ".xml");
+ response = @"" + filedata + @"";
+
+ switch (section)
+ {
+ case "funkeys":
+ RichPresenceManager.BittyData = new XmlDocument();
+ RichPresenceManager.BittyData.LoadXml(filedata);
+ break;
+ case "users":
+ UserData = new XmlDocument();
+ UserData.LoadXml(filedata);
+ break;
+ case "config":
+ XmlDocument configData = new XmlDocument();
+ configData.LoadXml(filedata);
+
+ if (Settings.Default.IsOnline)
+ {
+ XmlAttribute host = (XmlAttribute)configData.SelectSingleNode("/settings/host/@value");
+ host.Value = Settings.Default.HTTPHost1;
+
+ XmlAttribute host1 = (XmlAttribute)configData.SelectSingleNode("/settings/host1/@value");
+ host1.Value = Settings.Default.HTTPHost2;
+
+ XmlAttribute tcpHost = (XmlAttribute)configData.SelectSingleNode("/settings/arkone_host/@value");
+ tcpHost.Value = Settings.Default.TCPHost;
+
+ XmlAttribute tcpPort = (XmlAttribute)configData.SelectSingleNode("/settings/arkone_port/@value");
+ tcpPort.Value = Settings.Default.TCPPort;
+
+ filedata = configData.OuterXml;
+ response = @"" + filedata + @"";
+ }
+
+ XmlNodeList xnList1 = configData.SelectNodes("/settings/host");
+ foreach (XmlNode xn in xnList1)
+ {
+ HttpManager.GXHost = xn.Attributes["value"].Value;
+ }
+
+ XmlNodeList xnList2 = configData.SelectNodes("/settings/host1");
+ foreach (XmlNode xn in xnList2)
+ {
+ HttpManager.UGHost = xn.Attributes["value"].Value;
+ }
+
+ XmlNodeList xnList3 = configData.SelectNodes("/settings/store");
+ foreach (XmlNode xn in xnList3)
+ {
+ HttpManager.FileStore = xn.Attributes["value"].Value;
+ }
+
+ XmlNodeList xnList4 = configData.SelectNodes("/settings/trunkstore");
+ foreach (XmlNode xn in xnList4)
+ {
+ HttpManager.TrunkStore = xn.Attributes["value"].Value;
+ }
+ break;
+
+ case "city":
+ RichPresenceManager.ChangeLocation("Funkeystown");
+ break;
+ case "lava":
+ RichPresenceManager.ChangeLocation("Magma Gorge");
+ break;
+ case "space":
+ RichPresenceManager.ChangeLocation("Laputta Station");
+ break;
+ case "underwater":
+ RichPresenceManager.ChangeLocation("Kelpy Basin");
+ break;
+ case "island":
+ RichPresenceManager.ChangeLocation("Funkiki Island");
+ break;
+ case "racer":
+ RichPresenceManager.ChangeLocation("Royalton Racing Complex");
+ break;
+ case "night":
+ RichPresenceManager.ChangeLocation("Nightmare Rift");
+ break;
+ case "day":
+ RichPresenceManager.ChangeLocation("Daydream Oasis");
+ break;
+ case "realm":
+ RichPresenceManager.ChangeLocation("Hidden Realm");
+ break;
+ case "ssl":
+ RichPresenceManager.ChangeLocation("Angus Manor");
+ break;
+ case "green":
+ RichPresenceManager.ChangeLocation("Paradox Green");
+ break;
+ }
+
+ }
+ catch
+ {
+ //UGLevels requires an error to proceed.
+ response = @"";
+ }
+ LogManager.LogFile($"[Load] [Success] {name}/{section}");
+ return response.ToString();
+ }
+
+ ///
+ /// Saves the contents inside of the command to a specified data file.
+ ///
+ /// The file name to save.
+ /// The profile directory used to save in.
+ /// The raw command that will be used as the output.
+ public static void SaveFile(string section, string name, string data)
+ {
+ LogManager.LogFile($"[Save] {name}/{section}");
+
+ XDocument args = XDocument.Parse(data);
+
+ XElement firstChild = args.Root.Elements().First();
+
+ XDocument output = new XDocument(new XDeclaration("1.0", "utf-8", "yes"),
+ firstChild);
+
+ if (!Directory.Exists(Directory.GetCurrentDirectory() + @"\data\" + name))
+ {
+ Directory.CreateDirectory(Directory.GetCurrentDirectory() + @"\data\" + name);
+ }
+ if (Settings.Default.RDF == true)
+ {
+ Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1");
+ byte[] RDFData = iso_8859_1.GetBytes(output.ToString());
+ File.WriteAllBytes(Directory.GetCurrentDirectory() + @"\data\" + name + @"\" + section + ".rdf", iso_8859_1.GetBytes(RDFManager.EncodeXML(iso_8859_1.GetString(RDFData))));
+ }
+ else File.WriteAllText(Directory.GetCurrentDirectory() + @"\data\" + name + @"\" + section + ".xml", output.ToString()); //saves
+ LogManager.LogFile($"[Save] [Success] {name}/{section}");
+ }
+
+ ///
+ /// Deletes a specified file. Only used for UG thumbnails.
+ ///
+ public static void DeleteFile(string path)
+ {
+ LogManager.LogFile($"[Delete] {path}");
+ File.Delete(Directory.GetCurrentDirectory() + @"\" + path);
+ }
+
+ ///
+ /// Saves a Base64 encoded JPEG file to a specified location.
+ ///
+ /// The AS3 ID that is requesting the save.
+ /// The Base64 encoded JPEG data.
+ /// The location to save the JPEG.
+ public static void SaveJPEG(string idfrom, string str, string name)
+ {
+ var bytes = Convert.FromBase64String(str);
+ Directory.CreateDirectory(Path.GetDirectoryName(Directory.GetCurrentDirectory() + @"\" + name));
+ using (var jpegToSave = new FileStream(Directory.GetCurrentDirectory() + @"\" + name, FileMode.Create))
+ {
+ jpegToSave.Write(bytes, 0, bytes.Length);
+ jpegToSave.Flush();
+ }
+ Globals.AS3Container.CallFunction(@"save_jpeg0");
+ }
+
+ ///
+ /// Creates a user account in older versions by adding the user's entry in users.rdf.
+ ///
+ public static void CreateUser(string hinta, string hintq, string savepassword, string password, string name)
+ {
+ LogManager.LogFile("[Load] File Requested - system/users");
+ LoadFile("users", "system");
+ string userString = UserData.OuterXml;
+ string data2send = userString.Replace("", "") + @"";
+ if (!Directory.Exists(Directory.GetCurrentDirectory() + @"\data\" + "system"))
+ {
+ Directory.CreateDirectory(Directory.GetCurrentDirectory() + @"\data\" + "system");
+ }
+ if (Settings.Default.RDF == true)
+ {
+ Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1");
+ byte[] RDFData = iso_8859_1.GetBytes(data2send.ToString());
+ File.WriteAllBytes(Directory.GetCurrentDirectory() + @"\data\" + "system" + @"\" + "users" + ".rdf", iso_8859_1.GetBytes(RDFManager.EncodeXML(iso_8859_1.GetString(RDFData))));
+ }
+ else File.WriteAllText(Directory.GetCurrentDirectory() + @"\data\" + "system" + @"\" + "users" + ".xml", data2send.ToString());
+ LogManager.LogFile("[UserAdd] [Success] " + name);
+ }
+ }
+}
diff --git a/OpenFK/OFK.Net/HttpManager.cs b/OpenFK/OFK.Net/HttpManager.cs
new file mode 100644
index 0000000..68f86d1
--- /dev/null
+++ b/OpenFK/OFK.Net/HttpManager.cs
@@ -0,0 +1,149 @@
+using OpenFK.OFK.Common;
+using System.IO;
+using System.Net;
+using System.Text;
+using System.Xml;
+
+namespace OpenFK.OFK.Net
+{
+ static class HttpManager
+ {
+ // ===================================
+ // HTTP Manager
+ // Handles anything to do with Galaxy and HTTP.
+ // ===================================
+
+ ///
+ /// The hostname for the Galaxy server.
+ ///
+ public static string GXHost;
+
+ ///
+ /// The hostname for the UGC (Funkey Tools) server.
+ ///
+ public static string UGHost;
+
+ ///
+ /// The address to the remote game files. Used for updates.
+ ///
+ public static string FileStore;
+
+ ///
+ /// The address to the trunk files. Used for Funkey Trunk updates.
+ ///
+ public static string TrunkStore;
+
+ ///
+ /// Sends a NetCommand to the Galaxy/UG server via POST.
+ ///
+ ///
+ /// A string containing the server's response command that will be sent back to Flash.
+ ///
+ public static string HTTPPost(string info, string uri)
+ {
+ LogManager.LogNetwork($"{uri} {info}", "POST");
+
+ var request = (HttpWebRequest)WebRequest.Create(uri);
+ var data = Encoding.ASCII.GetBytes(info);
+ request.Method = "POST";
+ request.ContentType = "application/xml";
+ request.ContentLength = data.Length;
+ using (var stream = request.GetRequestStream())
+ {
+ stream.Write(data, 0, data.Length);
+ }
+ var response = (HttpWebResponse)request.GetResponse();
+ var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
+
+ string tnurl = "";
+
+ //TODO - Simplify these get_CATEGORY thumbnail requests as they are all the same.
+ if (responseString.Contains("
+ /// Retrieves a plain text file from an external server.
+ ///
+ ///
+ /// A string containing the file's contents.
+ ///
+ public static string HTTPGet(string uri)
+ {
+ LogManager.LogNetwork(uri, "GET");
+
+ ServicePointManager.Expect100Continue = true;
+ ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
+ HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
+ request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
+
+ using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
+ using (Stream stream = response.GetResponseStream())
+ using (StreamReader reader = new StreamReader(stream))
+ {
+ return reader.ReadToEnd();
+ }
+ }
+ }
+}
diff --git a/OpenFK/OFK.Net/RichPresenceManager.cs b/OpenFK/OFK.Net/RichPresenceManager.cs
new file mode 100644
index 0000000..11bd992
--- /dev/null
+++ b/OpenFK/OFK.Net/RichPresenceManager.cs
@@ -0,0 +1,58 @@
+using DiscordRPC;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Xml;
+
+namespace OpenFK.OFK.Net
+{
+ static class RichPresenceManager
+ {
+ // ===================================
+ // Rich Presence Manager
+ // Handles Discord Rich Presence.
+ // ===================================
+
+ public static DiscordRpcClient Client;
+ public static XmlDocument BittyData;
+ public static string CurrentBitty;
+ public static string CurrentBittyName;
+ public static string CurrentWorld;
+ public static string CurrentActivity;
+
+ public static void InitRPC()
+ {
+ Client = new DiscordRpcClient("506150783893504001");
+ Client.Initialize();
+ SetRP("Main Menu", "At the main menu", "fffffff0", "U.B.");
+ }
+
+ public static void SetRP(string title, string info, string bittyID, string bittyName)
+ {
+ CurrentWorld = title;
+ CurrentActivity = info;
+ CurrentBitty = bittyID;
+ CurrentBittyName = bittyName;
+ Client.SetPresence(new RichPresence()
+ {
+ Details = info,
+ State = title,
+ Assets = new Assets()
+ {
+ LargeImageKey = bittyID,
+ LargeImageText = bittyName
+ }
+ });
+ }
+
+ public static void ChangeLocation(string location)
+ {
+ if (Properties.Settings.Default.RPC)
+ {
+ SetRP("Exploring", location, CurrentBitty, CurrentBittyName);
+ }
+ }
+ }
+}
diff --git a/OpenFK/OFK.Net/UpdateManager.cs b/OpenFK/OFK.Net/UpdateManager.cs
new file mode 100644
index 0000000..ab2523f
--- /dev/null
+++ b/OpenFK/OFK.Net/UpdateManager.cs
@@ -0,0 +1,184 @@
+using OpenFK.OFK.Common;
+using System;
+using System.Diagnostics;
+using System.IO;
+using System.Net;
+using System.Xml.Linq;
+
+namespace OpenFK.OFK.Net
+{
+ static class UpdateManager
+ {
+ // ===================================
+ // Update Manager
+ // Handles OpenFK and FSGUI updates.
+ // ===================================
+ static XDocument UpdateStore;
+ static XDocument FSUpdateStore;
+
+ ///
+ /// Checks a remote XML store to find an update for OpenFK and FunkeySelectorGUI.
+ ///
+ public static void CheckUpdate()
+ {
+ //OpenFK version
+ string localVerNum = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
+ localVerNum = localVerNum.Substring(0, localVerNum.LastIndexOf("."));
+ string localVersion = $"OpenFK v{localVerNum}";
+
+ //FSGUI version - Checks the new and old name, favors the new one.
+ bool isFSGUIHere = false;
+ string fslocalVerNum = "";
+ string fslocalVersion = "";
+ if (File.Exists(Directory.GetCurrentDirectory() + @"\FunkeySelectorGUI.exe"))
+ {
+ isFSGUIHere = true;
+ fslocalVerNum = FileVersionInfo.GetVersionInfo(Directory.GetCurrentDirectory() + @"\FunkeySelectorGUI.exe").FileVersion;
+ fslocalVerNum = localVerNum.Substring(0, localVerNum.LastIndexOf("."));
+ }
+ else if (File.Exists(Directory.GetCurrentDirectory() + @"\FunkeySelector.exe"))
+ {
+ isFSGUIHere = true;
+ fslocalVerNum = FileVersionInfo.GetVersionInfo(Directory.GetCurrentDirectory() + @"\FunkeySelector.exe").FileVersion;
+ fslocalVerNum = localVerNum.Substring(0, localVerNum.LastIndexOf("."));
+ }
+
+ if (isFSGUIHere)
+ {
+ fslocalVersion = $"FunkeySelectorGUI v{fslocalVerNum}";
+ }
+
+ LogManager.LogNetwork("[Update] Update Requested", "NetCommand");
+ Globals.GameForm.SetVar(@"");
+
+ Globals.GameForm.SetVar(@"");
+ try
+ {
+ LogManager.LogNetwork("[Update] Downloading Update.xml from GitHub", "NetCommand");
+ UpdateStore = XDocument.Parse(HttpManager.HTTPGet(@"https://raw.githubusercontent.com/GittyMac/OpenFK/master/update.xml"));
+ LogManager.LogNetwork("[Update] Update.xml was downloaded", "NetCommand");
+ string netVersion = UpdateStore.Root.Attribute("name").Value;
+ string netVersionNum = UpdateStore.Root.Attribute("version").Value;
+ string netVersionSize = UpdateStore.Root.Attribute("size").Value;
+ Globals.GameForm.SetVar(@"");
+ if (localVerNum != netVersionNum)
+ {
+ LogManager.LogNetwork("[Update] An update is needed", "NetCommand");
+ UpdateStore.Save(Directory.GetCurrentDirectory() + @"\update.xml");
+ Globals.GameForm.SetVar(@"");
+ }
+ else if (isFSGUIHere)
+ {
+ Globals.GameForm.SetVar(@"");
+ try
+ {
+ LogManager.LogNetwork("[Update] Downloading FSGUI Update.xml from GitHub", "NetCommand");
+ FSUpdateStore = XDocument.Parse(HttpManager.HTTPGet(@"https://raw.githubusercontent.com/GittyMac/FunkeySelectorGUI/master/update.xml"));
+ LogManager.LogNetwork("[Update] FSGUI Update.xml was downloaded", "NetCommand");
+ string fsnetVersion = FSUpdateStore.Root.Attribute("name").Value;
+ string fsnetVersionNum = FSUpdateStore.Root.Attribute("version").Value;
+ string fsnetVersionSize = FSUpdateStore.Root.Attribute("size").Value;
+ Globals.GameForm.SetVar(@"");
+ if (fslocalVerNum != fsnetVersionNum)
+ {
+ try
+ {
+ Process process = Process.GetProcessesByName("FunkeySelectorGUI")[0];
+ process.Kill();
+ }
+ catch
+ {
+ LogManager.LogNetwork("[Update] Cannot close FSGUI", "NetCommand");
+ }
+ LogManager.LogNetwork("[Update] A FSGUI update is needed", "NetCommand");
+ Globals.GameForm.SetVar(@"");
+ }
+ else
+ {
+ Globals.GameForm.SetVar(@"");
+ }
+ }
+ catch
+ {
+ LogManager.LogNetwork("[Update] [Error] Failed to check FSGUI update.", "NetCommand");
+ Globals.GameForm.SetVar(@"");
+ }
+ }
+ else
+ {
+ Globals.GameForm.SetVar(@"");
+ }
+ }
+ catch
+ {
+ LogManager.LogNetwork("[Update] [Error] Failed to check OpenFK update.", "NetCommand");
+ Globals.GameForm.SetVar(@"");
+ }
+ }
+
+ ///
+ /// Downloads the newly found update.
+ ///
+ public static void LoadUpdate()
+ {
+ try
+ {
+ if (FSUpdateStore != null)
+ {
+ string fsnetDL = FSUpdateStore.Root.Attribute("url").Value;
+ using (var client = new WebClient())
+ {
+ ServicePointManager.Expect100Continue = true;
+ ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
+ client.DownloadFile(fsnetDL, Directory.GetCurrentDirectory() + @"\FunkeySelectorGUI.exe");
+ }
+ Globals.GameForm.SetVar(@"");
+ LogManager.LogNetwork("[Update] Updated FSGUI successfuly.", "NetCommand");
+ }
+ else
+ {
+ string netDL = "";
+ if (Environment.Is64BitProcess)
+ {
+ netDL = UpdateStore.Root.Attribute("url64").Value;
+ }
+ else
+ {
+ netDL = UpdateStore.Root.Attribute("url32").Value;
+ }
+
+ using (var client = new WebClient())
+ {
+ ServicePointManager.Expect100Continue = true;
+ ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
+ client.DownloadFile(netDL, Directory.GetCurrentDirectory() + @"\tmpdl.zip");
+ }
+ UpdateStore.Save(Directory.GetCurrentDirectory() + @"\update.xml");
+ Directory.CreateDirectory(Path.GetDirectoryName(Directory.GetCurrentDirectory() + @"\tmpdl\"));
+ System.IO.Compression.ZipFile.ExtractToDirectory(Directory.GetCurrentDirectory() + @"\tmpdl.zip", Directory.GetCurrentDirectory() + @"\tmpdl\");
+ Globals.GameForm.SetVar(@"");
+ LogManager.LogNetwork("[Update] OpenFK update loaded successfuly.", "NetCommand");
+ Globals.WasUpdated = true;
+ }
+ }
+ catch
+ {
+ LogManager.LogNetwork("[Update] [Error] Failed to download update.", "NetCommand");
+ Globals.GameForm.SetVar(@"");
+ }
+ }
+
+ ///
+ /// Copies tmpdl during the /update stage of OpenFK.
+ ///
+ public static void InstallUpdate()
+ {
+ foreach (var file in Directory.GetFiles(Directory.GetCurrentDirectory()))
+ File.Copy(file, Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory()).ToString(), Path.GetFileName(file)), true);
+ ProcessStartInfo updateRestart = new ProcessStartInfo(Directory.GetParent(Directory.GetCurrentDirectory()) + @"\OpenFK.exe");
+ updateRestart.WorkingDirectory = Directory.GetParent(Directory.GetCurrentDirectory()).ToString();
+ updateRestart.UseShellExecute = false;
+ Process.Start(updateRestart);
+ }
+ }
+}
diff --git a/OpenFK/OpenFK.csproj b/OpenFK/OpenFK.csproj
index 6717e89..ae16888 100644
--- a/OpenFK/OpenFK.csproj
+++ b/OpenFK/OpenFK.csproj
@@ -90,11 +90,11 @@
..\packages\Costura.Fody.4.1.0\lib\net40\Costura.dll
-
- ..\packages\DiscordRichPresence.1.0.150\lib\net35\DiscordRPC.dll
+
+ ..\packages\DiscordRichPresence.1.2.1.24\lib\net45\DiscordRPC.dll
-
- ..\packages\Newtonsoft.Json.12.0.2\lib\net40\Newtonsoft.Json.dll
+
+ ..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll
@@ -117,33 +117,40 @@
ConfigForm.cs
-
+
Form
-
- DebugWindow.cs
+
+ DebugForm.cs
Component
-
+
Form
-
- Form1.cs
+
+ GameForm.cs
+
+
+
+
+
+
+
-
+
ConfigForm.cs
-
- DebugWindow.cs
+
+ DebugForm.cs
-
- Form1.cs
+
+ GameForm.cs
ResXFileCodeGenerator
@@ -196,13 +203,14 @@
+
-
This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
-
+
+
\ No newline at end of file
diff --git a/OpenFK/Program.cs b/OpenFK/Program.cs
index e03b6f6..0d0c2ea 100644
--- a/OpenFK/Program.cs
+++ b/OpenFK/Program.cs
@@ -1,9 +1,10 @@
-using System;
-using System.Collections.Generic;
+using OpenFK.OFK.Net;
+using System;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Security.Cryptography;
+using System.Threading;
using System.Windows.Forms;
namespace OpenFK
@@ -18,17 +19,30 @@ namespace OpenFK
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
- if (File.Exists(Directory.GetCurrentDirectory() + @"\update.bat"))
+
+ if (args.Contains("/update"))
{
- File.Delete(Directory.GetCurrentDirectory() + @"\update.bat");
+ Thread.Sleep(500);
+ UpdateManager.InstallUpdate();
+ return;
}
+ else if (Directory.Exists(Directory.GetCurrentDirectory() + @"\tmpdl"))
+ {
+ Thread.Sleep(500);
+ Directory.Delete(Directory.GetCurrentDirectory() + @"\tmpdl", true);
+ if (File.Exists(Directory.GetCurrentDirectory() + @"\tmpdl.zip"))
+ {
+ File.Delete(Directory.GetCurrentDirectory() + @"\tmpdl.zip");
+ }
+ }
+
if (args.Contains("/config"))
{
Application.Run(new ConfigForm());
}
else if (File.Exists(Directory.GetCurrentDirectory() + @"\Flash.ocx"))
{
- if(CalculateMD5(Directory.GetCurrentDirectory() + @"\Flash.ocx") == "0c8fbd12f40dcd5a1975b671f9989900" ||
+ if (CalculateMD5(Directory.GetCurrentDirectory() + @"\Flash.ocx") == "0c8fbd12f40dcd5a1975b671f9989900" ||
CalculateMD5(Directory.GetCurrentDirectory() + @"\Flash.ocx") == "28642aa6626e42701677a1f3822306b0")
{
if (MessageBox.Show("The current Flash.ocx is a buggy version! It causes several problems in the game. Do you want to fetch a compatible OCX?", "OpenFK", MessageBoxButtons.YesNo, MessageBoxIcon.Error) == DialogResult.Yes)
@@ -45,7 +59,7 @@ namespace OpenFK
{
try
{
- Application.Run(new Form1(args));
+ Application.Run(new GameForm(args));
}
catch
{
@@ -57,14 +71,16 @@ namespace OpenFK
{
try
{
- Application.Run(new Form1(args));
+ Application.Run(new GameForm(args));
}
catch
{
+ throw;
MessageBox.Show("There was an error starting the game! This could happen because of a 64 bit OCX running on a 32 bit OpenFK.", "OpenFK", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
- }else if (MessageBox.Show("Flash.ocx is not found! Do you want to fetch a compatible OCX?", "OpenFK", MessageBoxButtons.YesNo, MessageBoxIcon.Error) == DialogResult.Yes)
+ }
+ else if (MessageBox.Show("Flash.ocx is not found! Do you want to fetch a compatible OCX?", "OpenFK", MessageBoxButtons.YesNo, MessageBoxIcon.Error) == DialogResult.Yes)
{
File.WriteAllText(Directory.GetCurrentDirectory() + @"\FetchOCX.bat", Properties.Resources.FetchOCX);
ProcessStartInfo fetchocx = new ProcessStartInfo(Directory.GetCurrentDirectory() + @"\FetchOCX.bat");
@@ -80,7 +96,7 @@ namespace OpenFK
{
using (var md5 = MD5.Create())
{
- using (var stream = File.OpenRead(filename))
+ using (var stream = File.OpenRead(filename))
{
var hash = md5.ComputeHash(stream); //Computes the MD5 hash of the swf.
return BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant(); //Converts the hash to a readable string to compare.
diff --git a/OpenFK/Properties/AssemblyInfo.cs b/OpenFK/Properties/AssemblyInfo.cs
index 9c5b72d..87a3f7c 100644
--- a/OpenFK/Properties/AssemblyInfo.cs
+++ b/OpenFK/Properties/AssemblyInfo.cs
@@ -6,11 +6,11 @@ using System.Runtime.InteropServices;
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("OpenFK")]
-[assembly: AssemblyDescription("")]
+[assembly: AssemblyDescription("An open source replacement for the U.B. Funkeys executable.")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("GittyMac")]
+[assembly: AssemblyCompany("Lako")]
[assembly: AssemblyProduct("OpenFK")]
-[assembly: AssemblyCopyright("Copyright © GittyMac 2023")]
+[assembly: AssemblyCopyright("Copyright © Lako 2024")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
diff --git a/OpenFK/RDFTool.cs b/OpenFK/RDFTool.cs
deleted file mode 100644
index 8d7b18f..0000000
--- a/OpenFK/RDFTool.cs
+++ /dev/null
@@ -1,109 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace OpenFK
-{
- class RDFTool
- {
- private static char[] code = new char[] { (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x34, (char)0x35, (char)0x36, (char)0x37, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xDC, (char)0xDD, (char)0xDE, (char)0xDF, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF };
-
- ///
- /// the column to roll
- ///
- private static char[][] col = new char[][]
- {
- new char[] {(char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x34, (char)0x35, (char)0x36, (char)0x37, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xDC, (char)0xDD, (char)0xDE, (char)0xDF, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB},
- new char[] {(char)0x32, (char)0x33, (char)0x30, (char)0x31, (char)0x36, (char)0x37, (char)0x34, (char)0x35, (char)0x3A, (char)0x3B, (char)0x38, (char)0x39, (char)0x3E, (char)0x3F, (char)0x3C, (char)0x3D, (char)0x22, (char)0x23, (char)0x20, (char)0x21, (char)0x26, (char)0x27, (char)0x24, (char)0x25, (char)0x2A, (char)0x2B, (char)0x28, (char)0x29, (char)0x2E, (char)0x2F, (char)0x2C, (char)0x2D, (char)0x12, (char)0x13, (char)0x10, (char)0x11, (char)0x16, (char)0x17, (char)0x14, (char)0x15, (char)0x1A, (char)0x1B, (char)0x18, (char)0x19, (char)0x1E, (char)0x1F, (char)0x1C, (char)0x1D, (char)0x02, (char)0x03, (char)0x00, (char)0x01, (char)0x06, (char)0x07, (char)0x04, (char)0x05, (char)0x0A, (char)0x0B, (char)0x08, (char)0x09, (char)0x0E, (char)0x0F, (char)0x0C, (char)0x0D, (char)0x72, (char)0x73, (char)0x70, (char)0x71, (char)0x76, (char)0x77, (char)0x74, (char)0x75, (char)0x7A, (char)0x7B, (char)0x78, (char)0x79, (char)0x7E, (char)0x7F, (char)0x7C, (char)0x7D, (char)0x62, (char)0x63, (char)0x60, (char)0x61, (char)0x66, (char)0x67, (char)0x64, (char)0x65, (char)0x6A, (char)0x6B, (char)0x68, (char)0x69, (char)0x6E, (char)0x6F, (char)0x6C, (char)0x6D, (char)0x52, (char)0x53, (char)0x50, (char)0x51, (char)0x56, (char)0x57, (char)0x54, (char)0x55, (char)0x5A, (char)0x5B, (char)0x58, (char)0x59, (char)0x5E, (char)0x5F, (char)0x5C, (char)0x5D, (char)0x42, (char)0x43, (char)0x40, (char)0x41, (char)0x46, (char)0x47, (char)0x44, (char)0x45, (char)0x4A, (char)0x4B, (char)0x48, (char)0x49, (char)0x4E, (char)0x4F, (char)0x4C, (char)0x4D, (char)0xF2, (char)0xF3, (char)0xF0, (char)0xF1, (char)0xF6, (char)0xF7, (char)0xF4, (char)0xF5, (char)0xFA, (char)0xFB, (char)0xF8, (char)0xF9, (char)0xFE, (char)0xFF, (char)0xFC, (char)0xFD, (char)0xE2, (char)0xE3, (char)0xE0, (char)0xE1, (char)0xE6, (char)0xE7, (char)0xE4, (char)0xE5, (char)0xEA, (char)0xEB, (char)0xE8, (char)0xE9, (char)0xEE, (char)0xEF, (char)0xEC, (char)0xED, (char)0xD2, (char)0xD3, (char)0xD0, (char)0xD1, (char)0xD6, (char)0xD7, (char)0xD4, (char)0xD5, (char)0xDA, (char)0xDB, (char)0xD8, (char)0xD9, (char)0xDE, (char)0xDF, (char)0xDC, (char)0xDD, (char)0xC2, (char)0xC3, (char)0xC0, (char)0xC1, (char)0xC6, (char)0xC7, (char)0xC4, (char)0xC5, (char)0xCA, (char)0xCB, (char)0xC8, (char)0xC9, (char)0xCE, (char)0xCF, (char)0xCC, (char)0xCD, (char)0xB2, (char)0xB3, (char)0xB0, (char)0xB1, (char)0xB6, (char)0xB7, (char)0xB4, (char)0xB5, (char)0xBA, (char)0xBB, (char)0xB8, (char)0xB9, (char)0xBE, (char)0xBF, (char)0xBC, (char)0xBD, (char)0xA2, (char)0xA3, (char)0xA0, (char)0xA1, (char)0xA6, (char)0xA7, (char)0xA4, (char)0xA5, (char)0xAA, (char)0xAB, (char)0xA8, (char)0xA9, (char)0xAE, (char)0xAF, (char)0xAC, (char)0xAD, (char)0x92, (char)0x93, (char)0x90, (char)0x91, (char)0x96, (char)0x97, (char)0x94, (char)0x95, (char)0x9A, (char)0x9B, (char)0x98, (char)0x99, (char)0x9E, (char)0x9F, (char)0x9C, (char)0x9D, (char)0x82, (char)0x83, (char)0x80, (char)0x81, (char)0x86, (char)0x87, (char)0x84, (char)0x85, (char)0x8A, (char)0x8B, (char)0x88, (char)0x89, (char)0x8E, (char)0x8F, (char)0x8C, (char)0x8D},
- new char[] {(char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x34, (char)0x35, (char)0x36, (char)0x37, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xDC, (char)0xDE, (char)0xDF, (char)0xDF, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3},
- new char[] {(char)0xE5, (char)0xE4, (char)0xE7, (char)0xE6, (char)0xE1, (char)0xE0, (char)0xE3, (char)0xE2, (char)0xED, (char)0xEC, (char)0xEF, (char)0xEE, (char)0xE9, (char)0xE8, (char)0xEB, (char)0xEA, (char)0xF5, (char)0xF4, (char)0xF7, (char)0xF6, (char)0xF1, (char)0xF0, (char)0xF3, (char)0xF2, (char)0xFD, (char)0xFC, (char)0xFF, (char)0xFE, (char)0xF9, (char)0xF8, (char)0xFB, (char)0xFA, (char)0xC5, (char)0xC4, (char)0xC7, (char)0xC6, (char)0xC1, (char)0xC0, (char)0xC3, (char)0xC2, (char)0xCD, (char)0xCC, (char)0xCF, (char)0xCE, (char)0xC9, (char)0xC8, (char)0xCB, (char)0xCA, (char)0xD5, (char)0xD4, (char)0xD7, (char)0xD6, (char)0xD1, (char)0xD0, (char)0xD3, (char)0xD2, (char)0xDD, (char)0xDC, (char)0xDF, (char)0xDE, (char)0xD9, (char)0xD8, (char)0xDB, (char)0xDA, (char)0xA5, (char)0xA4, (char)0xA7, (char)0xA6, (char)0xA1, (char)0xA0, (char)0xA3, (char)0xA2, (char)0xAD, (char)0xAC, (char)0xAF, (char)0xAE, (char)0xA9, (char)0xA8, (char)0xAB, (char)0xAA, (char)0xB5, (char)0xB4, (char)0xB7, (char)0xB6, (char)0xB1, (char)0xB0, (char)0xB3, (char)0xB2, (char)0xBD, (char)0xBC, (char)0xBF, (char)0xBE, (char)0xB9, (char)0xB8, (char)0xBB, (char)0xBA, (char)0x85, (char)0x84, (char)0x87, (char)0x86, (char)0x81, (char)0x80, (char)0x83, (char)0x82, (char)0x8D, (char)0x8C, (char)0x8F, (char)0x8E, (char)0x89, (char)0x88, (char)0x8B, (char)0x8A, (char)0x95, (char)0x94, (char)0x97, (char)0x96, (char)0x91, (char)0x90, (char)0x93, (char)0x92, (char)0x9D, (char)0x9C, (char)0x9F, (char)0x9E, (char)0x99, (char)0x98, (char)0x9B, (char)0x9A, (char)0x25, (char)0x24, (char)0x27, (char)0x26, (char)0x21, (char)0x20, (char)0x23, (char)0x22, (char)0x2D, (char)0x2C, (char)0x2F, (char)0x2E, (char)0x29, (char)0x28, (char)0x2B, (char)0x2A, (char)0x35, (char)0x34, (char)0x37, (char)0x36, (char)0x31, (char)0x30, (char)0x33, (char)0x32, (char)0x3D, (char)0x3C, (char)0x3F, (char)0x3E, (char)0x39, (char)0x38, (char)0x3B, (char)0x3A, (char)0x05, (char)0x04, (char)0x07, (char)0x06, (char)0x01, (char)0x00, (char)0x03, (char)0x02, (char)0x0D, (char)0x0C, (char)0x0F, (char)0x0E, (char)0x09, (char)0x08, (char)0x0B, (char)0x0A, (char)0x15, (char)0x14, (char)0x17, (char)0x16, (char)0x11, (char)0x10, (char)0x13, (char)0x12, (char)0x1D, (char)0x1C, (char)0x1F, (char)0x1E, (char)0x19, (char)0x18, (char)0x1B, (char)0x1A, (char)0x65, (char)0x64, (char)0x67, (char)0x66, (char)0x61, (char)0x60, (char)0x63, (char)0x62, (char)0x6D, (char)0x6C, (char)0x6F, (char)0x6E, (char)0x69, (char)0x68, (char)0x6B, (char)0x6A, (char)0x75, (char)0x74, (char)0x77, (char)0x76, (char)0x71, (char)0x70, (char)0x73, (char)0x72, (char)0x7D, (char)0x7C, (char)0x7F, (char)0x7E, (char)0x79, (char)0x78, (char)0x7B, (char)0x7A, (char)0x45, (char)0x44, (char)0x47, (char)0x46, (char)0x41, (char)0x40, (char)0x43, (char)0x42, (char)0x4D, (char)0x4C, (char)0x4F, (char)0x4E, (char)0x49, (char)0x48, (char)0x4B, (char)0x4A, (char)0x55, (char)0x54, (char)0x57, (char)0x56, (char)0x51, (char)0x50, (char)0x53, (char)0x52, (char)0x5D, (char)0x5C, (char)0x5F, (char)0x5E, (char)0x59, (char)0x58, (char)0x5B, (char)0x5A},
- new char[] {(char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xDC, (char)0xDD, (char)0xDE, (char)0xDF, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x34, (char)0x35, (char)0x36, (char)0x37},
- new char[] {(char)0x79, (char)0x78, (char)0x7B, (char)0x7A, (char)0x7D, (char)0x7C, (char)0x7F, (char)0x7E, (char)0x71, (char)0x70, (char)0x73, (char)0x72, (char)0x75, (char)0x74, (char)0x77, (char)0x76, (char)0x69, (char)0x68, (char)0x6B, (char)0x6A, (char)0x6D, (char)0x6C, (char)0x6F, (char)0x6E, (char)0x61, (char)0x60, (char)0x63, (char)0x62, (char)0x65, (char)0x64, (char)0x67, (char)0x66, (char)0x59, (char)0x58, (char)0x5B, (char)0x5A, (char)0x5D, (char)0x5C, (char)0x5F, (char)0x5E, (char)0x51, (char)0x50, (char)0x53, (char)0x52, (char)0x55, (char)0x54, (char)0x57, (char)0x56, (char)0x49, (char)0x48, (char)0x4B, (char)0x4A, (char)0x4D, (char)0x4C, (char)0x4F, (char)0x4E, (char)0x41, (char)0x40, (char)0x43, (char)0x42, (char)0x45, (char)0x44, (char)0x47, (char)0x46, (char)0x39, (char)0x38, (char)0x3B, (char)0x3A, (char)0x3D, (char)0x3C, (char)0x3F, (char)0x3E, (char)0x31, (char)0x30, (char)0x33, (char)0x32, (char)0x35, (char)0x34, (char)0x37, (char)0x36, (char)0x29, (char)0x28, (char)0x2B, (char)0x2A, (char)0x2D, (char)0x2C, (char)0x2F, (char)0x2E, (char)0x21, (char)0x20, (char)0x23, (char)0x22, (char)0x25, (char)0x24, (char)0x27, (char)0x26, (char)0x19, (char)0x18, (char)0x1B, (char)0x1A, (char)0x1D, (char)0x1C, (char)0x1F, (char)0x1E, (char)0x11, (char)0x10, (char)0x13, (char)0x12, (char)0x15, (char)0x14, (char)0x17, (char)0x16, (char)0x09, (char)0x08, (char)0x0B, (char)0x0A, (char)0x0D, (char)0x0C, (char)0x0F, (char)0x0E, (char)0x01, (char)0x00, (char)0x03, (char)0x02, (char)0x05, (char)0x04, (char)0x07, (char)0x06, (char)0xB9, (char)0xB8, (char)0xBB, (char)0xBA, (char)0xBD, (char)0xBC, (char)0xBF, (char)0xBE, (char)0xB1, (char)0xB0, (char)0xB3, (char)0xB2, (char)0xB5, (char)0xB4, (char)0xB7, (char)0xB6, (char)0xA9, (char)0xA8, (char)0xAB, (char)0xAA, (char)0xAD, (char)0xAC, (char)0xAF, (char)0xAE, (char)0xA1, (char)0xA0, (char)0xA3, (char)0xA2, (char)0xA5, (char)0xA4, (char)0xA7, (char)0xA6, (char)0x99, (char)0x98, (char)0x9B, (char)0x9A, (char)0x9D, (char)0x9C, (char)0x9F, (char)0x9E, (char)0x91, (char)0x90, (char)0x93, (char)0x92, (char)0x95, (char)0x94, (char)0x97, (char)0x96, (char)0x89, (char)0x88, (char)0x8B, (char)0x8A, (char)0x8D, (char)0x8C, (char)0x8F, (char)0x8E, (char)0x81, (char)0x80, (char)0x83, (char)0x82, (char)0x85, (char)0x84, (char)0x87, (char)0x86, (char)0xF9, (char)0xF8, (char)0xFB, (char)0xFA, (char)0xFD, (char)0xFC, (char)0xFF, (char)0xFE, (char)0xF1, (char)0xF0, (char)0xF3, (char)0xF2, (char)0xF5, (char)0xF4, (char)0xF7, (char)0xF6, (char)0xE9, (char)0xE8, (char)0xEB, (char)0xEA, (char)0xED, (char)0xEC, (char)0xEF, (char)0xEE, (char)0xE1, (char)0xE0, (char)0xE3, (char)0xE2, (char)0xE5, (char)0xE4, (char)0xE7, (char)0xE6, (char)0xD9, (char)0xD8, (char)0xDB, (char)0xDA, (char)0xDD, (char)0xDC, (char)0xDF, (char)0xDE, (char)0xD1, (char)0xD0, (char)0xD3, (char)0xD2, (char)0xD5, (char)0xD4, (char)0xD7, (char)0xD6, (char)0xC9, (char)0xC8, (char)0xCB, (char)0xCA, (char)0xCD, (char)0xCC, (char)0xCF, (char)0xCE, (char)0xC1, (char)0xC0, (char)0xC3, (char)0xC2, (char)0xC5, (char)0xC4, (char)0xC7, (char)0xC6},
- new char[] {(char)0x7F, (char)0x7E, (char)0x7D, (char)0x7C, (char)0x7B, (char)0x7A, (char)0x79, (char)0x78, (char)0x77, (char)0x76, (char)0x75, (char)0x74, (char)0x73, (char)0x72, (char)0x71, (char)0x70, (char)0x6F, (char)0x6E, (char)0x6D, (char)0x6C, (char)0x6B, (char)0x6A, (char)0x69, (char)0x68, (char)0x67, (char)0x66, (char)0x65, (char)0x64, (char)0x63, (char)0x62, (char)0x61, (char)0x60, (char)0x5F, (char)0x5E, (char)0x5D, (char)0x5C, (char)0x5B, (char)0x5A, (char)0x59, (char)0x58, (char)0x57, (char)0x56, (char)0x55, (char)0x54, (char)0x53, (char)0x52, (char)0x51, (char)0x50, (char)0x4F, (char)0x4E, (char)0x4D, (char)0x4C, (char)0x4B, (char)0x4A, (char)0x49, (char)0x48, (char)0x47, (char)0x46, (char)0x45, (char)0x44, (char)0x43, (char)0x42, (char)0x41, (char)0x40, (char)0x3F, (char)0x3E, (char)0x3D, (char)0x3C, (char)0x3B, (char)0x3A, (char)0x39, (char)0x38, (char)0x37, (char)0x36, (char)0x35, (char)0x34, (char)0x33, (char)0x32, (char)0x31, (char)0x30, (char)0x2F, (char)0x2E, (char)0x2D, (char)0x2C, (char)0x2B, (char)0x2A, (char)0x29, (char)0x28, (char)0x27, (char)0x26, (char)0x25, (char)0x24, (char)0x23, (char)0x22, (char)0x21, (char)0x20, (char)0x1F, (char)0x1E, (char)0x1D, (char)0x1C, (char)0x1B, (char)0x1A, (char)0x19, (char)0x18, (char)0x17, (char)0x16, (char)0x15, (char)0x14, (char)0x13, (char)0x12, (char)0x11, (char)0x10, (char)0x0F, (char)0x0E, (char)0x0D, (char)0x0C, (char)0x0B, (char)0x0A, (char)0x09, (char)0x08, (char)0x07, (char)0x06, (char)0x05, (char)0x04, (char)0x03, (char)0x02, (char)0x01, (char)0x00, (char)0xBF, (char)0xBE, (char)0xBD, (char)0xBC, (char)0xBB, (char)0xBA, (char)0xB9, (char)0xB8, (char)0xB7, (char)0xB6, (char)0xB5, (char)0xB4, (char)0xB3, (char)0xB2, (char)0xB1, (char)0xB0, (char)0xAF, (char)0xAE, (char)0xAD, (char)0xAC, (char)0xAB, (char)0xAA, (char)0xA9, (char)0xA8, (char)0xA7, (char)0xA6, (char)0xA5, (char)0xA4, (char)0xA3, (char)0xA2, (char)0xA1, (char)0xA0, (char)0x9F, (char)0x9E, (char)0x9D, (char)0x9C, (char)0x9B, (char)0x9A, (char)0x99, (char)0x98, (char)0x97, (char)0x96, (char)0x95, (char)0x94, (char)0x93, (char)0x92, (char)0x91, (char)0x90, (char)0x8F, (char)0x8E, (char)0x8D, (char)0x8C, (char)0x8B, (char)0x8A, (char)0x89, (char)0x88, (char)0x87, (char)0x86, (char)0x85, (char)0x84, (char)0x83, (char)0x82, (char)0x81, (char)0x80, (char)0xFF, (char)0xFE, (char)0xFD, (char)0xFC, (char)0xFB, (char)0xFA, (char)0xF9, (char)0xF8, (char)0xF7, (char)0xF6, (char)0xF5, (char)0xF4, (char)0xF3, (char)0xF2, (char)0xF1, (char)0xF0, (char)0xEF, (char)0xEE, (char)0xED, (char)0xEC, (char)0xEB, (char)0xEA, (char)0xE9, (char)0xE8, (char)0xE7, (char)0xE6, (char)0xE5, (char)0xE4, (char)0xE3, (char)0xE2, (char)0xE1, (char)0xE0, (char)0xDF, (char)0xDE, (char)0xDD, (char)0xDC, (char)0xDB, (char)0xDA, (char)0xD9, (char)0xD8, (char)0xD7, (char)0xD6, (char)0xD5, (char)0xD4, (char)0xD3, (char)0xD2, (char)0xD1, (char)0xD0, (char)0xCF, (char)0xCE, (char)0xCD, (char)0xCC, (char)0xCB, (char)0xCA, (char)0xC9, (char)0xC8, (char)0xC7, (char)0xC6, (char)0xC5, (char)0xC4, (char)0xC3, (char)0xC2, (char)0xC1, (char)0xC0},
- new char[] {(char)0x95, (char)0x94, (char)0x97, (char)0x96, (char)0x91, (char)0x90, (char)0x93, (char)0x92, (char)0x9D, (char)0x9C, (char)0x9F, (char)0x9E, (char)0x99, (char)0x98, (char)0x9B, (char)0x9A, (char)0x85, (char)0x84, (char)0x87, (char)0x86, (char)0x81, (char)0x80, (char)0x83, (char)0x82, (char)0x8D, (char)0x8C, (char)0x8F, (char)0x8E, (char)0x89, (char)0x88, (char)0x8B, (char)0x8A, (char)0xB5, (char)0xB4, (char)0xB7, (char)0xB6, (char)0xB1, (char)0xB0, (char)0xB3, (char)0xB2, (char)0xBD, (char)0xBC, (char)0xBF, (char)0xBE, (char)0xB9, (char)0xB8, (char)0xBB, (char)0xBA, (char)0xA5, (char)0xA4, (char)0xA7, (char)0xA6, (char)0xA1, (char)0xA0, (char)0xA3, (char)0xA2, (char)0xAD, (char)0xAC, (char)0xAF, (char)0xAE, (char)0xA9, (char)0xA8, (char)0xAB, (char)0xAA, (char)0xD5, (char)0xD4, (char)0xD7, (char)0xD6, (char)0xD1, (char)0xD0, (char)0xD3, (char)0xD2, (char)0xDD, (char)0xDC, (char)0xDF, (char)0xDE, (char)0xD9, (char)0xD8, (char)0xDB, (char)0xDA, (char)0xC5, (char)0xC4, (char)0xC7, (char)0xC6, (char)0xC1, (char)0xC0, (char)0xC3, (char)0xC2, (char)0xCD, (char)0xCC, (char)0xCF, (char)0xCE, (char)0xC9, (char)0xC8, (char)0xCB, (char)0xCA, (char)0xF5, (char)0xF4, (char)0xF7, (char)0xF6, (char)0xF1, (char)0xF0, (char)0xF3, (char)0xF2, (char)0xFD, (char)0xFC, (char)0xFF, (char)0xFE, (char)0xF9, (char)0xF8, (char)0xFB, (char)0xFA, (char)0xE5, (char)0xE4, (char)0xE7, (char)0xE6, (char)0xE1, (char)0xE0, (char)0xE3, (char)0xE2, (char)0xED, (char)0xEC, (char)0xEF, (char)0xEE, (char)0xE9, (char)0xE8, (char)0xEB, (char)0xEA, (char)0x55, (char)0x54, (char)0x57, (char)0x56, (char)0x51, (char)0x50, (char)0x53, (char)0x52, (char)0x5D, (char)0x5C, (char)0x5F, (char)0x5E, (char)0x59, (char)0x58, (char)0x5B, (char)0x5A, (char)0x45, (char)0x44, (char)0x47, (char)0x46, (char)0x41, (char)0x40, (char)0x43, (char)0x42, (char)0x4D, (char)0x4C, (char)0x4F, (char)0x4E, (char)0x49, (char)0x48, (char)0x4B, (char)0x4A, (char)0x75, (char)0x74, (char)0x77, (char)0x76, (char)0x71, (char)0x70, (char)0x73, (char)0x72, (char)0x7D, (char)0x7C, (char)0x7F, (char)0x7E, (char)0x79, (char)0x78, (char)0x7B, (char)0x7A, (char)0x65, (char)0x64, (char)0x67, (char)0x66, (char)0x61, (char)0x60, (char)0x63, (char)0x62, (char)0x6D, (char)0x6C, (char)0x6F, (char)0x6E, (char)0x69, (char)0x68, (char)0x6B, (char)0x6A, (char)0x15, (char)0x14, (char)0x17, (char)0x16, (char)0x11, (char)0x10, (char)0x13, (char)0x12, (char)0x1D, (char)0x1C, (char)0x1F, (char)0x1E, (char)0x19, (char)0x18, (char)0x1B, (char)0x1A, (char)0x05, (char)0x04, (char)0x07, (char)0x06, (char)0x01, (char)0x00, (char)0x03, (char)0x02, (char)0x0D, (char)0x0C, (char)0x0F, (char)0x0E, (char)0x09, (char)0x08, (char)0x0B, (char)0x0A, (char)0x35, (char)0x34, (char)0x37, (char)0x36, (char)0x31, (char)0x30, (char)0x33, (char)0x32, (char)0x3D, (char)0x3C, (char)0x3F, (char)0x3E, (char)0x39, (char)0x38, (char)0x3B, (char)0x3A, (char)0x25, (char)0x24, (char)0x27, (char)0x26, (char)0x21, (char)0x20, (char)0x23, (char)0x22, (char)0x2D, (char)0x2C, (char)0x2F, (char)0x2E, (char)0x29, (char)0x28, (char)0x2B, (char)0x2A}
- };
-
- ///
- /// the endings for each column
- ///
- private static char[][] end = new char[][]
- {
- new char[] {(char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x8B},
- new char[] {(char)0x32, (char)0x6C, (char)0xE5, (char)0x8C},
- new char[] {(char)0x6C, (char)0xE5, (char)0x8D},
- new char[] {(char)0xE5, (char)0x8E},
- new char[] {(char)0x8F},
- new char[] {(char)0x79, (char)0x7F, (char)0x95, (char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x88},
- new char[] {(char)0x7F, (char)0x95, (char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x88},
- new char[] {(char)0x95, (char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x88}
- };
-
- ///
- /// the start of each column
- ///
- private static char[] start = new char[] { (char)0xFF, (char)0x00, (char)0xFF, (char)0xAC, (char)0xEB, (char)0x96, (char)0xC4, (char)0x2A };
-
- public static string decode(string encoded)
- {
- int currentCol = 0;
- char[] arr = encoded.ToCharArray();
- char[] ret = new char[arr.Length];
- int pos = 0;
- int endchar = 0;
- foreach (char character in arr)
- {
- for (int i = 0; i < 256; i++)
- {
- if (col[currentCol][i] == character)
- {
- ret[pos++] = code[i];
- if (code[i] == (char)0x3E)
- {
- endchar = pos;
- }
- break;
- }
- }
- currentCol++;
- if (currentCol > 7)
- {
- currentCol = 0;
- }
- }
-
- return new string(ret).Substring(start.Length, endchar - start.Length);
-
- }
-
- public static string encode(string decoded)
- {
- Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1");
- int currentCol = 0;
- char[] arr = decoded.ToCharArray();
- char[] ret = new char[arr.Length];
- int pos = 0;
- foreach (char character in arr)
- {
- for (int i = 0; i < 256; i++)
- {
- if (code[i] == character)
- {
- ret[pos++] = col[currentCol][i];
- break;
- }
- }
- currentCol++;
- if (currentCol > 7)
- {
- currentCol = 0;
- }
- }
- return new string(iso_8859_1.GetChars(iso_8859_1.GetBytes(new string(start) + new string(ret) + new string(end[currentCol]))));
- }
-
-
- }
-
-}