diff --git a/GUI/AboutForm.Designer.cs b/GUI/AboutForm.Designer.cs
new file mode 100644
index 0000000..1d881c9
--- /dev/null
+++ b/GUI/AboutForm.Designer.cs
@@ -0,0 +1,133 @@
+namespace RosTEGUI
+{
+ partial class AboutForm
+ {
+ ///
+ /// 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(AboutForm));
+ this.buttonClose = new System.Windows.Forms.Button();
+ this.tabControl = new System.Windows.Forms.TabControl();
+ this.tabPage1 = new System.Windows.Forms.TabPage();
+ this.textBoxLicense = new System.Windows.Forms.TextBox();
+ this.tabPage2 = new System.Windows.Forms.TabPage();
+ this.textBoxCredits = new System.Windows.Forms.TextBox();
+ this.tabControl.SuspendLayout();
+ this.tabPage1.SuspendLayout();
+ this.tabPage2.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // buttonClose
+ //
+ this.buttonClose.Location = new System.Drawing.Point(109, 263);
+ this.buttonClose.Name = "buttonClose";
+ this.buttonClose.Size = new System.Drawing.Size(75, 23);
+ this.buttonClose.TabIndex = 1;
+ this.buttonClose.Text = "Close";
+ this.buttonClose.UseVisualStyleBackColor = true;
+ this.buttonClose.Click += new System.EventHandler(this.button1_Click);
+ //
+ // tabControl
+ //
+ this.tabControl.Controls.Add(this.tabPage1);
+ this.tabControl.Controls.Add(this.tabPage2);
+ this.tabControl.Location = new System.Drawing.Point(12, 12);
+ this.tabControl.Name = "tabControl";
+ this.tabControl.SelectedIndex = 0;
+ this.tabControl.Size = new System.Drawing.Size(287, 245);
+ this.tabControl.TabIndex = 2;
+ //
+ // tabPage1
+ //
+ this.tabPage1.Controls.Add(this.textBoxLicense);
+ this.tabPage1.Location = new System.Drawing.Point(4, 22);
+ this.tabPage1.Name = "tabPage1";
+ this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
+ this.tabPage1.Size = new System.Drawing.Size(279, 219);
+ this.tabPage1.TabIndex = 0;
+ this.tabPage1.Text = "License";
+ this.tabPage1.UseVisualStyleBackColor = true;
+ //
+ // textBoxLicense
+ //
+ this.textBoxLicense.Location = new System.Drawing.Point(6, 6);
+ this.textBoxLicense.Multiline = true;
+ this.textBoxLicense.Name = "textBoxLicense";
+ this.textBoxLicense.ReadOnly = true;
+ this.textBoxLicense.Size = new System.Drawing.Size(267, 207);
+ this.textBoxLicense.TabIndex = 0;
+ this.textBoxLicense.Text = resources.GetString("textBoxLicense.Text");
+ //
+ // tabPage2
+ //
+ this.tabPage2.Controls.Add(this.textBoxCredits);
+ this.tabPage2.Location = new System.Drawing.Point(4, 22);
+ this.tabPage2.Name = "tabPage2";
+ this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
+ this.tabPage2.Size = new System.Drawing.Size(279, 219);
+ this.tabPage2.TabIndex = 1;
+ this.tabPage2.Text = "Credits";
+ this.tabPage2.UseVisualStyleBackColor = true;
+ //
+ // textBoxCredits
+ //
+ this.textBoxCredits.Location = new System.Drawing.Point(6, 6);
+ this.textBoxCredits.Multiline = true;
+ this.textBoxCredits.Name = "textBoxCredits";
+ this.textBoxCredits.ReadOnly = true;
+ this.textBoxCredits.Size = new System.Drawing.Size(267, 207);
+ this.textBoxCredits.TabIndex = 0;
+ this.textBoxCredits.Text = "ReactOS Test Environment was brought to you by:\r\n\r\n - Ged Murphy [gedmurphy@react" +
+ "os.org]";
+ //
+ // AboutForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(311, 298);
+ this.Controls.Add(this.tabControl);
+ this.Controls.Add(this.buttonClose);
+ this.Name = "AboutForm";
+ this.Text = "About";
+ this.tabControl.ResumeLayout(false);
+ this.tabPage1.ResumeLayout(false);
+ this.tabPage1.PerformLayout();
+ this.tabPage2.ResumeLayout(false);
+ this.tabPage2.PerformLayout();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Button buttonClose;
+ private System.Windows.Forms.TabControl tabControl;
+ private System.Windows.Forms.TabPage tabPage1;
+ private System.Windows.Forms.TabPage tabPage2;
+ private System.Windows.Forms.TextBox textBoxLicense;
+ private System.Windows.Forms.TextBox textBoxCredits;
+ }
+}
\ No newline at end of file
diff --git a/GUI/AboutForm.cs b/GUI/AboutForm.cs
new file mode 100644
index 0000000..78cfe9e
--- /dev/null
+++ b/GUI/AboutForm.cs
@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+
+namespace RosTEGUI
+{
+ public partial class AboutForm : Form
+ {
+ public AboutForm()
+ {
+ InitializeComponent();
+ }
+
+ private void button1_Click(object sender, EventArgs e)
+ {
+ Close();
+ }
+ }
+}
\ No newline at end of file
diff --git a/GUI/AboutForm.resx b/GUI/AboutForm.resx
new file mode 100644
index 0000000..24a4f22
--- /dev/null
+++ b/GUI/AboutForm.resx
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+
\ No newline at end of file
diff --git a/GUI/AssemblyInfo.cs b/GUI/AssemblyInfo.cs
new file mode 100644
index 0000000..f8ac514
--- /dev/null
+++ b/GUI/AssemblyInfo.cs
@@ -0,0 +1,58 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+//
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+//
+[assembly: AssemblyTitle("ReactOS Test Environment")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("ReactOS")]
+[assembly: AssemblyProduct("")]
+[assembly: AssemblyCopyright("see about dialog")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+//
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+
+[assembly: AssemblyVersion("1.0.*")]
+
+//
+// In order to sign your assembly you must specify a key to use. Refer to the
+// Microsoft .NET Framework documentation for more information on assembly signing.
+//
+// Use the attributes below to control which key is used for signing.
+//
+// Notes:
+// (*) If no key is specified, the assembly is not signed.
+// (*) KeyName refers to a key that has been installed in the Crypto Service
+// Provider (CSP) on your machine. KeyFile refers to a file which contains
+// a key.
+// (*) If the KeyFile and the KeyName values are both specified, the
+// following processing occurs:
+// (1) If the KeyName can be found in the CSP, that key is used.
+// (2) If the KeyName does not exist and the KeyFile does exist, the key
+// in the KeyFile is installed into the CSP and used.
+// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
+// When specifying the KeyFile, the location of the KeyFile should be
+// relative to the project output directory which is
+// %Project Directory%\obj\. For example, if your KeyFile is
+// located in the project directory, you would specify the AssemblyKeyFile
+// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
+// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
+// documentation for more information on this.
+//
+[assembly: AssemblyDelaySign(false)]
+[assembly: AssemblyKeyFile("")]
+[assembly: AssemblyKeyName("")]
diff --git a/GUI/MainForm.Designer.cs b/GUI/MainForm.Designer.cs
new file mode 100644
index 0000000..683a84a
--- /dev/null
+++ b/GUI/MainForm.Designer.cs
@@ -0,0 +1,318 @@
+namespace RosTEGUI
+{
+ partial class MainForm
+ {
+ ///
+ /// Clean up any resources being used.
+ ///
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing)
+ {
+ if (components != null)
+ {
+ components.Dispose();
+ }
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.components = new System.ComponentModel.Container();
+ System.Windows.Forms.ListViewItem listViewItem2 = new System.Windows.Forms.ListViewItem("ReactOS", 0);
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
+ this.ImageListView = new System.Windows.Forms.ListView();
+ this.columnName = new System.Windows.Forms.ColumnHeader();
+ this.columnMemory = new System.Windows.Forms.ColumnHeader();
+ this.columnHardDisk = new System.Windows.Forms.ColumnHeader();
+ this.columnCdrom = new System.Windows.Forms.ColumnHeader();
+ this.columnNetwork = new System.Windows.Forms.ColumnHeader();
+ this.columnAudio = new System.Windows.Forms.ColumnHeader();
+ this.columnDebug = new System.Windows.Forms.ColumnHeader();
+ this.mainImageList = new System.Windows.Forms.ImageList(this.components);
+ this.saveFileDialog = new System.Windows.Forms.SaveFileDialog();
+ this.openFile = new System.Windows.Forms.OpenFileDialog();
+ this.toolbarLaunch = new System.Windows.Forms.ToolStripButton();
+ this.toolbarStop = new System.Windows.Forms.ToolStripButton();
+ this.toolbarSep1 = new System.Windows.Forms.ToolStripSeparator();
+ this.toolbarImageAdd = new System.Windows.Forms.ToolStripButton();
+ this.toolbarImageDel = new System.Windows.Forms.ToolStripButton();
+ this.toolbarSep2 = new System.Windows.Forms.ToolStripSeparator();
+ this.toolbarHelpContents = new System.Windows.Forms.ToolStripButton();
+ this.toolbarSep3 = new System.Windows.Forms.ToolStripSeparator();
+ this.toolbarExit = new System.Windows.Forms.ToolStripButton();
+ this.mainToolbar = new System.Windows.Forms.ToolStrip();
+ this.MainMenu = new System.Windows.Forms.MenuStrip();
+ this.mainmenuFile = new System.Windows.Forms.ToolStripMenuItem();
+ this.mainmenuFileExit = new System.Windows.Forms.ToolStripMenuItem();
+ this.mainmenuHelp = new System.Windows.Forms.ToolStripMenuItem();
+ this.mainmenuHelpContent = new System.Windows.Forms.ToolStripMenuItem();
+ this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
+ this.MainMenuHelpAbout = new System.Windows.Forms.ToolStripMenuItem();
+ this.mainToolbar.SuspendLayout();
+ this.MainMenu.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // ImageListView
+ //
+ this.ImageListView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
+ this.columnName,
+ this.columnMemory,
+ this.columnHardDisk,
+ this.columnCdrom,
+ this.columnNetwork,
+ this.columnAudio,
+ this.columnDebug});
+ this.ImageListView.FullRowSelect = true;
+ this.ImageListView.Items.AddRange(new System.Windows.Forms.ListViewItem[] {
+ listViewItem2});
+ this.ImageListView.Location = new System.Drawing.Point(12, 52);
+ this.ImageListView.Name = "ImageListView";
+ this.ImageListView.Size = new System.Drawing.Size(516, 237);
+ this.ImageListView.SmallImageList = this.mainImageList;
+ this.ImageListView.TabIndex = 9;
+ this.ImageListView.UseCompatibleStateImageBehavior = false;
+ this.ImageListView.View = System.Windows.Forms.View.Details;
+ //
+ // columnName
+ //
+ this.columnName.Tag = "";
+ this.columnName.Text = "Name";
+ this.columnName.Width = 130;
+ //
+ // columnMemory
+ //
+ this.columnMemory.Text = "Memory";
+ this.columnMemory.Width = 55;
+ //
+ // columnHardDisk
+ //
+ this.columnHardDisk.Text = "Hard Disk";
+ this.columnHardDisk.Width = 65;
+ //
+ // columnCdrom
+ //
+ this.columnCdrom.Text = "CD-ROM";
+ //
+ // columnNetwork
+ //
+ this.columnNetwork.Text = "Network";
+ //
+ // columnAudio
+ //
+ this.columnAudio.Text = "Audio";
+ //
+ // columnDebug
+ //
+ this.columnDebug.Text = "Debug";
+ //
+ // mainImageList
+ //
+ this.mainImageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("mainImageList.ImageStream")));
+ this.mainImageList.TransparentColor = System.Drawing.Color.Transparent;
+ this.mainImageList.Images.SetKeyName(0, "images.png");
+ //
+ // openFile
+ //
+ this.openFile.Title = "Path to VDK";
+ this.openFile.ValidateNames = false;
+ //
+ // toolbarLaunch
+ //
+ this.toolbarLaunch.Image = ((System.Drawing.Image)(resources.GetObject("toolbarLaunch.Image")));
+ this.toolbarLaunch.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.toolbarLaunch.Name = "toolbarLaunch";
+ this.toolbarLaunch.Size = new System.Drawing.Size(61, 22);
+ this.toolbarLaunch.Text = "Launch";
+ //
+ // toolbarStop
+ //
+ this.toolbarStop.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+ this.toolbarStop.Image = ((System.Drawing.Image)(resources.GetObject("toolbarStop.Image")));
+ this.toolbarStop.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.toolbarStop.Name = "toolbarStop";
+ this.toolbarStop.Size = new System.Drawing.Size(23, 22);
+ //
+ // toolbarSep1
+ //
+ this.toolbarSep1.Name = "toolbarSep1";
+ this.toolbarSep1.Size = new System.Drawing.Size(6, 25);
+ //
+ // toolbarImageAdd
+ //
+ this.toolbarImageAdd.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+ this.toolbarImageAdd.Image = ((System.Drawing.Image)(resources.GetObject("toolbarImageAdd.Image")));
+ this.toolbarImageAdd.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.toolbarImageAdd.Name = "toolbarImageAdd";
+ this.toolbarImageAdd.Size = new System.Drawing.Size(23, 22);
+ //
+ // toolbarImageDel
+ //
+ this.toolbarImageDel.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+ this.toolbarImageDel.Image = ((System.Drawing.Image)(resources.GetObject("toolbarImageDel.Image")));
+ this.toolbarImageDel.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.toolbarImageDel.Name = "toolbarImageDel";
+ this.toolbarImageDel.Size = new System.Drawing.Size(23, 22);
+ //
+ // toolbarSep2
+ //
+ this.toolbarSep2.Name = "toolbarSep2";
+ this.toolbarSep2.Size = new System.Drawing.Size(6, 25);
+ //
+ // toolbarHelpContents
+ //
+ this.toolbarHelpContents.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+ this.toolbarHelpContents.Image = ((System.Drawing.Image)(resources.GetObject("toolbarHelpContents.Image")));
+ this.toolbarHelpContents.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.toolbarHelpContents.Name = "toolbarHelpContents";
+ this.toolbarHelpContents.Size = new System.Drawing.Size(23, 22);
+ //
+ // toolbarSep3
+ //
+ this.toolbarSep3.Name = "toolbarSep3";
+ this.toolbarSep3.Size = new System.Drawing.Size(6, 25);
+ //
+ // toolbarExit
+ //
+ this.toolbarExit.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
+ this.toolbarExit.Image = ((System.Drawing.Image)(resources.GetObject("toolbarExit.Image")));
+ this.toolbarExit.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.toolbarExit.Name = "toolbarExit";
+ this.toolbarExit.Size = new System.Drawing.Size(23, 22);
+ //
+ // mainToolbar
+ //
+ this.mainToolbar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.toolbarLaunch,
+ this.toolbarStop,
+ this.toolbarSep1,
+ this.toolbarImageAdd,
+ this.toolbarImageDel,
+ this.toolbarSep2,
+ this.toolbarHelpContents,
+ this.toolbarSep3,
+ this.toolbarExit});
+ this.mainToolbar.Location = new System.Drawing.Point(0, 24);
+ this.mainToolbar.Name = "mainToolbar";
+ this.mainToolbar.Size = new System.Drawing.Size(540, 25);
+ this.mainToolbar.TabIndex = 10;
+ //
+ // MainMenu
+ //
+ this.MainMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.mainmenuFile,
+ this.mainmenuHelp});
+ this.MainMenu.Location = new System.Drawing.Point(0, 0);
+ this.MainMenu.Name = "MainMenu";
+ this.MainMenu.Size = new System.Drawing.Size(540, 24);
+ this.MainMenu.TabIndex = 11;
+ //
+ // mainmenuFile
+ //
+ this.mainmenuFile.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.mainmenuFileExit});
+ this.mainmenuFile.Name = "mainmenuFile";
+ this.mainmenuFile.Size = new System.Drawing.Size(35, 20);
+ this.mainmenuFile.Text = "File";
+ //
+ // mainmenuFileExit
+ //
+ this.mainmenuFileExit.Name = "mainmenuFileExit";
+ this.mainmenuFileExit.Size = new System.Drawing.Size(152, 22);
+ this.mainmenuFileExit.Text = "Exit";
+ this.mainmenuFileExit.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
+ //
+ // mainmenuHelp
+ //
+ this.mainmenuHelp.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.mainmenuHelpContent,
+ this.toolStripSeparator1,
+ this.MainMenuHelpAbout});
+ this.mainmenuHelp.Name = "mainmenuHelp";
+ this.mainmenuHelp.Size = new System.Drawing.Size(40, 20);
+ this.mainmenuHelp.Text = "Help";
+ //
+ // mainmenuHelpContent
+ //
+ this.mainmenuHelpContent.Name = "mainmenuHelpContent";
+ this.mainmenuHelpContent.Size = new System.Drawing.Size(152, 22);
+ this.mainmenuHelpContent.Text = "Content";
+ //
+ // toolStripSeparator1
+ //
+ this.toolStripSeparator1.Name = "toolStripSeparator1";
+ this.toolStripSeparator1.Size = new System.Drawing.Size(149, 6);
+ //
+ // MainMenuHelpAbout
+ //
+ this.MainMenuHelpAbout.Name = "MainMenuHelpAbout";
+ this.MainMenuHelpAbout.Size = new System.Drawing.Size(152, 22);
+ this.MainMenuHelpAbout.Text = "About";
+ this.MainMenuHelpAbout.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click);
+ //
+ // MainForm
+ //
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.AutoValidate = System.Windows.Forms.AutoValidate.EnableAllowFocusChange;
+ this.ClientSize = new System.Drawing.Size(540, 301);
+ this.Controls.Add(this.ImageListView);
+ this.Controls.Add(this.mainToolbar);
+ this.Controls.Add(this.MainMenu);
+ this.DoubleBuffered = true;
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.ImeMode = System.Windows.Forms.ImeMode.On;
+ this.MainMenuStrip = this.MainMenu;
+ this.MaximizeBox = false;
+ this.Name = "MainForm";
+ this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+ this.Text = "ReactOS Test Environment";
+ this.mainToolbar.ResumeLayout(false);
+ this.mainToolbar.PerformLayout();
+ this.MainMenu.ResumeLayout(false);
+ this.MainMenu.PerformLayout();
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+ #endregion
+
+ private System.Windows.Forms.ListView ImageListView;
+ private System.Windows.Forms.ColumnHeader columnName;
+ private System.Windows.Forms.ColumnHeader columnMemory;
+ private System.Windows.Forms.ColumnHeader columnHardDisk;
+ private System.Windows.Forms.ColumnHeader columnCdrom;
+ private System.Windows.Forms.ColumnHeader columnNetwork;
+ private System.Windows.Forms.ColumnHeader columnAudio;
+ private System.Windows.Forms.ColumnHeader columnDebug;
+ private System.Windows.Forms.ImageList mainImageList;
+ private System.ComponentModel.IContainer components;
+ private System.Windows.Forms.SaveFileDialog saveFileDialog;
+ private System.Windows.Forms.OpenFileDialog openFile;
+ private System.Windows.Forms.ToolStripButton toolbarLaunch;
+ private System.Windows.Forms.ToolStripButton toolbarStop;
+ private System.Windows.Forms.ToolStripSeparator toolbarSep1;
+ private System.Windows.Forms.ToolStripButton toolbarImageAdd;
+ private System.Windows.Forms.ToolStripButton toolbarImageDel;
+ private System.Windows.Forms.ToolStripSeparator toolbarSep2;
+ private System.Windows.Forms.ToolStripButton toolbarHelpContents;
+ private System.Windows.Forms.ToolStripSeparator toolbarSep3;
+ private System.Windows.Forms.ToolStripButton toolbarExit;
+ private System.Windows.Forms.ToolStrip mainToolbar;
+ private System.Windows.Forms.MenuStrip MainMenu;
+ private System.Windows.Forms.ToolStripMenuItem mainmenuFile;
+ private System.Windows.Forms.ToolStripMenuItem mainmenuFileExit;
+ private System.Windows.Forms.ToolStripMenuItem mainmenuHelp;
+ private System.Windows.Forms.ToolStripMenuItem mainmenuHelpContent;
+ private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
+ private System.Windows.Forms.ToolStripMenuItem MainMenuHelpAbout;
+
+ }
+}
diff --git a/GUI/MainForm.cs b/GUI/MainForm.cs
new file mode 100644
index 0000000..0060fea
--- /dev/null
+++ b/GUI/MainForm.cs
@@ -0,0 +1,33 @@
+using System;
+using System.Drawing;
+using System.Collections;
+using System.Windows.Forms;
+using System.Threading;
+using System.Diagnostics;
+using System.IO;
+using System.Xml.Serialization;
+using Microsoft.Win32;
+
+
+namespace RosTEGUI
+{
+ public partial class MainForm : Form
+ {
+ public MainForm()
+ {
+ InitializeComponent();
+ }
+
+ private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ AboutForm Dlg = new AboutForm();
+ Dlg.StartPosition = FormStartPosition.CenterParent;
+ Dlg.Show();
+ }
+
+ private void exitToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ Close();
+ }
+ }
+}
diff --git a/GUI/MainForm.resx b/GUI/MainForm.resx
new file mode 100644
index 0000000..31e8e65
--- /dev/null
+++ b/GUI/MainForm.resx
@@ -0,0 +1,671 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
+ 477, 20
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
+ LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
+ ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC+
+ BwAAAk1TRnQBSQFMAwEBAAEEAQABBAEAARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
+ AUADAAEQAwABAQEAAQgGAAEEGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA
+ AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA
+ AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm
+ AwABmQMAAcwCAAEzAwACMwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZ
+ AgABZgHMAgABZgH/AgABmQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFm
+ AgABzAGZAgACzAIAAcwB/wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEz
+ AQABmQEAATMBAAHMAQABMwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFm
+ AgABMwFmATMBAAEzAmYBAAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFm
+ AQABMwKZAQABMwGZAcwBAAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEA
+ ATMBzAH/AQABMwH/ATMBAAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFm
+ AQABZgEAAWYBAAGZAQABZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFm
+ ATMBzAEAAWYBMwH/AQACZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFm
+ AQABZgKZAQABZgGZAcwBAAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEA
+ AWYB/wIAAWYB/wEzAQABZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZ
+ AQABmQEAAZkBAAHMAQABmQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEz
+ AQABmQEzAWYBAAGZAWYBmQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/
+ AQABmQHMAgABmQHMATMBAAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEA
+ AZkBzAFmAQABmQH/AZkBAAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHM
+ AQABzAEAAZkBMwIAAcwCMwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFm
+ ATMBAAGZAmYBAAHMAWYBmQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZ
+ AQABzAGZAcwBAAHMAZkB/wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/
+ ATMBAAGZAf8BZgEAAcwB/wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHM
+ ATMCAAH/AjMBAAH/ATMBZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJm
+ AQAB/wFmAZkBAAH/AWYBzAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHM
+ AQAB/wGZAf8BAAH/AcwCAAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEA
+ AcwB/wFmAQAC/wGZAQAC/wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEA
+ ASEBAAGlAQADXwEAA3cBAAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7
+ Af8BAAGkAqABAAOAAwAB/wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA/8DAAzsAqEyAAHsAf8B8wfw
+ Af8B7DQAAacB7AO8AvAC8QHwAewBpzUAAa4BtQKSA/cB7wEHAa4zABDsMAAB7A7zAewwAAHsAfMM8AHz
+ AewwAAHsAfMMiwHzAewwAAHsAfMBiwS0BpEBiwHzAewwAAHsAfMBiwS1ArQDkQGuAYsB8wHsMAAB7AHz
+ AYsHuwG1ArQBiwHzAewwAAHsAfMBiwq7AYsB8wHsMAAB7AHzDIsB8wHsMAAB7A7zAewwAAGuDuwBrnAA
+ AUIBTQE+BwABPgMAASgDAAFAAwABEAMAAQEBAAEBBQABgBcAA/8BAAHABwABwAEDBgABwAEDBgAB4AEH
+ XgAC/wYACw==
+
+
+
+ 17, 17
+
+
+ 139, 17
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAJ9JREFUOE9jYMAE
+ CkAhYyziRAtphoYH/6fEELABlBgCNuDY8aNkGwI3gFxD4AbMmDWNLJfADZgzb9b/dRvWkGwI3IDlK5f+
+ 371n1//DRw79P3f+LDhMgCCNUHzCDdi8ZdP/o8eO/L9w8TzRmkGGww3YvmPb/+s3rpGkGcUAWCwQ42xk
+ b6GkA1I1w11AbIBhC1A9SjSDDBQhx9mEohanPABUgJ+u4+tVbwAAAABJRU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAMFJREFUOE9jZGBg
+ UARifiAGAVYg/g3EXED8H4gZoTRUGkyxAPETIL4PEzQKDQ/+Tyr+//9/GswAE5Dmu/fuEI1B6rEasHzl
+ 0v9Lli3Ci0EW4TRg6fLF/7ds3YwXYzMAHAYgiZWrl//ff2AfXozXgHUb1vw/eeoEXkwTAwxgXti5a8f/
+ y1cu4cXYXEA9A/bu2/P/6rUreDE2F+jAvHDw0IH/N25ex4uxGaBLaUoEG0AqRk7KgiAOqfjfv3+2yFmU
+ bDYA/WNdEjN3bP4AAAAASUVORK5CYII=
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAP5JREFUOE9jYKAV
+ 8PDwYE9LS2Otr69nIscOxtDw4P/+gb5/gfQ/EDs+Pp6DJIPCInz/3L5z6/+u3Tv/h0WE/Pbx8eEiyQCQ
+ 7Xfu3v6/e8+u/wFBfr9CQ0N5CBoA8q+9vT0LUDEbyOkwAyKiwn5GR0fz4TUA5E8o/geyPTg08O/de3fA
+ LoiMDv+DJA9Wh2EYSPDO3VtAfPs/SCOIBuEDB/ej4IOHDuA2ABRoR44e/n/4yCG8GKcL0J155uzp/yAc
+ GOwPik6YF7G7AN1PIA1Xrl4G4/BIvz8kpwOQAddvXANjsg24fOXSfxAmywBgVP4Kjwz9DcIgNihvEExI
+ A6IAAEeU4GteB9UDAAAAAElFTkSuQmCC
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAEpJREFUOE9jYBgF
+ gygEQsOD/4dFhBCFQWoxnA4SvHP39v+79+7A6YOHDvxHx4cOH/yP14AjRw//P3zkEF6M0wCQBLF4EIX+
+ qFMYAMrCeub6SDuqAAAAAElFTkSuQmCC
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAuJJREFUOE99U11I
+ U2EYXllBF3VjW91JklGUmCnCxBIVR9Ml/RCYN4JKpghezFwQdCRdZi5N259DaZBTmlAX/hJWElNmiDdm
+ QYFkM+cPuvM3z87ZOXvbe8zIBR14ON/5zvs83/s+7/vtUcQ8lmtFOULquWLp4KFLEYV4DH/vVexbieOY
+ sf2fv7yo6R/wxHLkb4IgDjguqr39p09JnybeSyzLgCAIwPM8kGQAZt6MSX0nkySMwdhdIm63O86RkuJ/
+ Z7gjCn4/cNNeoCgSAoENGRQVgOCkB7bm5mCs8paIscj5I+K4kDkxVFMdFhYWgKqoADI7Gyj/T1mEpkmg
+ VpaBzMsDylAP3OwsvC4tDSNHFrBeL0rtSTwucvPzQJWWApWbCxvFxTB8WRd++KgphBi+UhQOlJcDXVgI
+ lF4P7NQk9CQkiParuvOKNmODxet+GWGHh4DMyoLNkhJwqZQRmzbfSnQQhxGO6Np1VBUJVFfLmTCjI+B5
+ NSCZHtyzKdrbTd83NtajRm0CveKHEZ1OsOdlP4112qrJefK2QCuy66ty7Eq0LOQqGo0NoWCQlc3CN6aM
+ p8YK4B7+47it38aSgFxZAFuGreK44H8FmluMIZ4PybFosCyAaaytrUbdpoFjaBi8XcnbtfmtsRnYNblt
+ o3p9iI9mQNMULC8vbZeARnhdvRLb3Q10VRWQ4+PQm5go2bUay46JtgKN2ZV0QmK+fQXa2ASM+Rl8sFkl
+ bIACW9GnVEZYgwFItRpYggBqchIG7xqETnNLCDFKEELwxyIEnU4gMzKALisDV3x8BEdAztSpzvB409Mh
+ WFcHZGYmMPX1gKmKYjgKEcICD0xnh0xmovMwlZwMyPlTJo7l87Nn1r1pacDU1gLTZZfrxCncBgWMxSyf
+ jGSM3TXKO5fJqVbP9KlUkY92q7i05JPdRvh8Ppi2msU+5ZEIxvxzmf523HzzRlZ74/0uk6l18bGpmUfg
+ Gvfwqsd25xc2LTFmPv5ltQAAAABJRU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAVxJREFUOE9jYKAF
+ 0DMx+08Mxmk3SPOjRw/+X7584f+BA3v/r127GswHibPzM/wX1mAAszEMWMLA8B+E0Q3Yvn0r3ABeGYb/
+ EsZ4DPjd1AQ25N69O2AXHDy47//OndvhBkjosv1XdGRDuABmK4wGGQAz5MKFsxgGKNlx/NfyZ0c1AKYJ
+ Rp8BugBmyN69u/8vWbII7gJtP97/+mG8mAaANKFjmCGVleX/o6OjwJqMIgX+W6TxoRrwXlPz/xagAegY
+ JA7yWk5OFtwFZtES/21yhDENACmGYZBBMM3ogWgZJ/nfvkAUdyDCDAHZfOXKRYxAtEoS/++YJ4mUDv4z
+ MDJAMUgTzGZQwoEZAGLDEpJ1qsR/l1I8BsAS0oMH98CaQLissgpso12K3H+3EuX/3nXy2FMiMGmyATEj
+ LCXCNDrnyf/3rlL671en+j+gTut/QL02TgPAyZuYjIQ1L5CTswFNRoUxygqSMgAAAABJRU5ErkJggg==
+
+
+
+ 358, 23
+
+
+ 602, 20
+
+
+
+ AAABAAkAEBAAAAEACABoBQAAlgAAACAgAAABAAgAqAgAAP4FAAAwMAAAAQAIAKgOAACmDgAAEBAAAAEA
+ BAAoAQAATh0AACAgAAABAAQA6AIAAHYeAAAwMAAAAQAEAGgGAABeIQAAEBAAAAEAIABoBAAAxicAACAg
+ AAABACAAqBAAAC4sAAAwMAAAAQAgAKglAADWPAAAKAAAABAAAAAgAAAAAQAIAAAAAAAAAQAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAB9VCkAflgyAH9/fwCBWS8AhF0yAIxkLACSaSwAiWMzAIFiPwCJYzgAnHY4AIRl
+ QgCKbUwAknBEAIxyVACSeFsAzqYuAM2mMgDVrTQAo4FFAKGATAC/nUcAuphMAKWGVwCojFYAs5hVAJeB
+ ZQCbh20Ar5pzAKSTfQC4n3gAuqZyANi2UADevl0Ay61hAMuuZQDHr2wA17pjANO5bADOuX4A1Lp5AN/A
+ YwDcwG0A4cRtAOTKewDly34Ap5aBAKudiQCtoY0AsaOPALKkkQC5rZcAt6+fALiwnwC9sqMAyLWAAMm3
+ hwDJupMAxrylAMG4qQDdyZMA4cmFAOfPiQDn0IoA5dGVAOrVmADOxK0A0MWlAODPpQDt26cA7d2tAOPW
+ sgDi2LoA7+K9APLnwwD06ckA9erMAPXs0gD379kA9/DbAPjw3AD69uoA+/juAH9WJQAVAAAAeAo4AAAA
+ OABAajgAmBeVAAAAAADgGZUA8Ij6d3A49Xf/////qET5d3B99Xc6ivV3lgAAAJYAAAAJAAAAsBiVAAAA
+ AADLRPl3WKoHAM2L9Xd4EwUAN5D1dwAAAAA+ivV3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAA
+ AAAAAAAAdgB4AADs/X8aAgAATBaVAGCqBwD8FZUA/////7QalQBFAAAAKAIAAP/////i2PV3fZv1d5S2
+ AQAAAAUA9BeVAIAAEMC0GpUA8Ij6d4gc9Xf/////N5D1dwAAAAA+ivV3m7Lnd7cAAAACAAAApBqVAAEA
+ AAAYAAAAAAAAABAZlQBCAAAAAAAAAPQYlQAAAAAAAAAAAAAAAAAMAAAAAgAAAAEB9XcA7P1/dgAAAAAA
+ AAADAAAAfgAaAmCqBwAAAAAAYKoHAAUAAAC+s+d3TBmVAKO053cUAQAAAAAAwAAAAAAAAAAAAgAAAIAA
+ AAAAAAAAjBqVAH/pSwCQYDgAAAAAwAAAAACAGpUAAgAAAIAAAAAAAAAAwCeVAMT1rwACAAAARDpcb3Nl
+ eHBlcnRzXHJlYWN0b3Ncc3Vic3lzXHN5c3RlbVxleHBsb3JlclxyZXNccmVhY3Rvcy4VAAAAqAAAAE87
+ 1HfgGZUAMzvUd2TF9Xep8ed3FAEAAAAAAAAAAAAAAAAAAAAalQBAajgAlgAAAAAAAADJ8ed3lgAAAKQa
+ lQAJAAAAAAAAAJYAAACWAAAACQAAAPQZlQAzO9R3tBqVAAlI6Xe4EOl3/////8nx53cW6ksAFAEAAEBq
+ OACWAAAAWBqVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAMx4QDDM5KDgAAAAAAAAAAAAxABoLCBYTEh0JAgkPAAAAACAiKiMFDgUHGQAzGwAAAAArLSkOBBUB
+ FxEALwAAAAAAPhgFIEE+JFQUOwAAAAAANAofSkpHQi4mBhAAAAAAMQxFTFFRS0ZALCEJEAAANxsARE5T
+ Uk1GQSwlAA0cADIwNTZJUE9LRj8nMi8eDAAAAAAAAENIRz06AAAANzwAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8AAP//AAD//wAAgH8AANABAADgCQAA4AsAAOAH
+ AADABwAAgAMAACAJAAAAAQAA+DkAAP//AAD//wAA//8AACgAAAAgAAAAQAAAAAEACAAAAAAAAAQAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAbT4QAG5AEgBxRBcAdEcaAHNHHABzSBwAeEwfAHZMIgB4TiUAeVAlAHxX
+ MAB9WDEAf39/AIVcKACAWzYAgF46AIdgLQCEYTcAhWE+AIhkPwCFZkUAiWZAAIxqQQCKbU4AjW5MAJFv
+ RwCYdkUAm3pCAJJwSQCffkgAiW9QAItxVACOdlkAjXhcAJBzVQCYelEAknhbAI99YgCUfGIAv5sxALyX
+ PADBmywAzqMhAM+mLADSpiIA1KorAMagNADLpDIA1a43ANexPwCegFQAn4NaAKKARQCmhEkArIxPALKR
+ TwCniVMAo4daAKyPXQC4nVMAuZ5XALyhUwCWgGcAnohjAJSGbQCYiG8AmolzAKeLZwCnk2UArZJlAK+a
+ YwC3nmsApZB2AKGRfQCnmn0AuJ5yAL2hYAC+oWUAvahwALKieQDBoUcAzalBAMKiTgDQrEQA1rJKANOw
+ TgDOrVMAwKNcANy6VQDWt1wA3bxaAN6+XgDMr2QA0LRlAN+/YgDTuW0A2r5tAMqvcADMsnQAzLZ3AMWy
+ fwDewGUA3MBsAN3CcQDgwWYA4cRrAOLGcQDjyHYA5Ml7AKWZhQComoUAqZ+MALCfigCsoY4Au66OALKm
+ lQCxqZcAtqiXALqukQC2rZwAua6YALyxmQC+tqcAwKqGAMayggDAsY4A0r2JAMW2kQDJvJwA0L6XAMe9
+ pwDAuaoAwbqtANrEhwDbxYsA2caSANrHmwDmz4gA59CMAOrVmADr2J4A0MOgANvMpQDXzKwAyMGxAOjW
+ oQDp2KUA7NqmAO7drQDk1bAA7+C0APDhtQDw4rgA7eHBAPPnxAD06McA9OrMAPbt1gD379gA+PHfAPn0
+ 5AD69uoA/PnxAG0+DwAQGZUAQgAAAAAAAAD0GJUAAAAAAAAAAAAAAAAADAAAAAIAAAABAfV3AOz9f3YA
+ AAAAAAAAAwAAAH4AGgJgqgcAAAAAAGCqBwAFAAAAvrPnd0wZlQCjtOd3FAEAAAAAAMAAAAAAAAAAAAIA
+ AACAAAAAAAAAAIwalQB/6UsAkGA4AAAAAMAAAAAAgBqVAAIAAACAAAAAAAAAAMAnlQDE9a8AAgAAAEQ6
+ XG9zZXhwZXJ0c1xyZWFjdG9zXHN1YnN5c1xzeXN0ZW1cZXhwbG9yZXJccmVzXHJlYWN0b3MuFQAAAKgA
+ AABPO9R34BmVADM71HdkxfV3qfHndxQBAAAAAAAAAAAAAAAAAAAAGpUAQGo4AJYAAAAAAAAAyfHnd5YA
+ AACkGpUACQAAAAAAAACWAAAAlgAAAAkAAAD0GZUAMzvUd7QalQAJSOl3uBDpd//////J8ed3FupLABQB
+ AABAajgAlgAAAFgalQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AHRxdnh4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGCAQCxAhJgAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAA/cAB7HwsIFUBRMCwsLCo8dgAAAAAAAHh4AAAAAAAAAEJDAAAAPzkOAxY4VDEuLi0rTwAmIiAW
+ EBMlQQAAAAAAAEJyAAA+VVc3CAUbWDIxMVM1EgoDAQgQGAknAAAAAAAAAG5yZVlbW1teHgUGNEgWA6QH
+ EUl4eABuCycAAAAAAAAAAEVaX2lqampnRgsDDxgPNSkvUAAAbhAYhAAAAAAAAAAAXWprbG1tYzoIBhQG
+ BiRXMS4oAAAgIQAAAAAAAAAAAHlqbW2KhkYLpAozYk4KAxdNMS12Sm8AAAAAAAAAAAAAgW2Kh0wLpA9G
+ iIuKbGAcAgY7Ukd4AAAAAAAAAAAAAACOin8aBQlEiZSNjIqKa2E2BQYzgAAAAAAAAAAAAAAAAIBEBgtE
+ lpmZmJWUjIuKa2ZYCgIghAAAAAAAAAAAAABwGQQdgpebnJybmJeUjIptalxTEQMYSgAAAAAAAAAAbgwL
+ fJWZnZ6fnp6bmJWMjG1raVlWDgEYhAAAAAAAAG4LFT+TmZ2eoKGhn52blZSLimtpWVU/EAMjAAAAAABu
+ DCAAAH6ZnZ6io6OhnpuZlIyKbGpZPQAAEAInhAAAABAlhQAAkZadn6Kjo6Gem5mUjIpsaVqDAAB7CwxD
+ AAAAIHIAAACES5qeoKGhn52ZlZSLimtfRUJvAABuCicAAAAhJydDQ3IAd5qenp6enJmVjYttaEgAcCcV
+ EBUGQQAAAAB4dQAAAAAAe5CanJmZmY2MimR6AAAAAHhuFSVyAAAAAAAAAAAAAAAAAHqBj5WSh31zAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////////////////////4P///+A////kAA/P5wAEA/MA
+ AAP4AAAj/AAAw/wAAM/4AAAf+AAAP/gAAH/4AAA/8AAAH+AAAA/AAAAPjAAAw4wAAMOcAABjgQACA8+A
+ B4P/4B//////////////////////////////////KAAAADAAAABgAAAAAQAIAAAAAAAACQAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAABpOAcAajoJAG0+EABuQBIAb0EUAHFDFgBzRxwAdEkeAHdNJAB5TyYAeVAnAH1V
+ LgB9VzAAflkyAH5dOAB/f38AgFo1AIJeOQCDYTwAh2ZEAIxqQQCMbU4AkG9IAJJyTQCOb1EAj3JUAI52
+ WgCbe1AAk3ZaAJV5XgCYfF4AjX9lAJZ9YgCZf2UArI8+AL6bNAC1lj0A0aQdAMafLADLoCIAyKEsANKm
+ IQDSpiQA1asuANWsMQDXrzoA17A6ANixPQCdh08AjoBfAJ2JVQCji0kArZFEAKiSWQCplV8AuJtVALyh
+ WACNgWYAjoJpAJKEZQCbgWQAn4VmAJCDawCdhm0Al4pvAJOHcACYhnAAk4hxAJmLdQCajnoAnZB8AKGI
+ awCnkWYAtpxiALKbbACijHUAoY56AK2adQCnk3kAtJx0ALSefAC4oGMAvKRtALqlegDOrU0A0q9KANiz
+ RQDVsksA27dMANy4TgDLq1UAxalfANy7VgDWt1kA3r1aAN69XQDCpWEAw6ptAM2yZADLsmoA379hANq8
+ ZQDWu2sAwax3AM21dADTu3sA3sN0AODBYwDhxGsA4sZxAOPIdgDkyHcA4MZ8AJ+UgACilYIApZeGAKaa
+ iACtoIEAuaaEALmoiADFsoQAybaPANG8gQDJupgA2cKCANzHigDXxJAA1cSbAObNggDnz4gA59CKAOjR
+ jQDiz5cA5tGRAOrUlgDq154A69ieANTFpADWy6kA5dSlAOzZoQDm2KwA7dypAO/ergDv4LIA7eG8APDi
+ tgDx5LsA7uPBAPPmwQDz6MYA9OnJAPXs0QD379gA9/DbAPjx3gD58uEA+/fsAP368wD+/foAZzYEAPr2
+ 6gD8+fEAbT4PABAZlQBCAAAAAAAAAPQYlQAAAAAAAAAAAAAAAAAMAAAAAgAAAAEB9XcA7P1/dgAAAAAA
+ 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
+ NB1pXUnKhWZC/+DPpf/06cn/+PDc//fv2f/y58P/7dun/+fQiv/hxGz/2LZQ/4FgOP9pVUHzRUI9vTQ0
+ NLNwYk6ZdGJL7E9LQ4abknrw9ezS//v47v/69ur/9erM/+7erf/o0Y7/4sVv/4NzSfdJRj+lYkw0821e
+ TPQ0NDS8eGdQsIFyXs52bV3AeXBeveLYuv/38Nv/9+/Z//Lnw//t26f/58+J/9O5bP94bVjbdmZS1m9f
+ SdmGZkT/NDQ0ezQ0NAVqY1JdNDQ0DjQ0NBNnYFFIpp2DzePWsv/s3Kz/3cmT/5iKZNRhWkxgNDQ0JGRd
+ T0xxZFCac2hVnTQ0NC00NDQBNDQ0ATQ0NAE0NDQBNDQ0BDQ0NAY0NDQKNDQ0DTQ0NA80NDQNNDQ0CjQ0
+ NAc0NDQFNDQ0BTQ0NAY0NDQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAAKAAAACAAAABAAAAAAQAgAAAAAAAAEAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ0NAI0NDQFNDQ0BzQ0NAk0NDQLNDQ0CDQ0
+ NAY0NDQENDQ0AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0NDQBNDQ0CjQ0NBg0NDQnNDQ0MzQ0
+ NDY0NDQ0NDQ0KTQ0NBs0NDQONDQ0CjQ0NAc0NDQFNDQ0BTQ0NAU0NDQFNDQ0BTQ0NAQ0NDQCNDQ0AQAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ0NAI0NDQTNDQ0PDQ0
+ NHA0NDSGNDQ0jDQ0NIo0NDSANDQ0UzQ0ND40NDQxNDQ0JjQ0NCM0NDQjNDQ0IzQ0NCM0NDQjNDQ0HzQ0
+ NBY0NDQNNDQ0BTQ0NAIAAAAANDQ0ATQ0NAM0NDQFNDQ0BzQ0NAc0NDQFNDQ0AzQ0NAEAAAAANDQ0A2Nd
+ Tk1tYVDIX1FB4V9VSehgWk/oXFdL6DQ0NLs0NDS4NDQ0pjQ0NHs0NDRvNDQ0bTQ0NG00NDRtNDQ0bTQ0
+ NGw0NDRnNDQ0UzQ0NDA0NDQcNDQ0EDQ0NA00NDQQNDQ0GjQ0NCU0NDQwNDQ0MDQ0NCI0NDQTNDQ0CAAA
+ AAA0NDQDZltJZ4ptTf+LcVT/gF86/3xVLv+CXTn/jXVY/499Yv9JRUDoSUY/401IPttPSjzaUUs72lFL
+ O9pPSjzaTUk+2UdEPs80NDSuNDQ0hzQ0NEk0NDQ9NDQ0PTQ0NEk0NDRTNDQ0dDQ0NIo0NDSKNDQ0bjQ0
+ NDg0NDQcAAAAADQ0NAJpYE9il4Fn/2liU+hPS0TNYVhKyIlvUP97VCz/d00j/4ZmRf+eiGP/waFH/8uk
+ Mv/Ppiz/z6Yq/8mhKv/Bmyz/bmA3/VhRQfY0NDTONDQ0qTQ0NIY0NDSnNDQ0sVJORddeWEzrXFdL7k5L
+ Q+Q0NDS8NDQ0jzQ0NDAAAAAANDQ0AWZfT0CBb1fmmopz/1NORb00NDSWNDQ0a5OEZf+niVP/hVwo/3JE
+ F/+KZ0D/spFP/9CsRP/Vrjf/1aww/9SqK//SpiL/zqMh/2VZPPtIRT7tj39k/414XP+NclX/iGZF/4Bb
+ Nv+FYT7/knhb/5SGbf80NDSsNDQ0QwAAAAAAAAAANDQ0BGZfUEKZhm7/eW5d2TQ0NJVVUEXPvKFT/9az
+ S//OrVP/rIxP/3ZMIf9zRxv/mHZF/8CjXP/XsT//1q44/9KrOP/Cok7/ooBF/4RhN/94UCb/cEMW/20+
+ EP91SiD/gl87/4hqSv94TiX/k31j/zQ0NKc0NDQ9AAAAAAAAAAAAAAAANDQ0BGZfUEWJfm3ndGpW3nNo
+ R/LculX/3bxZ/929W//evl3/0LRl/59+SP90Rxr/c0gc/5+DWv+3nmv/iWZB/3FEF/9tPg//eEwf/4dg
+ Lf9ZTT77X1lN6GpiU9BSTUR4ZVxO63pSKv+SfWP/NDQ0czQ0NCgAAAAAAAAAAAAAAAAAAAAANDQ0CWJb
+ Tlenk2X/1rdc/9+/Yv/gwWb/4MNq/+HDa//hw2r/3MBs/6yRZf98VS7/cEIV/4FbNv+La0z/hF84/6WF
+ Rv+8lzz/xqA0/4V1TP80NDTJNDQ0dW1kU+CBXzv/i25P/2ZeUL80NDQyNDQ0FAAAAAAAAAAAAAAAAAAA
+ AAA0NDQIYFpMW8yvZP/hw2v/4sZy/+PIdv/kyXv/4sl9/8yydP+jh1r/dksg/3ZLIP+IZD//dkod/3NH
+ HP+YelH/yalT/9WuOv/TqSn/v5sx/zQ0NNZLSEG/jHFT/492Wv9kXU+kNDQ0LjQ0NBQ0NDQGAAAAAAAA
+ AAAAAAAAAAAAADQ0NAp7b1e84MRv/+PId//lzID/5s2E/9rEh/+vk2b/flYq/24/EP95UCb/noBV/8qv
+ cP++oWX/elAk/25AEv+MakH/vaFg/9WsM//Rpyn/WFJE9mpgU/hsYVHlYlxOgTQ0NCM0NDQRNDQ0BTQ0
+ NAEAAAAAAAAAAAAAAAA0NDQCNDQ0EYt9Wr7ly37/5s6F/9vFi/+4nnL/e1Mr/25AEf+FXzX/rJFp/9rG
+ kv/n0I3/5c2C/+PJef/TuW3/m3pC/29BE/91SyD/rI9d/82pQf9pXkD9XVdL6DQ0NGc0NDQ0NDQ0FTQ0
+ NAg0NDQBAAAAAAAAAAAAAAAANDQ0AjQ0NAk0NDQii35byObPiP/SvYn/kW9H/3NGGf96USf/p4xo/9rH
+ m//p2KX/69ie/+rVmP/n0Yz/5c2E/+PId//avm3/poRJ/3NGGP92SyD/n4FU/4FyTf80NDTVNDQ0lzQ0
+ NFU0NDQmNDQ0DDQ0NAIAAAAAAAAAADQ0NAI0NDQKNDQ0HldSR1p+dFrqqIxg/3ZLH/99VCr/p4tn/+TV
+ sP/w4rn/8OO4//Dhtf/u3q7/7Nql/+rWmf/o0o7/5cyB/+PHdf/ewGf/wKVZ/35UIv9tPg//jm9R/1FM
+ RfZEQj3eNDQ0ojQ0NE80NDQcNDQ0BzQ0NAE0NDQCNDQ0CTQ0NB40NDRHaWBS6I1vTP9yRhn/knBJ/9C+
+ l//s37r/8+fE//Tox//z6Mb/8ubC//DiuP/u37D/7Nmj/+rUl//nz4j/5Mp8/+HEa//evl//wqFS/4Vc
+ LP9vQRT/iWpL/2BbUPxFQz3ZNDQ0izQ0NDs0NDQVNDQ0BjQ0NAg0NDQdWFNIVWheT+d+WDL/fVYs/8Cq
+ hv/p2q//8uXA//Tqyv/27dT/9+/Y//fu1//17NH/8+fF//Hjuv/u3az/69ie/+jSj//lzIL/4sZx/9/A
+ ZP/cuVP/07BO/4RgM/9tPxH/jW1N/1ZQR+00NDTENDQ0fDQ0NDQ0NDQUNDQ0ETQ0NDtqYE/lfFcw/4Rk
+ Qv+Vhmn/6Neo//Ditv/z6Mb/9u3T//jx3//59OX/+fPj//fw2//16s3/8uXA/+7fsP/s2aP/6dKS/+bO
+ hf/jx3T/4MJm/9y6Vf/Wskr/kYFg/4BfO/9wQhX/kHNV/1BLROg0NDS/NDQ0dDQ0NChfWUwzcWZT231Y
+ MP+Mc1X/WFNJyDQ0NGLAsY7/8OK5//TqzP/379n/+vbq//z68//8+PD/+fPk//bs0v/z58X/7+C0/+3b
+ p//p1JX/5s+I/+PIdv/gwmj/3LtX/7meV/80NDSxXllMsX1dOP9vQRT/ln9k/1NORu40NDSnNDQ0PWhf
+ T2iAXjv/kHtf/1dSSOI0NDSTNDQ0fGtlVcPh067/9OrM//fv2f/69ur//Prz//z48P/58+T/9uzS//Pn
+ xf/v4LT/7dun/+nUlf/mz4j/48h1/+DCaP/Rs1v/WFJD6zQ0NLw0NDShX1dKynhTK/9+WDH/nIlv/zQ0
+ NLI0NDRHZllHY49xU/9sZFfnUExFyVJORsNWUkm3Y11Qyaeaff/t4cH/9ezS//jx3//59OT/+fPj//fw
+ 2//16s3/8uXA/+7fsP/s2aP/6dKS/+bNhP/jx3T/3L5m/6qVZ/+YiG//amBQ5lJORcNQTETKYFpN8XhP
+ Jv+Vf2X/NDQ0qTQ0NEBqYE5djnZa/5R8Yv+Vf2b/molz/5iLdf96cV/TZF1PeLqukf/t48T/9u3T//fu
+ 1//27tb/9ezQ//Pnxf/x47r/7t2s/+vYnv/o0o//5cyA/93Ccf+ynmf/XVhLknltW9SSfGL/hmZF/39e
+ Ov+CZUL/dUsg/5aAZ/80NDR/NDQ0LjQ0NAQ0NDQKd25ZsnVsWLY0NDQnNDQ0HTQ0NBA0NDQOZF5PRoZ7
+ ZLXXzKz/7uLC//Poxv/y5sL/8OK4/+7erv/r2aL/6tSX/+PLh//Mtnf/dWpTzF5YS2Q0NDQhNDQ0FGRe
+ T0d6cF60fGxX0YRnRv+Pd1r/eG5c2jQ0NDk0NDQaAAAAADQ0NAI0NDQENDQ0BDQ0NAQ0NDQENDQ0AgAA
+ AAA0NDQCNDQ0B29oV2CSiHDNyr2b/9vMpf/q2ar/6Nah/9nGkv/GsoL/i35f1GdgT3k0NDQjNDQ0ETQ0
+ NAc0NDQDNDQ0AzQ0NAVhW00la2NTYmpiUmdfWUwyNDQ0ETQ0NAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAA0NDQBNDQ0AzQ0NAc0NDQKNDQ0DTQ0NBA0NDQQNDQ0EDQ0NBA0NDQNNDQ0CjQ0
+ NAc0NDQDNDQ0AQAAAAAAAAAAAAAAADQ0NAE0NDQCNDQ0AjQ0NAI0NDQCNDQ0AQAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////8Af//+AAAf/gAABAIAAAACAAAAAgAAAAIAA
+ AADAAAAA4AAAAPAAAADwAAAA8AAAAOAAAAHAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAgQAAAP+AAcD//////////////////////////ygAAAAwAAAAYAAAAAEAIAAAAAAAACQAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0NDQDNDQ0BjQ0NAo0NDQNNDQ0EDQ0NBA0NDQQNDQ0EDQ0
+ NA00NDQKNDQ0BjQ0NAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0NDQGNDQ0GjQ0NC40NDRDNDQ0STQ0
+ NEk0NDRJNDQ0STQ0NEY0NDQ1NDQ0JDQ0NBA0NDQKNDQ0BjQ0NAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0NDQKNDQ0LjQ0
+ NIY0NDSrNDQ0tTQ0NLU0NDS1NDQ0tTQ0NLE0NDShNDQ0XTQ0NEk0NDQ1NDQ0JDQ0NBQ0NDQQNDQ0EDQ0
+ NBA0NDQQNDQ0EDQ0NBA0NDQQNDQ0EDQ0NBA0NDQNNDQ0CjQ0NAY0NDQDAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAA0NDQNjIBn/452Wv+HZkT/jG1O/52Gbf+ajnr/k4hx/4yAZ/80NDTWNDQ0yTQ0NLU0NDShNDQ0XTQ0
+ NE00NDRJNDQ0STQ0NEk0NDRJNDQ0STQ0NEk0NDRJNDQ0STQ0NEk0NDRGNDQ0NTQ0NCE0NDQNNDQ0BjQ0
+ NAMAAAAAAAAAAAAAAAAAAAAANDQ0AzQ0NAY0NDQKNDQ0DTQ0NBA0NDQNNDQ0CjQ0NAY0NDQDAAAAAAAA
+ AAAAAAAAAAAAAAAAAAA0NDQQfl04/4NhPP+Ob1H/gl45/29BE/9uPxH/fVUu/5N2Wv+ej3v/lop0/41/
+ Zf80NDTaNDQ0yTQ0NLg0NDS1NDQ0tTQ0NLU0NDS1NDQ0tTQ0NLU0NDS1NDQ0tTQ0NLU0NDSxNDQ0oTQ0
+ NFo0NDQ1NDQ0HjQ0NA00NDQKNDQ0CjQ0NA00NDQQNDQ0FDQ0NCQ0NDQ1NDQ0RjQ0NEk0NDRGNDQ0NTQ0
+ NCE0NDQNNDQ0BjQ0NAMAAAAAAAAAAAAAAAA0NDQNiGlI/6maif+Qg2v/joJp/5mLdf+agmr/fVcw/2o6
+ Cf9tPQ7/fVcw/5l/Zf+ej3v/k4Vs/42AYv+diVX/rZFE/76bNP/Gnyz/xp8s/8afLP++mzT/rI8+/52H
+ T/+NgGL/NDQ02jQ0NMU0NDShNDQ0STQ0NCs0NDQoNDQ0NTQ0NEY0NDRJNDQ0TTQ0NF00NDShNDQ0sTQ0
+ NLU0NDSxNDQ0oTQ0NFc0NDQyNDQ0GjQ0NAYAAAAAAAAAAAAAAAA0NDQKjX5i/5d9Yv+Xim//NDQ02jQ0
+ NKs0NDRJkINr/5iGcP+IaUj/b0ET/2k4B/9zRxz/jm9R/7KbbP/OrU3/1awx/9WrLv/Vqy7/1Koq/9Sq
+ Kv/TqCb/0qYh/9GkHf/LoCL/rI8+/46AX/80NDTaNDQ0tTQ0NGQ0NDRhNDQ0oTQ0NLE0NDS1NDQ0uIyA
+ Z/+Xim//l4pv/5eKb/+MgGf/NDQ02jQ0NL80NDSJNDQ0LjQ0NAoAAAAAAAAAAAAAAAA0NDQGjIBn/45v
+ Uf+ilYL/in9l/zQ0NL80NDRdNDQ0MjQ0NDWLgGX/mIZw/5JyTf9xQxb/aTgH/3FDFv+MbU7/tJx0/9Kv
+ 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
+ Z/80NDQ/NDQ0ITQ0NAo0NDQDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAA0NDQDNDQ0FM21dP/mzYL/58+I/+jRjf/VxJv/oYhr/3RJHv9rOgr/azsL/3ZMIv+hiGv/1cSb/+rX
+ nv/q1pn/6tSW/+nTkf/n0Ir/5s6F/+TKfP/jyHb/4cRt/8Oqbf99VCv/bT4P/2o5CP95UCf/p5N5/86t
+ Tf+1lj3/NDQ00zQ0NGs0NDQyNDQ0FDQ0NAo0NDQDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAADQ0NAM0NDQKNDQ0KNO7e//nz4j/5tGR/7mmhP9+WTL/azsL/2s6Cv90SR7/n4Vm/9TF
+ pP/v3q7/7dyp/+3cqf/s2qT/69ie/+rWmf/p05H/59CK/+bOhf/kynz/48d0/+HEa//Wu2v/jGpB/20+
+ D/9rOgr/ckUZ/52Gbf+4oGP/NDQ04DQ0NLs0NDRhNDQ0NTQ0NB40NDQKNDQ0AwAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAANDQ0AzQ0NAo0NDQhNDQ0TdnCgv/XxJD/l3pa/25AEf9qOgn/cUMW/5d6
+ Wv/UxaT/7+C2//Ditv/w4rb/8OGz/+/gsv/v3q7/7Nun/+zZof/q1pn/6dOR/+fQiv/mzYL/5Ml5/+LG
+ cf/gwmf/2rxl/52HT/9uQBH/bDwM/24/Ef+VeV7/oY56/zQ0NOA0NDTJNDQ0nTQ0NEM0NDQeNDQ0BgAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0NDQDNDQ0CjQ0NCE0NDRJi4Bl/7mmhP9+WTL/ajkI/20+
+ D/+Kakn/ybqY/+3hvP/y5L3/8+bB//Pmwf/z5sH/8uW+//Hku//w4rb/796u/+3cqf/s2aH/6taZ/+nT
+ kf/nz4j/5ct//+PIdv/hxGv/38Bj/969Xf+2nGL/ckUZ/2w8Df9sPA3/kHJV/5qOev+Kf2X/NDQ01jQ0
+ NJ00NDQ1NDQ0DTQ0NAMAAAAAAAAAAAAAAAAAAAAAAAAAADQ0NAM0NDQKNDQ0ITQ0NEmOgmn/moZu/3JF
+ Gf9qOQj/fVUu/7mmhP/m2Kz/8eS7//Pmwf/z6Mb/9OrK//XqzP/06sr/9OnJ//PnxP/y5b7/8OK2/+/g
+ sv/t3Kn/69ie/+rUlv/o0Y3/5s6F/+TKev/ixnH/4MJn/969Xf/cuVH/wqVh/3lPJv9sPA3/azsM/45v
+ Uf+dkHz/in9l/zQ0NMk0NDRdNDQ0JDQ0NAo0NDQDAAAAAAAAAAAAAAAANDQ0AzQ0NAo0NDQhNDQ0SY+E
+ a/+Td1z/bDwN/29BE/+YfF7/1MWk/+/gsv/x5Lv/8+fE//Tqyv/17NH/9+7V//fu1f/37tX/9u3S//Xq
+ zP/z6Mb/8uW+//Ditv/v3q7/7Nqk/+rWmf/p05H/58+I/+XLf//jx3T/4cNq/9+/Yf/du1b/27dM/8ur
+ Vf+BWjD/bDwN/2s7DP+PclT/p5N5/zQ0NOA0NDS4NDQ0TTQ0NCE0NDQKNDQ0AwAAAAA0NDQDNDQ0CjQ0
+ NCE0NDRJk4dw/4xtTv9qOQj/elIq/62ggf/l1KX/796u//Ditv/z5sH/9OrK//bt0v/379j/+PHe//ny
+ 4f/48d7/9/Db//fu1f/16sz/8+fE//Hku//v4LL/7dyp/+vYnv/q1Jb/59CK/+bNgv/kyHf/4cRr/+DB
+ Y//cu1f/3LhO/9izRf+plV//fl04/2w8DP9sPA3/k3Za/6GOev80NDTdNDQ0tTQ0NEk0NDQhNDQ0CjQ0
+ NAM0NDQGNDQ0HjQ0NEaTh3D/hmNA/2o6Cf+Kakn/mo56/46CZv/l1KX/7+Cy//Hku//z58T/9evP//fv
+ 2P/58uH/+vXm//r26f/69un/+fTj//fw2//27dL/9OnJ//Llvv/w4rb/7dyp/+zZof/q1Jb/6NGN/+bN
+ gv/kyXn/4sVu/+DBY//evVr/3LhO/9KvSv+LgGX/kINr/4NhPP9rOwv/bj8R/5l/Zf+ci3T/NDQ03TQ0
+ NLE0NDRGNDQ0HjQ0NAY0NDQKNDQ0MpGFbv+DYTz/bkAR/5aAZv+Th3D/NDQ0TTQ0NC65qIj/8OGz//Ll
+ vv/06cn/9u3S//fw2//69eb/+/jv//368//9+vP/+vbp//ny4f/37tX/9erM//Pmwf/w4rb/796u/+za
+ pP/q1pn/6NGN/+bOhf/kynr/4sVu/+DBZf/evVr/3LlR/7ibVf80NDSuNDQ0SY6Caf9+XTj/azoK/3JF
+ Gf+ijHX/k4Vs/zQ0NNY0NDSdNDQ0MjQ0NAo0NDQNjoJp/4dmRP9yRRn/nIt0/5CDa/80NDRaNDQ0MjQ0
+ NCGOgmn/5tis//Llvv/06cn/9+7V//jx3v/69un//frz//79+v/9+vP/+/fs//n04//379j/9erM//Pn
+ xP/x47r/796u/+zapP/q1pn/6dOR/+bOhf/kynr/4sZx/+DBZf/evVr/1rdZ/42AYv80NDSJNDQ0VzQ0
+ NDWOgmn/flky/2k4B/99VS7/opWC/4uAZf80NDSxNDQ0RjQ0NA00NDQQjnZa/3NHHP+ej3v/joJm/zQ0
+ NJA0NDRrNDQ0UzQ0NFA0NDRTraCB//Lkvf/06cn/9u3S//fw2//69eb/+/jv//368//9+vP/+vbp//ny
+ 4f/37tX/9erM//Pmwf/w4rb/796u/+zapP/q1pn/6NGN/+bOhf/kyXn/4sVu/+DBZf/evVr/qZVf/zQ0
+ NOA0NDTJNDQ0pzQ0NGQ0NDRXjoJp/3RJHv9qOgn/lXle/6eTef80NDS1NDQ0STQ0NBA0NDQNflo0/5d9
+ Yv+ThWz/NDQ04DQ0NMw0NDS4NDQ0rjQ0NKc0NDSnin9l/8m6mP/z58T/9evP//fv2P/58uH/+vXm//r2
+ 6f/69un/+fTj//fw2//27dL/9OnJ//Llvv/w4rb/7dyp/+zZof/q1Jb/6NGN/+bNgv/kyXn/4sVu/+DB
+ Y//FqV//nIt0/5eKb/+Qg2v/NDQ00DQ0NMI0NDS4NDQ0v41+Yv9yRRn/fVcw/6KVgv80NDS1NDQ0STQ0
+ NBA0NDQKflky/5l/Zf+flID/mo56/5iMdv+ajnr/no97/6KVgv+ll4b/l4pv/4yAZ//Wy6n/9OnJ//Xs
+ 0f/379j/+PHe//jx3v/48d7/9/Db//fu1f/16sz/8+fE//Hku//v4LL/7dyp/+vYnv/q1Jb/59CK/+XL
+ f//jyHb/4cRr/82yZP+Ogmb/k4dw/5qCav+QclX/moJq/5mLdf+Zi3X/k4dw/4+Ea/+EYT3/c0cc/6aa
+ iP80NDSxNDQ0RjQ0NA00NDQGjX9l/452Wv+QclX/j3JU/5d9Yv+ahm7/mYt1/5GFbv+Kf2X/NDQ0NTQ0
+ NCiQg2v/1sup//Tqyv/17M//9u3S//fu1f/37tX/9ezR//XqzP/z6Mb/8uW+//Ditv/v3q7/7Nqk/+rW
+ mf/p05H/58+I/+TKfP/jx3T/y7Jq/46CZv80NDRJNDQ0K4yAZ/+ViHL/jG1O/3ZLIf9xRBf/elIq/31X
+ MP9sPAz/fVUu/6WXhv80NDSaNDQ0MjQ0NAo0NDQDNDQ0BjQ0NA2LgGX/joJm/4p/Zf80NDQ1NDQ0JDQ0
+ NBQ0NDQNNDQ0CjQ0NAo0NDQNi4Bl/7moiP/u48H/9OnJ//XqzP/06sr/9OnJ//PnxP/y5L3/8OK2/+/e
+ rv/s26f/69ie/+rUlv/o0Y3/5s2C/+DGfP+ym2z/i4Bl/zQ0NDU0NDQeNDQ0DTQ0NAo0NDQNjX9l/5aK
+ dP+ahm7/h2ZE/3pSKv+EYT3/oY56/5eKb/80NDRDNDQ0HjQ0NAYAAAAAAAAAADQ0NAM0NDQGNDQ0CjQ0
+ NAo0NDQKNDQ0BjQ0NAMAAAAAAAAAAAAAAAA0NDQDNDQ0BjQ0NA2Xim//ybqY/+3hvP/z5sH/8uW+//Hj
+ uv/w4rb/796u/+3cqf/s2aH/6taZ/+nTkf/nz4j/wax3/5KEZf80NDQ5NDQ0ITQ0NA00NDQGNDQ0AwAA
+ AAA0NDQDNDQ0BjQ0NAo0NDQQjoJm/5OIcf+Xim//joJm/zQ0NDI0NDQeNDQ0CjQ0NAMAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ0NAM0NDQGNDQ0DY6C
+ Zv+toIH/ybqY/9XEm//l1KX/7Nun/+LPl//XxJD/xbKE/62adf+ShGX/NDQ0NTQ0NCE0NDQNNDQ0BjQ0
+ NAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0NDQDNDQ0BjQ0NAo0NDQNNDQ0DTQ0NAo0NDQGNDQ0AwAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAANDQ0AzQ0NAY0NDQKNDQ0DTQ0NBA0NDQQNDQ0EDQ0NBA0NDQQNDQ0EDQ0NBA0NDQNNDQ0CjQ0
+ NAY0NDQDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ 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
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA4AH/////AADgAD////8AAOAAAAH//wAA4AAAAHgD
+ AADgAAAAAAAAAOAAAAAAAAAA4AAAAAAAAADgAAAAAAAAAOAAAAAAAAAA8AAAAAAAAAD4AAAAAAAAAPwA
+ AAAAAAAA/gAAAAAAAAD+AAAAAAEAAP4AAAAAAwAA/gAAAAAHAAD+AAAAAB8AAPwAAAAAHwAA+AAAAAAP
+ AADwAAAAAA8AAOAAAAAABwAAwAAAAAADAACAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBwAAAQAAAA//wAAH4B
+ AAD//wAB//8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA////////AAA=
+
+
+
\ No newline at end of file
diff --git a/GUI/Properties/Resources.Designer.cs b/GUI/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..7d5f040
--- /dev/null
+++ b/GUI/Properties/Resources.Designer.cs
@@ -0,0 +1,63 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Runtime Version:2.0.50727.42
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace RosTEGUI.Properties {
+ using System;
+
+
+ ///
+ /// A strongly-typed resource class, for looking up localized strings, etc.
+ ///
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources() {
+ }
+
+ ///
+ /// Returns the cached ResourceManager instance used by this class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("RosTEGUI.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+ }
+}
diff --git a/GUI/Properties/Resources.resx b/GUI/Properties/Resources.resx
new file mode 100644
index 0000000..4d26a2a
--- /dev/null
+++ b/GUI/Properties/Resources.resx
@@ -0,0 +1,121 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
+
\ No newline at end of file
diff --git a/GUI/Properties/app.manifest b/GUI/Properties/app.manifest
new file mode 100644
index 0000000..ec82d19
--- /dev/null
+++ b/GUI/Properties/app.manifest
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GUI/Resources/Thumbs.db b/GUI/Resources/Thumbs.db
new file mode 100644
index 0000000..d1f2d33
Binary files /dev/null and b/GUI/Resources/Thumbs.db differ
diff --git a/GUI/Resources/add.png b/GUI/Resources/add.png
new file mode 100644
index 0000000..c541e6e
Binary files /dev/null and b/GUI/Resources/add.png differ
diff --git a/GUI/Resources/audio.png b/GUI/Resources/audio.png
new file mode 100644
index 0000000..31bc8e0
Binary files /dev/null and b/GUI/Resources/audio.png differ
diff --git a/GUI/Resources/copy.png b/GUI/Resources/copy.png
new file mode 100644
index 0000000..585579a
Binary files /dev/null and b/GUI/Resources/copy.png differ
diff --git a/GUI/Resources/del.png b/GUI/Resources/del.png
new file mode 100644
index 0000000..6b8361e
Binary files /dev/null and b/GUI/Resources/del.png differ
diff --git a/GUI/Resources/direct/Thumbs.db b/GUI/Resources/direct/Thumbs.db
new file mode 100644
index 0000000..3d281cc
Binary files /dev/null and b/GUI/Resources/direct/Thumbs.db differ
diff --git a/GUI/Resources/direct/audio-volume-high.png b/GUI/Resources/direct/audio-volume-high.png
new file mode 100644
index 0000000..31bc8e0
Binary files /dev/null and b/GUI/Resources/direct/audio-volume-high.png differ
diff --git a/GUI/Resources/direct/drive-harddisk.png b/GUI/Resources/direct/drive-harddisk.png
new file mode 100644
index 0000000..694a3d0
Binary files /dev/null and b/GUI/Resources/direct/drive-harddisk.png differ
diff --git a/GUI/Resources/direct/drive-optical.png b/GUI/Resources/direct/drive-optical.png
new file mode 100644
index 0000000..beb3657
Binary files /dev/null and b/GUI/Resources/direct/drive-optical.png differ
diff --git a/GUI/Resources/direct/drive-removable-media.png b/GUI/Resources/direct/drive-removable-media.png
new file mode 100644
index 0000000..c94197f
Binary files /dev/null and b/GUI/Resources/direct/drive-removable-media.png differ
diff --git a/GUI/Resources/direct/folder-saved-search.png b/GUI/Resources/direct/folder-saved-search.png
new file mode 100644
index 0000000..05adc32
Binary files /dev/null and b/GUI/Resources/direct/folder-saved-search.png differ
diff --git a/GUI/Resources/direct/folder.png b/GUI/Resources/direct/folder.png
new file mode 100644
index 0000000..e45b65b
Binary files /dev/null and b/GUI/Resources/direct/folder.png differ
diff --git a/GUI/Resources/direct/network-wired.png b/GUI/Resources/direct/network-wired.png
new file mode 100644
index 0000000..e8e9490
Binary files /dev/null and b/GUI/Resources/direct/network-wired.png differ
diff --git a/GUI/Resources/direct/network-workgroup.png b/GUI/Resources/direct/network-workgroup.png
new file mode 100644
index 0000000..f8547d7
Binary files /dev/null and b/GUI/Resources/direct/network-workgroup.png differ
diff --git a/GUI/Resources/exit.png b/GUI/Resources/exit.png
new file mode 100644
index 0000000..22a65a4
Binary files /dev/null and b/GUI/Resources/exit.png differ
diff --git a/GUI/Resources/help.png b/GUI/Resources/help.png
new file mode 100644
index 0000000..8542495
Binary files /dev/null and b/GUI/Resources/help.png differ
diff --git a/GUI/Resources/images.png b/GUI/Resources/images.png
new file mode 100644
index 0000000..19a15e8
Binary files /dev/null and b/GUI/Resources/images.png differ
diff --git a/GUI/Resources/launch.png b/GUI/Resources/launch.png
new file mode 100644
index 0000000..f23491a
Binary files /dev/null and b/GUI/Resources/launch.png differ
diff --git a/GUI/Resources/mount.png b/GUI/Resources/mount.png
new file mode 100644
index 0000000..4a5bbd5
Binary files /dev/null and b/GUI/Resources/mount.png differ
diff --git a/GUI/Resources/preferences-system.png b/GUI/Resources/preferences-system.png
new file mode 100644
index 0000000..e460eab
Binary files /dev/null and b/GUI/Resources/preferences-system.png differ
diff --git a/GUI/Resources/ros.ico b/GUI/Resources/ros.ico
new file mode 100644
index 0000000..492e388
Binary files /dev/null and b/GUI/Resources/ros.ico differ
diff --git a/GUI/Resources/save.png b/GUI/Resources/save.png
new file mode 100644
index 0000000..7b72455
Binary files /dev/null and b/GUI/Resources/save.png differ
diff --git a/GUI/Resources/screenshot.png b/GUI/Resources/screenshot.png
new file mode 100644
index 0000000..ccf6dcd
Binary files /dev/null and b/GUI/Resources/screenshot.png differ
diff --git a/GUI/Resources/snapshot.png b/GUI/Resources/snapshot.png
new file mode 100644
index 0000000..aad3796
Binary files /dev/null and b/GUI/Resources/snapshot.png differ
diff --git a/GUI/Resources/stop.png b/GUI/Resources/stop.png
new file mode 100644
index 0000000..b4f1f30
Binary files /dev/null and b/GUI/Resources/stop.png differ
diff --git a/GUI/RosTE GUI.sln b/GUI/RosTE GUI.sln
new file mode 100644
index 0000000..2ef2edf
--- /dev/null
+++ b/GUI/RosTE GUI.sln
@@ -0,0 +1,19 @@
+Microsoft Visual Studio Solution File, Format Version 9.00
+# Visual Studio 2005
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RosTEGUI", "RosTEGUI.csproj", "{88020C53-D88A-4488-A479-E7ED0310D3D3}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {88020C53-D88A-4488-A479-E7ED0310D3D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {88020C53-D88A-4488-A479-E7ED0310D3D3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {88020C53-D88A-4488-A479-E7ED0310D3D3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {88020C53-D88A-4488-A479-E7ED0310D3D3}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/GUI/RosTEGUI.csproj b/GUI/RosTEGUI.csproj
new file mode 100644
index 0000000..fa1aee0
--- /dev/null
+++ b/GUI/RosTEGUI.csproj
@@ -0,0 +1,169 @@
+
+
+ Local
+ 8.0.50727
+ 2.0
+ {88020C53-D88A-4488-A479-E7ED0310D3D3}
+ Debug
+ AnyCPU
+ ros.ico
+
+
+ RosTEGUI
+
+
+ JScript
+ Grid
+ IE50
+ false
+ WinExe
+ RosTEGUI
+ OnBuildSuccess
+
+
+
+
+
+
+ D2BF5300759C6053B15DCC2B68BA5118266D7633
+ Qemu GUI_TemporaryKey.pfx
+ true
+ false
+ false
+ LocalIntranet
+ D:\ReactOS\trunk\tools\RosTE\
+ true
+ Disk
+ false
+ Foreground
+ 7
+ Days
+ false
+ false
+ true
+ 0.1.0.%2a
+ true
+
+
+ bin\Debug\
+ false
+ 285212672
+ false
+
+
+ DEBUG;TRACE
+
+
+ true
+ 4096
+ false
+
+
+ false
+ false
+ false
+ false
+ 4
+ full
+ prompt
+
+
+ bin\Release\
+ true
+ 285212672
+ false
+
+
+ TRACE
+
+
+ false
+ 4096
+ false
+
+
+ true
+ false
+ false
+ false
+ 4
+ none
+ prompt
+
+
+
+ System
+
+
+ System.Data
+
+
+ System.Drawing
+
+
+ System.Windows.Forms
+
+
+ System.XML
+
+
+
+
+ Code
+
+
+ Form
+
+
+ AboutForm.cs
+
+
+ Form
+
+
+ MainForm.cs
+
+
+
+ True
+ True
+ Resources.resx
+
+
+ MainForm.cs
+ Designer
+
+
+ Designer
+ ResXFileCodeGenerator
+ Resources.Designer.cs
+
+
+
+
+ False
+ .NET Framework 2.0
+ true
+
+
+
+
+ Designer
+ AboutForm.cs
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GUI/program.cs b/GUI/program.cs
new file mode 100644
index 0000000..011f3fd
--- /dev/null
+++ b/GUI/program.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+using System.Windows.Forms;
+
+namespace RosTEGUI
+{
+ static class Program
+ {
+ ///
+ /// The main entry point for the application.
+ ///
+ [MTAThread]
+ static void Main()
+ {
+ Application.Run(new MainForm());
+ }
+ }
+}
\ No newline at end of file
diff --git a/GUI/ros.ico b/GUI/ros.ico
new file mode 100644
index 0000000..492e388
Binary files /dev/null and b/GUI/ros.ico differ