diff --git a/FizzyLauncher.UI/FizzyLauncher.UI.csproj b/FizzyLauncher.UI/FizzyLauncher.UI.csproj
index 34ecce2..7334c5e 100644
--- a/FizzyLauncher.UI/FizzyLauncher.UI.csproj
+++ b/FizzyLauncher.UI/FizzyLauncher.UI.csproj
@@ -229,5 +229,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/FizzyLauncher.UI/Properties/Resources20.Designer.cs b/FizzyLauncher.UI/Properties/Resources20.Designer.cs
index 8614271..017f654 100644
--- a/FizzyLauncher.UI/Properties/Resources20.Designer.cs
+++ b/FizzyLauncher.UI/Properties/Resources20.Designer.cs
@@ -80,6 +80,46 @@ namespace AppLauncher.Properties {
}
}
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap close3 {
+ get {
+ object obj = ResourceManager.GetObject("close3", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap empty {
+ get {
+ object obj = ResourceManager.GetObject("empty", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap empty2 {
+ get {
+ object obj = ResourceManager.GetObject("empty2", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap empty3 {
+ get {
+ object obj = ResourceManager.GetObject("empty3", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
///
/// Looks up a localized resource of type System.Drawing.Bitmap.
///
@@ -129,5 +169,15 @@ namespace AppLauncher.Properties {
return ((System.Drawing.Bitmap)(obj));
}
}
+
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap minimise3 {
+ get {
+ object obj = ResourceManager.GetObject("minimise3", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
}
}
diff --git a/FizzyLauncher.UI/Properties/Resources20.resx b/FizzyLauncher.UI/Properties/Resources20.resx
index ec8e6d8..9a0d447 100644
--- a/FizzyLauncher.UI/Properties/Resources20.resx
+++ b/FizzyLauncher.UI/Properties/Resources20.resx
@@ -124,6 +124,18 @@
..\Resources\20\close2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\20\close3.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\20\empty.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\20\empty2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\20\empty3.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\20\maximise.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -139,4 +151,7 @@
..\Resources\20\minimise2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\20\minimise3.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
\ No newline at end of file
diff --git a/FizzyLauncher.UI/Resources/20/close.png b/FizzyLauncher.UI/Resources/20/close.png
index a1cfe41..fb4f049 100644
Binary files a/FizzyLauncher.UI/Resources/20/close.png and b/FizzyLauncher.UI/Resources/20/close.png differ
diff --git a/FizzyLauncher.UI/Resources/20/close2.png b/FizzyLauncher.UI/Resources/20/close2.png
index 14e88b0..e2a3277 100644
Binary files a/FizzyLauncher.UI/Resources/20/close2.png and b/FizzyLauncher.UI/Resources/20/close2.png differ
diff --git a/FizzyLauncher.UI/Resources/20/close3.png b/FizzyLauncher.UI/Resources/20/close3.png
new file mode 100644
index 0000000..14e88b0
Binary files /dev/null and b/FizzyLauncher.UI/Resources/20/close3.png differ
diff --git a/FizzyLauncher.UI/Resources/20/empty.png b/FizzyLauncher.UI/Resources/20/empty.png
new file mode 100644
index 0000000..8b7e377
Binary files /dev/null and b/FizzyLauncher.UI/Resources/20/empty.png differ
diff --git a/FizzyLauncher.UI/Resources/20/empty2.png b/FizzyLauncher.UI/Resources/20/empty2.png
new file mode 100644
index 0000000..61de605
Binary files /dev/null and b/FizzyLauncher.UI/Resources/20/empty2.png differ
diff --git a/FizzyLauncher.UI/Resources/20/empty3.png b/FizzyLauncher.UI/Resources/20/empty3.png
new file mode 100644
index 0000000..b98cb46
Binary files /dev/null and b/FizzyLauncher.UI/Resources/20/empty3.png differ
diff --git a/FizzyLauncher.UI/Resources/20/maximise.png b/FizzyLauncher.UI/Resources/20/maximise.png
index 9dc88fb..b2e90e2 100644
Binary files a/FizzyLauncher.UI/Resources/20/maximise.png and b/FizzyLauncher.UI/Resources/20/maximise.png differ
diff --git a/FizzyLauncher.UI/Resources/20/maximise2.png b/FizzyLauncher.UI/Resources/20/maximise2.png
index 490190a..4c4c813 100644
Binary files a/FizzyLauncher.UI/Resources/20/maximise2.png and b/FizzyLauncher.UI/Resources/20/maximise2.png differ
diff --git a/FizzyLauncher.UI/Resources/20/maximise3.png b/FizzyLauncher.UI/Resources/20/maximise3.png
index fa1dcec..77ae4ee 100644
Binary files a/FizzyLauncher.UI/Resources/20/maximise3.png and b/FizzyLauncher.UI/Resources/20/maximise3.png differ
diff --git a/FizzyLauncher.UI/Resources/20/minimise.png b/FizzyLauncher.UI/Resources/20/minimise.png
index ee67015..338d63d 100644
Binary files a/FizzyLauncher.UI/Resources/20/minimise.png and b/FizzyLauncher.UI/Resources/20/minimise.png differ
diff --git a/FizzyLauncher.UI/Resources/20/minimise2.png b/FizzyLauncher.UI/Resources/20/minimise2.png
index c1221e3..f7b44a8 100644
Binary files a/FizzyLauncher.UI/Resources/20/minimise2.png and b/FizzyLauncher.UI/Resources/20/minimise2.png differ
diff --git a/FizzyLauncher.UI/Resources/20/minimise3.png b/FizzyLauncher.UI/Resources/20/minimise3.png
new file mode 100644
index 0000000..2174ece
Binary files /dev/null and b/FizzyLauncher.UI/Resources/20/minimise3.png differ
diff --git a/FizzyLauncher.UI/RyzStudio/Windows/Forms/TForm.cs b/FizzyLauncher.UI/RyzStudio/Windows/Forms/TForm.cs
index 5e172fa..2c73278 100644
--- a/FizzyLauncher.UI/RyzStudio/Windows/Forms/TForm.cs
+++ b/FizzyLauncher.UI/RyzStudio/Windows/Forms/TForm.cs
@@ -1,36 +1,54 @@
-using System;
+using RyzStudio.Windows.Forms;
+using System;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
+using Resources = AppLauncher.Properties.Resources20;
namespace AppLauncher.Windows.Forms
{
public class TForm : Form
{
- protected readonly Color borderColour = Color.FromArgb(232, 231, 236);
+ protected readonly Color borderColour = Color.FromArgb(235, 234, 233);
protected readonly int borderWidth = 1;
- protected readonly Color backColour = Color.FromArgb(254, 254, 254);
+ protected readonly int resizeBorderWidth = 3;
- protected readonly Color titleBarColour = Color.FromArgb(237, 240, 247);
- protected readonly Color titleBorderColour = Color.FromArgb(232, 231, 236);
- protected readonly Color titleColour = Color.FromArgb(32, 32, 33);
- protected readonly int titleBarHeight = 56;
+ protected readonly Color backColour = Color.FromArgb(255, 255, 255);
- private bool isDragging = false;
- private Point startPosition = new Point();
+ protected readonly Color titleBackColour = Color.FromArgb(235, 234, 233);
+ protected readonly Color titleBorderColour = Color.FromArgb(200, 198, 196);
+ protected readonly Color titleColour = Color.FromArgb(102, 102, 102);
+ protected readonly int titleBarHeight = 54;
+ protected Font titleFont = null;
+ protected int titleFontTop = 0;
+
+ protected readonly int titleBarIconSize = 20;
+ protected readonly int titleBarIconMargin = 8;
+
+ protected bool isDragging = false;
+ protected Point startPosition = new Point();
+ protected Point startWindowSize = new Point();
protected bool isBusy = false;
- protected internal RyzStudio.Windows.Forms.TImageBox imageBox3;
- protected internal RyzStudio.Windows.Forms.TImageBox imageBox2;
- protected internal RyzStudio.Windows.Forms.TImageBox imageBox1;
- private NotifyIcon notifyIcon1;
- private Panel panel1;
- private ContextMenuStrip contextMenuStrip1;
- private ToolStripMenuItem exitToolStripMenuItem;
+ protected Image appIcon = null;
+ protected int appIconTop = 0;
+
+ protected bool isMinimiseEnabled = true;
+ protected bool isMaximiseEnabled = true;
+ protected bool closeOnMinimise = false;
+ protected bool enableMinimiseMenu = true;
+ protected bool enableMaximiseMenu = true;
+ protected bool enableCloseMenu = true;
+
+ protected MouseEventHandler minimiseMenuEvent = null;
+ protected MouseEventHandler maximiseMenuEvent = null;
+ protected MouseEventHandler closeMenuEvent = null;
+
private IContainer components;
+
public TForm() : base()
{
InitializeComponent();
@@ -41,42 +59,29 @@ namespace AppLauncher.Windows.Forms
this.StartPosition = FormStartPosition.Manual;
}
+ this.AutoScaleMode = AutoScaleMode.None;
this.BackColor = backColour;
this.Padding = new Padding(0);
+ this.DoubleBuffered = true;
- notifyIcon1.Text = Application.ProductName;
+ this.MouseDown += new MouseEventHandler(form_MouseDown);
+ this.MouseMove += new MouseEventHandler(form_MouseMove);
+ this.MouseUp += new MouseEventHandler(form_MouseUp);
+ this.PreviewKeyDown += new PreviewKeyDownEventHandler(form_PreviewKeyDown);
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
- this.SuspendLayout();
+ this.Text = Application.ProductName;
- imageBox3.Left = this.DisplayRectangle.Width - imageBox3.Width - 17;
- imageBox3.Top = 18;
- imageBox3.Anchor = (AnchorStyles.Top | AnchorStyles.Right);
+ initialiseLoadComponent();
- imageBox2.Left = imageBox3.Left - imageBox2.Width - 8;
- imageBox2.Top = 18;
- imageBox2.Anchor = (AnchorStyles.Top | AnchorStyles.Right);
+ if (appIcon != null) appIconTop = (int)Math.Floor((decimal)(titleBarHeight - appIcon.Height) / 2) + borderWidth;
+ titleFont = new Font(this.Font.FontFamily, 10F);
+ titleFontTop = (int)Math.Floor((decimal)(titleBarHeight - TextRenderer.MeasureText("#", titleFont).Height) / 2) + borderWidth;
- imageBox1.Left = imageBox2.Left - imageBox1.Width - 8;
- imageBox1.Top = 18;
- imageBox1.Anchor = (AnchorStyles.Top | AnchorStyles.Right);
-
- panel1.Left = this.DisplayRectangle.Left;
- panel1.Top = this.DisplayRectangle.Height - panel1.Height;
- panel1.Width = this.DisplayRectangle.Width;
- panel1.Anchor = (AnchorStyles.Left | AnchorStyles.Right | AnchorStyles.Bottom);
-
- if (this.DesignMode)
- {
- imageBox1.Visible = imageBox2.Visible = imageBox3.Visible = false;
- panel1.Visible = false;
- }
-
- this.ResumeLayout();
}
protected override void OnMouseClick(MouseEventArgs e)
@@ -112,40 +117,6 @@ namespace AppLauncher.Windows.Forms
}
}
- protected override void OnMouseDown(MouseEventArgs e)
- {
- base.OnMouseDown(e);
-
- if (e.Button != MouseButtons.Left)
- {
- return;
- }
-
- isDragging = true;
- startPosition = e.Location;
- }
-
- protected override void OnMouseMove(MouseEventArgs e)
- {
- base.OnMouseMove(e);
-
- if (isDragging)
- {
- int x = (this.Location.X + (e.Location.X - startPosition.X));
- int y = (this.Location.Y + (e.Location.Y - startPosition.Y));
-
- //this.Location = validateFormLocation(x, y);
- this.Location = new Point(x, y);
- }
- }
-
- protected override void OnMouseUp(MouseEventArgs e)
- {
- base.OnMouseUp(e);
-
- isDragging = false;
- }
-
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
@@ -158,13 +129,15 @@ namespace AppLauncher.Windows.Forms
area.Inflate((-1 * borderWidth), (-1 * borderWidth));
- g.FillRectangle(new SolidBrush(titleBarColour), area.X, area.Y, (area.Width + area.X), titleBarHeight);
+ g.FillRectangle(new SolidBrush(titleBackColour), area.X, area.Y, (area.Width + area.X), titleBarHeight);
g.DrawLine(new Pen(titleBorderColour, 1), area.X, (titleBarHeight + 1), (area.Width + area.X), (titleBarHeight + 1));
- if (!DesignMode) g.DrawImageUnscaled(this.AppIcon, 17, 13);
-
- if (!DesignMode) TextRenderer.DrawText(g, Application.ProductName, new Font(this.Font.FontFamily, 14F), new Point(58, 17), titleColour);
+ if (!DesignMode)
+ {
+ g.DrawImageUnscaled(appIcon, 17, appIconTop);
+ TextRenderer.DrawText(g, this.Text, titleFont, new Point(58, titleFontTop), titleColour);
+ }
}
protected override void OnResize(EventArgs e)
@@ -186,224 +159,313 @@ namespace AppLauncher.Windows.Forms
[Category("Appearance")]
public ContextMenuStrip TitleContextMenuStrip { get; set; } = null;
- [Browsable(false)]
- public Image AppIcon { get; set; } = null;
+ //[Browsable(false)]
+ //public Image AppIcon { get; set; } = null;
- protected Point DefaultLocation
- {
- get
- {
- Point newPosition = new Point(Cursor.Position.X, Cursor.Position.Y);
- newPosition.X -= (this.Width / 2);
- newPosition.Y -= (this.Height / 2);
+ //[Browsable(false)]
+ //public bool IsMaximiseEnabled { get; set; } = false;
- newPosition.X = Math.Max(newPosition.X, Screen.PrimaryScreen.WorkingArea.Left);
- newPosition.Y = Math.Max(newPosition.Y, Screen.PrimaryScreen.WorkingArea.Top);
+ //protected Point DefaultLocation
+ //{
+ // get
+ // {
+ // Point newPosition = new Point(Cursor.Position.X, Cursor.Position.Y);
+ // newPosition.X -= (this.Width / 2);
+ // newPosition.Y -= (this.Height / 2);
- return newPosition;
- }
- }
+ // newPosition.X = Math.Max(newPosition.X, Screen.PrimaryScreen.WorkingArea.Left);
+ // newPosition.Y = Math.Max(newPosition.Y, Screen.PrimaryScreen.WorkingArea.Top);
+
+ // return newPosition;
+ // }
+ //}
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TForm));
- this.imageBox3 = new RyzStudio.Windows.Forms.TImageBox();
- this.imageBox2 = new RyzStudio.Windows.Forms.TImageBox();
- this.imageBox1 = new RyzStudio.Windows.Forms.TImageBox();
- this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
- this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.panel1 = new System.Windows.Forms.Panel();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox3)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox2)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox1)).BeginInit();
- this.contextMenuStrip1.SuspendLayout();
this.SuspendLayout();
//
- // imageBox3
- //
- this.imageBox3.BackColor = System.Drawing.Color.Transparent;
- this.imageBox3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
- this.imageBox3.ErrorImage = null;
- this.imageBox3.Image = global::AppLauncher.Properties.Resources20.close;
- this.imageBox3.ImageHover = global::AppLauncher.Properties.Resources20.close2;
- this.imageBox3.ImageNormal = global::AppLauncher.Properties.Resources20.close;
- this.imageBox3.ImageSelected = null;
- this.imageBox3.InitialImage = null;
- this.imageBox3.IsSelected = false;
- this.imageBox3.Location = new System.Drawing.Point(169, 12);
- this.imageBox3.Name = "imageBox3";
- this.imageBox3.Size = new System.Drawing.Size(20, 20);
- this.imageBox3.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
- this.imageBox3.TabIndex = 146;
- this.imageBox3.TabStop = false;
- this.imageBox3.MouseClick += new System.Windows.Forms.MouseEventHandler(this.imageBox3_MouseClick);
- //
- // imageBox2
- //
- this.imageBox2.BackColor = System.Drawing.Color.Transparent;
- this.imageBox2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
- this.imageBox2.ErrorImage = null;
- this.imageBox2.Image = global::AppLauncher.Properties.Resources20.maximise;
- this.imageBox2.ImageHover = global::AppLauncher.Properties.Resources20.maximise;
- this.imageBox2.ImageNormal = global::AppLauncher.Properties.Resources20.maximise;
- this.imageBox2.ImageSelected = global::AppLauncher.Properties.Resources20.maximise2;
- this.imageBox2.InitialImage = null;
- this.imageBox2.IsSelected = false;
- this.imageBox2.Location = new System.Drawing.Point(139, 12);
- this.imageBox2.Name = "imageBox2";
- this.imageBox2.Size = new System.Drawing.Size(20, 20);
- this.imageBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
- this.imageBox2.TabIndex = 147;
- this.imageBox2.TabStop = false;
- this.imageBox2.MouseClick += new System.Windows.Forms.MouseEventHandler(this.imageBox2_MouseClick);
- //
- // imageBox1
- //
- this.imageBox1.BackColor = System.Drawing.Color.Transparent;
- this.imageBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
- this.imageBox1.ErrorImage = null;
- this.imageBox1.Image = global::AppLauncher.Properties.Resources20.minimise;
- this.imageBox1.ImageHover = global::AppLauncher.Properties.Resources20.minimise2;
- this.imageBox1.ImageNormal = global::AppLauncher.Properties.Resources20.minimise;
- this.imageBox1.ImageSelected = null;
- this.imageBox1.InitialImage = null;
- this.imageBox1.IsSelected = false;
- this.imageBox1.Location = new System.Drawing.Point(109, 12);
- this.imageBox1.Name = "imageBox1";
- this.imageBox1.Size = new System.Drawing.Size(20, 20);
- this.imageBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
- this.imageBox1.TabIndex = 148;
- this.imageBox1.TabStop = false;
- this.imageBox1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.imageBox1_MouseClick);
- //
- // notifyIcon1
- //
- this.notifyIcon1.ContextMenuStrip = this.contextMenuStrip1;
- this.notifyIcon1.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon1.Icon")));
- this.notifyIcon1.Visible = true;
- this.notifyIcon1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.notifyIcon1_MouseClick);
- this.notifyIcon1.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.notifyIcon1_MouseClick);
- //
- // contextMenuStrip1
- //
- this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.exitToolStripMenuItem});
- this.contextMenuStrip1.Name = "contextMenuStrip1";
- this.contextMenuStrip1.Size = new System.Drawing.Size(94, 26);
- //
- // exitToolStripMenuItem
- //
- this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
- this.exitToolStripMenuItem.Size = new System.Drawing.Size(93, 22);
- this.exitToolStripMenuItem.Text = "E&xit";
- this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
- //
- // panel1
- //
- this.panel1.BackColor = System.Drawing.Color.Transparent;
- this.panel1.Cursor = System.Windows.Forms.Cursors.SizeNS;
- this.panel1.Location = new System.Drawing.Point(109, 114);
- this.panel1.Margin = new System.Windows.Forms.Padding(0);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(200, 2);
- this.panel1.TabIndex = 149;
- this.panel1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.panel1_MouseDown);
- this.panel1.MouseMove += new System.Windows.Forms.MouseEventHandler(this.panel1_MouseMove);
- this.panel1.MouseUp += new System.Windows.Forms.MouseEventHandler(this.panel1_MouseUp);
- //
// AForm
//
- this.ClientSize = new System.Drawing.Size(421, 321);
- this.Controls.Add(this.panel1);
- this.Controls.Add(this.imageBox1);
- this.Controls.Add(this.imageBox2);
- this.Controls.Add(this.imageBox3);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
- this.Name = "AForm";
- ((System.ComponentModel.ISupportInitialize)(this.imageBox3)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox2)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox1)).EndInit();
- this.contextMenuStrip1.ResumeLayout(false);
+ this.Name = "Form";
this.ResumeLayout(false);
-
}
- private void imageBox1_MouseClick(object sender, MouseEventArgs e)
- {
- if (e.Button == MouseButtons.Left)
- {
- //this.WindowState = FormWindowState.Minimized;
- this.Visible = false;
- //notifyIcon1.Visible = true;
- }
- }
-
- private void imageBox2_MouseClick(object sender, MouseEventArgs e)
- {
- if (e.Button == MouseButtons.Left)
- {
- //this.WindowState = ((this.WindowState == FormWindowState.Maximized) ? FormWindowState.Normal : FormWindowState.Maximized);
-
- //imageBox2.IsSelected = (this.WindowState == FormWindowState.Maximized);
- }
- else if (e.Button == MouseButtons.Right)
- {
- this.TopMost = !this.TopMost;
-
- if (this.TopMost)
- {
- imageBox2.Image = imageBox2.ImageNormal = Properties.Resources20.maximise3;
- }
- else
- {
- imageBox2.Image = imageBox2.ImageNormal = Properties.Resources20.maximise;
- }
- }
- }
-
- protected virtual void imageBox3_MouseClick(object sender, MouseEventArgs e)
- {
- if (e.Button == MouseButtons.Left)
- {
- this.Close();
- }
- }
-
- private void panel1_MouseDown(object sender, MouseEventArgs e)
+ private void form_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
isDragging = true;
startPosition = e.Location;
+ startWindowSize = new Point(this.Width, this.Height);
}
}
- private void panel1_MouseUp(object sender, MouseEventArgs e)
+ private void form_MouseMove(object sender, MouseEventArgs e)
+ {
+ if (isDragging)
+ {
+ int x = (this.Location.X + (e.Location.X - startPosition.X));
+ int y = (this.Location.Y + (e.Location.Y - startPosition.Y));
+
+ //this.Location = validateFormLocation(x, y);
+ this.Location = new Point(x, y);
+ }
+ }
+
+ private void form_MouseUp(object sender, MouseEventArgs e)
{
isDragging = false;
}
- private void panel1_MouseMove(object sender, MouseEventArgs e)
+ private void form_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
{
- if (isDragging)
+ if (e.KeyCode == Keys.Escape)
{
- this.Size = new Size(this.Width, e.Y - startPosition.Y + this.Height);
+ Application.Exit();
}
}
- private void exitToolStripMenuItem_Click(object sender, EventArgs e) => this.Close();
-
- private void notifyIcon1_MouseClick(object sender, MouseEventArgs e)
+ protected virtual void initialiseLoadComponent()
{
- if (e.Button == MouseButtons.Left)
+ if (DesignMode) return;
+
+ // close
+ TImageBox closeBox = generateToolbarImageBox();
+ if (enableCloseMenu)
{
- this.Visible = !this.Visible;
+ closeBox.Image = closeBox.ImageNormal = Resources.close;
+ closeBox.ImageHover = Resources.close3;
+ //closeBox.ImageSelected = null;
+ closeBox.MouseClick += delegate (object sender, MouseEventArgs e)
+ {
+ if (e.Button != MouseButtons.Left) return;
+
+ if (closeMenuEvent != null)
+ {
+ closeMenuEvent(sender, e);
+ return;
+ }
+
+ this.Close();
+ };
+ }
+ else
+ {
+ closeBox.Image = closeBox.ImageNormal = closeBox.ImageHover = closeBox.ImageSelected = Resources.close;
}
- //notifyIcon1.Visible = !this.Visible;
+ closeBox.Left = this.DisplayRectangle.Width - closeBox.Width - 17;
+
+ this.Controls.Add(closeBox);
+
+ // maximise
+ TImageBox maximiseBox = generateToolbarImageBox();
+ if (enableMaximiseMenu)
+ {
+ maximiseBox.Image = maximiseBox.ImageNormal = (isMaximiseEnabled) ? Resources.maximise : Resources.empty;
+ maximiseBox.ImageHover = (isMaximiseEnabled) ? Resources.maximise2 : Resources.empty;
+ maximiseBox.ImageSelected = Resources.maximise3;
+ maximiseBox.MouseClick += delegate (object sender, MouseEventArgs e)
+ {
+ if (!(sender is TImageBox)) return;
+
+ TImageBox imageBox2 = (sender as TImageBox);
+
+ if (imageBox2 == null) return;
+
+ if (maximiseMenuEvent != null)
+ {
+ maximiseMenuEvent(sender, e);
+ return;
+ }
+
+ if (e.Button == MouseButtons.Left)
+ {
+ if (isMaximiseEnabled)
+ {
+ if (this.WindowState == FormWindowState.Maximized)
+ {
+ this.WindowState = FormWindowState.Normal;
+ imageBox2.Image = imageBox2.ImageNormal = Resources.maximise;
+ }
+ else
+ {
+ this.WindowState = FormWindowState.Maximized;
+ imageBox2.Image = imageBox2.ImageNormal = Resources.maximise2;
+ }
+ }
+ }
+ else if (e.Button == MouseButtons.Right)
+ {
+ this.TopMost = !this.TopMost;
+
+ if (this.TopMost)
+ {
+ imageBox2.Image = imageBox2.ImageNormal = Resources.maximise3;
+ imageBox2.ImageHover = (isMaximiseEnabled) ? Resources.maximise2 : Resources.maximise3;
+ }
+ else
+ {
+ imageBox2.Image = imageBox2.ImageNormal = (isMaximiseEnabled) ? Resources.maximise : Resources.empty;
+ imageBox2.ImageHover = (isMaximiseEnabled) ? Resources.maximise2 : Resources.empty;
+ }
+ }
+ };
+ }
+ else
+ {
+ maximiseBox.Image = maximiseBox.ImageNormal = maximiseBox.ImageHover = maximiseBox.ImageSelected = Resources.maximise;
+ }
+
+ maximiseBox.Left = closeBox.Left - maximiseBox.Width - titleBarIconMargin;
+
+ this.Controls.Add(maximiseBox);
+
+ // minimise
+ TImageBox minimiseBox = generateToolbarImageBox();
+ if (enableMinimiseMenu)
+ {
+ minimiseBox.Image = minimiseBox.ImageNormal = (isMinimiseEnabled) ? Resources.minimise : Resources.empty;
+ minimiseBox.ImageHover = (isMinimiseEnabled) ? Resources.minimise2 : Resources.empty;
+ //minimiseBox.ImageSelected = null;
+ minimiseBox.MouseClick += delegate (object sender, MouseEventArgs e)
+ {
+ if (!isMinimiseEnabled) return;
+ if (e.Button != MouseButtons.Left) return;
+
+ if (minimiseMenuEvent != null)
+ {
+ minimiseMenuEvent(sender, e);
+ return;
+ }
+
+ if (closeOnMinimise)
+ {
+ this.Close();
+ }
+ else
+ {
+ this.WindowState = FormWindowState.Minimized;
+ }
+ };
+ }
+ else
+ {
+ minimiseBox.Image = minimiseBox.ImageNormal = minimiseBox.ImageHover = minimiseBox.ImageSelected = Resources.minimise;
+ }
+
+ minimiseBox.Left = maximiseBox.Left - minimiseBox.Width - titleBarIconMargin;
+
+ this.Controls.Add(minimiseBox);
+
+ // resize
+ UserControl uc1 = new UserControl()
+ {
+ Anchor = (AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right),
+ Height = resizeBorderWidth,
+ Width = this.DisplayRectangle.Width - resizeBorderWidth,
+ Left = 0,
+ Top = this.DisplayRectangle.Height - resizeBorderWidth,
+ BackColor = Color.Transparent,
+ Cursor = Cursors.SizeNS
+ };
+ uc1.MouseDown += form_MouseDown;
+ uc1.MouseUp += form_MouseUp;
+ uc1.MouseMove += delegate (object sender, MouseEventArgs e)
+ {
+ if (isDragging)
+ {
+ this.Size = new Size(startWindowSize.X, e.Y - startPosition.Y + this.Height);
+ }
+ };
+ uc1.BringToFront();
+
+ this.Controls.Add(uc1);
+
+ UserControl uc2 = new UserControl()
+ {
+ Anchor = (AnchorStyles.Top | AnchorStyles.Right | AnchorStyles.Bottom),
+ Height = this.DisplayRectangle.Height - resizeBorderWidth,
+ Width = resizeBorderWidth,
+ Left = this.DisplayRectangle.Width - resizeBorderWidth,
+ Top = 0,
+ BackColor = Color.Transparent,
+ Cursor = Cursors.SizeWE
+ };
+ uc2.MouseDown += form_MouseDown;
+ uc2.MouseUp += form_MouseUp;
+ uc2.MouseMove += delegate (object sender, MouseEventArgs e)
+ {
+ if (isDragging)
+ {
+ this.Size = new Size(e.X - startPosition.X + this.Width, startWindowSize.Y);
+ }
+ };
+ uc2.BringToFront();
+
+ this.Controls.Add(uc2);
+
+ UserControl uc3 = new UserControl()
+ {
+ Anchor = (AnchorStyles.Bottom | AnchorStyles.Right),
+ Height = resizeBorderWidth,
+ Width = resizeBorderWidth,
+ Left = this.DisplayRectangle.Width - resizeBorderWidth,
+ Top = this.DisplayRectangle.Height - resizeBorderWidth,
+ BackColor = Color.Transparent,
+ Cursor = Cursors.SizeNWSE
+ };
+ uc3.MouseDown += form_MouseDown;
+ uc3.MouseUp += form_MouseUp;
+ uc3.MouseMove += delegate (object sender, MouseEventArgs e)
+ {
+ if (isDragging)
+ {
+ this.Size = new Size((e.X - startPosition.X + this.Width), (e.Y - startPosition.Y + this.Height));
+ }
+ };
+ uc3.BringToFront();
+
+ this.Controls.Add(uc3);
}
+ protected TImageBox generateToolbarImageBox()
+ {
+ TImageBox imageBox = new TImageBox();
+ imageBox.BackColor = Color.Transparent;
+ imageBox.BackgroundImageLayout = ImageLayout.Center;
+ imageBox.ErrorImage = null;
+ //imageBox.Image = Resources.close;
+ //imageBox.ImageHover = Resources.close2;
+ //imageBox.ImageNormal = Resources.close;
+ imageBox.ImageSelected = null;
+ imageBox.IsSelected = false;
+ //closeBox.Location = new System.Drawing.Point(169, 12);
+ imageBox.Size = new System.Drawing.Size(titleBarIconSize, titleBarIconSize);
+ imageBox.SizeMode = PictureBoxSizeMode.CenterImage;
+ //imageBox.MouseClick += new MouseEventHandler(closeBox_MouseClick);
+ //imageBox.Left = this.DisplayRectangle.Width - imageBox.Width - 17;
+ imageBox.Top = (int)Math.Floor((decimal)(titleBarHeight - titleBarIconSize) / 2);
+ imageBox.Anchor = (AnchorStyles.Top | AnchorStyles.Right);
+
+ return imageBox;
+ }
+
+ //private void exitToolStripMenuItem_Click(object sender, EventArgs e) => this.Close();
+
+ //private void notifyIcon1_MouseClick(object sender, MouseEventArgs e)
+ //{
+ // if (e.Button == MouseButtons.Left)
+ // {
+ // this.Visible = !this.Visible;
+ // }
+
+ // //notifyIcon1.Visible = !this.Visible;
+ //}
+
+
}
}
\ No newline at end of file
diff --git a/MainForm.Designer.cs b/MainForm.Designer.cs
index e535976..8a17426 100644
--- a/MainForm.Designer.cs
+++ b/MainForm.Designer.cs
@@ -47,35 +47,18 @@
this.optionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.helpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.viewHelpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
this.saveFileDialog1 = new System.Windows.Forms.SaveFileDialog();
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
- this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox3)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox2)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox1)).BeginInit();
+ this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
+ this.contextMenuStrip2 = new System.Windows.Forms.ContextMenuStrip(this.components);
+ this.exitToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.contextMenuStrip1.SuspendLayout();
+ this.contextMenuStrip2.SuspendLayout();
this.SuspendLayout();
//
- // imageBox3
- //
- this.imageBox3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.imageBox3.Image = ((System.Drawing.Image)(resources.GetObject("imageBox3.Image")));
- this.imageBox3.Location = new System.Drawing.Point(-71, 18);
- //
- // imageBox2
- //
- this.imageBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.imageBox2.Image = ((System.Drawing.Image)(resources.GetObject("imageBox2.Image")));
- this.imageBox2.Location = new System.Drawing.Point(-99, 18);
- //
- // imageBox1
- //
- this.imageBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.imageBox1.Image = ((System.Drawing.Image)(resources.GetObject("imageBox1.Image")));
- this.imageBox1.Location = new System.Drawing.Point(-127, 18);
- //
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -84,7 +67,7 @@
this.toolStripMenuItem9,
this.helpToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
- this.contextMenuStrip1.Size = new System.Drawing.Size(181, 114);
+ this.contextMenuStrip1.Size = new System.Drawing.Size(102, 92);
this.contextMenuStrip1.Opening += new System.ComponentModel.CancelEventHandler(this.contextMenuStrip1_Opening);
//
// toolStripMenuItem4
@@ -100,7 +83,7 @@
this.toolStripMenuItem10,
this.exitToolStripMenuItem});
this.toolStripMenuItem4.Name = "toolStripMenuItem4";
- this.toolStripMenuItem4.Size = new System.Drawing.Size(180, 22);
+ this.toolStripMenuItem4.Size = new System.Drawing.Size(101, 22);
this.toolStripMenuItem4.Text = "&File";
//
// toolStripMenuItem5
@@ -165,7 +148,7 @@
this.toolStripMenuItem3.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem1});
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
- this.toolStripMenuItem3.Size = new System.Drawing.Size(180, 22);
+ this.toolStripMenuItem3.Size = new System.Drawing.Size(101, 22);
this.toolStripMenuItem3.Text = "&View";
//
// toolStripMenuItem1
@@ -180,7 +163,7 @@
this.toolStripMenuItem9.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.optionToolStripMenuItem});
this.toolStripMenuItem9.Name = "toolStripMenuItem9";
- this.toolStripMenuItem9.Size = new System.Drawing.Size(180, 22);
+ this.toolStripMenuItem9.Size = new System.Drawing.Size(101, 22);
this.toolStripMenuItem9.Text = "&Tools";
//
// optionToolStripMenuItem
@@ -197,20 +180,25 @@
this.toolStripSeparator1,
this.aboutToolStripMenuItem});
this.helpToolStripMenuItem.Name = "helpToolStripMenuItem";
- this.helpToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
+ this.helpToolStripMenuItem.Size = new System.Drawing.Size(101, 22);
this.helpToolStripMenuItem.Text = "&Help";
//
// viewHelpToolStripMenuItem
//
this.viewHelpToolStripMenuItem.Name = "viewHelpToolStripMenuItem";
- this.viewHelpToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
+ this.viewHelpToolStripMenuItem.Size = new System.Drawing.Size(127, 22);
this.viewHelpToolStripMenuItem.Text = "&View Help";
this.viewHelpToolStripMenuItem.Click += new System.EventHandler(this.viewHelpToolStripMenuItem_Click);
//
+ // toolStripSeparator1
+ //
+ this.toolStripSeparator1.Name = "toolStripSeparator1";
+ this.toolStripSeparator1.Size = new System.Drawing.Size(124, 6);
+ //
// aboutToolStripMenuItem
//
this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem";
- this.aboutToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
+ this.aboutToolStripMenuItem.Size = new System.Drawing.Size(127, 22);
this.aboutToolStripMenuItem.Text = "&About";
this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click);
//
@@ -239,10 +227,27 @@
this.openFileDialog1.Filter = "Session files|*.jsonfig";
this.openFileDialog1.Title = "Choose session file";
//
- // toolStripSeparator1
+ // notifyIcon1
//
- this.toolStripSeparator1.Name = "toolStripSeparator1";
- this.toolStripSeparator1.Size = new System.Drawing.Size(177, 6);
+ this.notifyIcon1.ContextMenuStrip = this.contextMenuStrip2;
+ this.notifyIcon1.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon1.Icon")));
+ this.notifyIcon1.Text = "notifyIcon1";
+ this.notifyIcon1.Visible = true;
+ this.notifyIcon1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.notifyIcon1_MouseClick);
+ //
+ // contextMenuStrip2
+ //
+ this.contextMenuStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.exitToolStripMenuItem1});
+ this.contextMenuStrip2.Name = "contextMenuStrip2";
+ this.contextMenuStrip2.Size = new System.Drawing.Size(181, 48);
+ //
+ // exitToolStripMenuItem1
+ //
+ this.exitToolStripMenuItem1.Name = "exitToolStripMenuItem1";
+ this.exitToolStripMenuItem1.Size = new System.Drawing.Size(180, 22);
+ this.exitToolStripMenuItem1.Text = "E&xit";
+ this.exitToolStripMenuItem1.Click += new System.EventHandler(this.exitToolStripMenuItem1_Click);
//
// MainForm
//
@@ -252,20 +257,13 @@
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.ClientSize = new System.Drawing.Size(633, 400);
this.Controls.Add(this.flowLayoutPanel1);
- this.DoubleBuffered = true;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimumSize = new System.Drawing.Size(633, 280);
this.Name = "MainForm";
this.Text = "Launcher";
this.TitleContextMenuStrip = this.contextMenuStrip1;
- this.Controls.SetChildIndex(this.flowLayoutPanel1, 0);
- this.Controls.SetChildIndex(this.imageBox3, 0);
- this.Controls.SetChildIndex(this.imageBox2, 0);
- this.Controls.SetChildIndex(this.imageBox1, 0);
- ((System.ComponentModel.ISupportInitialize)(this.imageBox3)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox2)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.imageBox1)).EndInit();
this.contextMenuStrip1.ResumeLayout(false);
+ this.contextMenuStrip2.ResumeLayout(false);
this.ResumeLayout(false);
}
@@ -293,6 +291,9 @@
private System.Windows.Forms.ToolStripMenuItem viewHelpToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem aboutToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
+ private System.Windows.Forms.NotifyIcon notifyIcon1;
+ private System.Windows.Forms.ContextMenuStrip contextMenuStrip2;
+ private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem1;
}
}
diff --git a/MainForm.cs b/MainForm.cs
index a5fd747..01a34f2 100644
--- a/MainForm.cs
+++ b/MainForm.cs
@@ -29,13 +29,19 @@ namespace AppLauncher
protected OptionsForm optionsForm = null;
protected string sessionFilename = null;
+ protected bool requestExit = false;
public MainForm() : base()
{
InitializeComponent();
- this.AppIcon = Properties.Resources.app_icon_32;
+ notifyIcon1.Text = Application.ProductName;
+
this.StartPosition = FormStartPosition.WindowsDefaultBounds;
+
+ appIcon = Properties.Resources.app_icon_32;
+ enableMaximiseMenu = false;
+ closeOnMinimise = true;
}
protected override void OnLoad(EventArgs e)
@@ -67,6 +73,15 @@ namespace AppLauncher
if (this.CurrentSession == null) this.CurrentSession = new LauncherSession();
+ if (this.CurrentSession.HideOnClose && !requestExit)
+ {
+ this.Visible = !this.Visible;
+ e.Cancel = true;
+ return;
+ }
+
+ requestExit = false;
+
if (string.IsNullOrWhiteSpace(sessionFilename))
{
// do nothing
@@ -243,7 +258,11 @@ namespace AppLauncher
private void toolStripMenuItem1_Click(object sender, EventArgs e) => this.TopMost = !this.TopMost;
- private void exitToolStripMenuItem_Click(object sender, EventArgs e) => this.Close();
+ private void exitToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ requestExit = true;
+ this.Close();
+ }
private void optionToolStripMenuItem_Click(object sender, EventArgs e)
{
@@ -253,28 +272,6 @@ namespace AppLauncher
invalidateHotKey();
}
- protected override void imageBox3_MouseClick(object sender, MouseEventArgs e)
- {
- if (e.Button == MouseButtons.Left)
- {
- if (this.CurrentSession == null)
- {
- this.Close();
- }
- else
- {
- if (this.CurrentSession.HideOnClose)
- {
- this.Visible = !this.Visible;
- }
- else
- {
- this.Close();
- }
- }
- }
- }
-
protected async Task collapseWindow(int width, int increment = 6)
{
await Task.Run(() =>
@@ -542,5 +539,19 @@ namespace AppLauncher
private void aboutToolStripMenuItem_Click(object sender, EventArgs e) => MessageBox.Show(Application.ProductName + " v" + Application.ProductVersion, "About", MessageBoxButtons.OK, MessageBoxIcon.Information);
+ private void notifyIcon1_MouseClick(object sender, MouseEventArgs e)
+ {
+ if (e.Button == MouseButtons.Left)
+ {
+ this.Visible = !this.Visible;
+ }
+ }
+
+ private void exitToolStripMenuItem1_Click(object sender, EventArgs e)
+ {
+ requestExit = true;
+ this.Close();
+ }
+
}
}
diff --git a/MainForm.resx b/MainForm.resx
index 98f90b3..12b1ad5 100644
--- a/MainForm.resx
+++ b/MainForm.resx
@@ -117,36 +117,6 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wwAADsMBx2+oZAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAD9SURBVDhP1ZVN
- CsIwEIWz0hMoehX1fv4s3Ui1ScTlpHXpBdyJKwsKuq7XqJl0HLREobEbHzx4mUk+WhqmYj7ftVc6mcXa
- 3GNliiCXZ6cA0BIO5tsU5ol4PtlSmYEIVLxOhwTMBYWCesFizv8CbW1vfVxstl0qCcxYwx6VWMhAfwRK
- BYeyBxmCShhkWMMebWMxh0NFSkFnpcypBJhrrJIz5YvW0KNtLOZw8MhBJTiQszQ3HwzFHA4eVYFSwi2K
- 0j6138QcDhV9e2UflDkcKmr8o9has9emrv4J+BysdgRRr7bsdRoR0I2vKS1+ttTJ2P0C7AKh+WuzpvHs
- BABaDyfvLuW63njGAAAAAElFTkSuQmCC
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wwAADsMBx2+oZAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAACTSURBVDhPY5g0
- aRv77PlruubMX/1szrzV/8nCEL2dq1atYmMAG4ZNEXm4gwHmslnzVlsxkAnmLFhrDTXwKQOU8R8qRzaA
- m0MXA4H8wzBxPPgwVDkYwMTpYyA5YNTAUQPJAEPJQFjBCiyCoHIkg7lzV9lADQQXX51QDsV47vw17eAq
- AMgBGfoUWZJEDNLbsWrVKjYA+HjZeiQ05EUAAAAASUVORK5CYII=
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wwAADsMBx2+oZAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAACTSURBVDhPY5g0
- aRv77PlruubMX/1szrzV/8nCEL2dq1atYmMAG4ZNEXm4gwHmslnzVlsxkAnmLFhrDTXwKQOU8R8qRzaA
- mzNqINlg1MChZiCQfxgmjgcfhioHA5g4fQwkB9DQQFjBCiyCoHIkg7lzV9lADQQXX51QDsV47vw17eAq
- AMgBGfoUWZJEDNLbsWrVKjYA+QjZeove9ZMAAAAASUVORK5CYII=
-
-
17, 17
@@ -156,6 +126,310 @@
308, 17
+
+ 448, 17
+
+
+ 561, 17
+
+
+
+
+ AAABAAQAMDAAAAEAIACoJQAARgAAACAgAAABACAAqBAAAO4lAAAYGAAAAQAgAIgJAACWNgAAEBAAAAEA
+ IABoBAAAHkAAACgAAAAwAAAAYAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGxc
+ VU5rW1Tna1tU22paU5BsXVVCgEBABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAaltTZWtbVPxrW1T/a1tU/2tbVP9rW1T/a1tU7mtbU6VrXFNWbVtbDgAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAABqWlR/a1tU/2tbVP9rW1T/a1tU/2tbVP9rW1T/a1tU/2tbVP9rW1T/a1tU+Wta
+ VLprW1Nrb15VHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAVVVVA2tbVJhrW1T/a1tU/2tbVP+NgXz/2NPR/6+mov+Bc23/a1tU/2tb
+ VP9rW1T/a1tU/2tbVP9rW1T/a1tU/2tbVc1sXFSAa1xSMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABtSUkHa1xUqmtbVP9rW1T/a1tU/5iNiP/6+fn/////////
+ ////////6+no/7+4tf+Sh4L/bV5X/2tbVP9rW1T/a1tU/2tbVP9rW1T/a1tU/2tbVOFrXFOZallTTW1J
+ SQcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGlaWhFqW1TCa1tU/2tbVP9rW1T/o5mV//38
+ /P//////////////////////////////////////9PPy/8jDwP+cko3/c2Nd/2tbVP9rW1T/a1tU/2tb
+ VP9rW1T/a1tU/2tbVPVrW1SzalxUXmlaWhEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAalhYHWtbVNRrW1T/a1tU/2tb
+ VP+1rar/////////////////////////////////////////////////////////////////+vn5/9LN
+ y/+lm5f/eGpj/2tbVP9rW1T/a1tU/2tbVP9rW1T/a1tU/2tbVPtrWlS9bFxVb2xdVSEAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABrWVMra1tU42tb
+ VP9rW1T/bV1W/8S9u///////////////////////////////////////////////////////////////
+ /////////////////////////v7+/97a2f+xqKT/g3Zw/2tbVP9rW1T/a1tU/2tbVP9rW1T/a1tU/2tb
+ VP5qW1V4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGpZ
+ VTxrW1Tua1tU/2tbVP9wYVr/0czK////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////+ro5/+8tbL/j4N+/21d
+ Vv9rW1T/a1tU/2tbVP9rW1TpAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAbFxTUGtbVPZrW1T/a1tU/3VnYP/d2df/////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////Tz8v/Iw8D/dmdh/2tbVP9rW1T/blpTJQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAABsXFRha1tU+2tbVP9rW1T/emxl/+Th4P//////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////m5CL/2tbVP9rW1T/a1tTXwAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGtaVHdrW1T/a1tU/2tbVP+DdnD/7uzs/////////////Pvw//z6
+ 7v/8+u7//Pru//z67v/8+u7//Pru//z67v/9/PT///////////////////////z4+f/79fX/+/X1//v1
+ 9f/79fX/+/X1//v19f/79fX//Pb2////////////////////////////vLWy/2tbVP9rW1T/a1xTmQAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVVVUDa1tUmGtbVP9rW1T/a1tU/4t/ev/08/L/////////
+ ///cyT7/0bcA/9G3AP/RtwD/0bcA/9G3AP/RtwD/0bcA/9G3AP/RtwD/6Nt+////////////4bG1/8Rl
+ bP/EZWz/xGVs/8RlbP/EZWz/xGVs/8RlbP/EZWz/xGVs/9KKkP//////////////////////3tvZ/2tb
+ VP9rW1T/a1tU1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG1JSQdrW1Sra1tU/2tbVP9rW1T/mY6J//r5
+ +f////////////389f/RtwD/0bcA/9G3AP/RtwD/0bcA/9G3AP/RtwD/0bcA/9G3AP/RtwD/28Y1////
+ ////////0IWL/8RlbP/EZWz/xGVs/8RlbP/EZWz/xGVs/8RlbP/EZWz/xGVs/8RlbP/9+fn/////////
+ /////////Pz8/3BhWv9rW1T/a1tU/nFVVRIAAAAAAAAAAAAAAAAAAAAAaVpaEWtcVMNrW1T/a1tU/2tb
+ VP+kmpb//fz8//////////////////389P/RtwD/0bcA/+TVbP/w56r/8Oeq//Dnqv/w56r/8Oeq/93K
+ Qv/RtwD/28Y1////////////0IWL/8RlbP/TjZL/68zO/+vMzv/rzM7/68zO/+vMzv/dpqr/xGVs/8Rl
+ bP/8+Pn//////////////////////46CfP9rW1T/a1tU/2xbVEkAAAAAAAAAAAAAAABsWFgaa1xU0Wtb
+ VP9rW1T/a1tU/7CopP////////////////////////////389P/RtwD/0bcA/+7lov//////////////
+ /////////////+PTY//RtwD/28Y1////////////0IWL/8RlbP/boaX/////////////////////////
+ ///px8n/xGVs/8RlbP/8+Pn//////////////////////7CopP9rW1T/a1tU/2tbVIMAAAAAAAAAAAAA
+ AABqXFTOa1tU/2tbVP9tXlf/xr+9//////////////////////////////////389P/RtwD/0bcA/+7l
+ ov///////////////////////////+PTY//RtwD/28Y1////////////0IWL/8RlbP/boaX/////////
+ ///////////////////px8n/xGVs/8RlbP/8+Pn//////////////////////9LNy/9rW1T/a1tU/2tb
+ VL8AAAAAAAAAAAAAAABrW1Tva1tU/2tbVP/KxML///////////////////////////////////////38
+ 9P/RtwD/0bcA/+7lov///////////////////////////+PTY//RtwD/28Y1////////////0IWL/8Rl
+ bP/boaX////////////////////////////px8n/xGVs/8RlbP/8+Pn///////////////////////Py
+ 8v9sXFX/a1tU/2tbVPRmZmYFAAAAAAAAAABrW1W4a1tU/2tbVP/Oycf/////////////////////////
+ //////////////389P/RtwD/0bcA/+7lov///////////////////////////+PTY//RtwD/28Y1////
+ ////////0IWL/8RlbP/boaX////////////////////////////px8n/xGVs/8RlbP/8+Pn/////////
+ //////////////////+CdG7/a1tU/2tbVP9sXVM0AAAAAAAAAABqWlR/a1tU/2tbVP+tpKD/////////
+ //////////////////////////////389P/RtwD/0bcA/+7lov///////////////////////////+PT
+ Y//RtwD/28Y1////////////0IWL/8RlbP/boaX////////////////////////////px8n/xGVs/8Rl
+ bP/8+Pn///////////////////////////+jmZX/a1tU/2tbVP9rWlNuAAAAAAAAAABtWlNEa1tU/2tb
+ VP+Lfnn///////////////////////////////////////389P/RtwD/0bcA/93JQf/j1Gb/49Rm/+PU
+ Zv/j1Gb/49Rm/9jCJ//RtwD/28Y1////////////0IWL/8RlbP/NfYL/3KOn/9yjp//co6f/3KOn/9yj
+ p//TjJH/xGVs/8RlbP/8+Pn////////////////////////////Fv7z/a1tU/2tbVP9qW1OoAAAAAAAA
+ AABqVVUMa1tU+2tbVP9uXlf/+fn4//////////////////////////////////389P/RtwD/0bcA/9G3
+ AP/RtwD/0bcA/9G3AP/RtwD/0bcA/9G3AP/RtwD/28c5////////////0IWL/8RlbP/EZWz/xGVs/8Rl
+ bP/EZWz/xGVs/8RlbP/EZWz/xGVs/8Rmbf/9+vr////////////////////////////n5eT/a1tU/2tb
+ VP9rW1TkAAAAAAAAAAAAAAAAa1tUz2tbVP9rW1T/3NjW//////////////////////////////////38
+ 9v/axTP/2sUz/9rFM//axTP/2sUz/9rFM//axTP/2sUz/9rFM//bxzj/8Ois////////////2p2i/9CE
+ if/QhIn/0ISJ/9CEif/QhIn/0ISJ/9CEif/QhIn/0ISJ/+GwtP//////////////////////////////
+ ///+/v7/dWdg/2tbVP9rW1T/alhYHQAAAAAAAAAAa1tUlGtbVP9rW1T/ubKv////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////l4uG/2tbVP9rW1T/a1pUWAAAAAAAAAAAbFtVWmtbVP9rW1T/mI2I////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////uLGt/2tbVP9rW1T/a1tUkgAAAAAAAAAAa1pSH2tb
+ VP9rW1T/dmdh//7+/v////////////////////////////////+rnPH/fGTp/3xk6f98ZOn/fGTp/3xk
+ 6f98ZOn/fGTp/3xk6f9/aOr/ysD2////////////rOH9/zi4+v8ztvr/M7b6/zO2+v8ztvr/M7b6/zO2
+ +v8ztvr/M7b6/33R/P//////////////////////////////////////2tbV/2tbVP9rW1T/a1tVzQAA
+ AAAAAAAAAAAAAGtbVONrW1T/a1tU/+jm5f////////////////////////////r5/v9cPuT/Wz3k/1s9
+ 5P9bPeT/Wz3k/1s95P9bPeT/Wz3k/1s95P9bPeT/gGjq////////////Obj6/wCk+f8ApPn/AKT5/wCk
+ +f8ApPn/AKT5/wCk+f8ApPn/AKT5/wGk+f/3/P//////////////////////////////////+vn5/25f
+ WP9rW1T/a1tU/GpVVQwAAAAAAAAAAGtcVKprW1T/a1tU/8bAvf////////////////////////////j3
+ /v9bPeT/Wz3k/4Vu6/+di+//nYvv/52L7/+di+//nYvv/3Rb6P9bPeT/fWXq////////////Nbf6/wCk
+ +f8nsvr/Zsj7/2bI+/9myPv/Zsj7/2bI+/9Bu/v/AKT5/wCk+f/0+///////////////////////////
+ /////////////4p9eP9rW1T/a1tU/2xdVUIAAAAAAAAAAGtbVHBrW1T/a1tU/6Sblv//////////////
+ //////////////j3/v9bPeT/Wz3k/8O49f///////////////////////////5uI7v9bPeT/fWXq////
+ ////////Nbf6/wCk+f9jx/v///////////////////////////+i3v3/AKT5/wCk+f/0+///////////
+ /////////////////////////////6yjn/9rW1T/a1tU/2pcVH0AAAAAAAAAAGxdUzRrW1T/a1tU/4J0
+ bv////////////////////////////j3/v9bPeT/Wz3k/8O49f///////////////////////////5uI
+ 7v9bPeT/fWXq////////////Nbf6/wCk+f9jx/v///////////////////////////+i3v3/AKT5/wCk
+ +f/0+////////////////////////////////////////87Jx/9rW1T/a1tU/2tbVbgAAAAAAAAAAGZm
+ ZgVrW1T0a1tU/2xcVf/z8vL///////////////////////j3/v9bPeT/Wz3k/8O49f//////////////
+ /////////////5uI7v9bPeT/fWXq////////////Nbf6/wCk+f9jx/v/////////////////////////
+ //+i3v3/AKT5/wCk+f/0+////////////////////////////////////////8rEwv9rW1T/a1tU/2tb
+ VO8AAAAAAAAAAAAAAABrW1S/a1tU/2tbVP/Szcv///////////////////////j3/v9bPeT/Wz3k/8O4
+ 9f///////////////////////////5uI7v9bPeT/fWXq////////////Nbf6/wCk+f9jx/v/////////
+ //////////////////+i3v3/AKT5/wCk+f/0+///////////////////////////////////xr+9/21e
+ V/9rW1T/a1tU/2pcVM4AAAAAAAAAAAAAAABrWlSFa1tU/2tbVP+xqaX///////////////////////j3
+ /v9bPeT/Wz3k/8O49f///////////////////////////5uI7v9bPeT/fWXq////////////Nbf6/wCk
+ +f9jx/v///////////////////////////+i3v3/AKT5/wCk+f/0+///////////////////////////
+ //+6sq//bFxV/2tbVP9rW1T/a1tT1m9eVR4AAAAAAAAAAAAAAABpXFVLa1tU/2tbVP+Pg37/////////
+ //////////////j3/v9bPeT/Wz3k/6CP7//Ivvb/yL72/8i+9v/Ivvb/yL72/4Vv6/9bPeT/fWXq////
+ ////////Nbf6/wCk+f9CvPv/quH9/6rh/f+q4f3/quH9/6rh/f9sy/z/AKT5/wCk+f/0+///////////
+ /////////f39/6ifmv9rW1T/a1tU/2tbVP9rW1TIZllZFAAAAAAAAAAAAAAAAAAAAABpWloRa1tU/Wtb
+ VP9wYVr//Pv7//////////////////j3/v9bPeT/Wz3k/1s95P9bPeT/Wz3k/1s95P9bPeT/Wz3k/1s9
+ 5P9bPeT/fWXq////////////Nbf6/wCk+f8ApPn/AKT5/wCk+f8ApPn/AKT5/wCk+f8ApPn/AKT5/wCk
+ +f/1+//////////////7+vr/nZKO/2tbVP9rW1T/a1tU/2tcVbJmZk0KAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAa1tT1mtbVP9rW1T/4Nzb//////////////////j3/v9bPeT/Wz3k/1s95P9bPeT/Wz3k/1s9
+ 5P9bPeT/Wz3k/1s95P9bPeT/rJ3x////////////Nbf6/wCk+f8ApPn/AKT5/wCk+f8ApPn/AKT5/wCk
+ +f8ApPn/AKT5/z66+v////////////b19P+Pg37/a1tU/2tbVP9rW1T/a1tTn4BAQAQAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAa1pUm2tbVP9rW1T/vbaz//////////////////7+///08v3/9PL9//Ty
+ /f/08v3/9PL9//Ty/f/08v3/9PL9//Ty/f/49/7/////////////////8vr//+75///u+f//7vn//+75
+ ///u+f//7vn//+75///u+f//8Pr/////////////8O/u/4Z5dP9rW1T/a1tU/2tbVP9rXFSIAAAAAQAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbFxUYWtbVP9rW1T/nJGM////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////////////////////n5eT/fG5o/2tbVP9rW1T/a1tU/Gta
+ VWkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAblpTJWtbVP9rW1T/dmdh/8jD
+ wP/08/L/////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////93Z1/91Z2D/a1tU/2tb
+ VP9rW1T2bFxTUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWtb
+ VOlrW1T/a1tU/2tbVP9tXVb/j4N+/7y1sv/q6Of/////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////0czK/3Bh
+ Wv9rW1T/a1tU/2tbVO5qWVU8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAGpbVXhrW1T+a1tU/2tbVP9rW1T/a1tU/2tbVP9rW1T/g3Zw/7GopP/e2tn//v7+////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///Evbv/bV1W/2tbVP9rW1T/a1tU42tZUysAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsXVUhbFxVb2taVL1rW1T7a1tU/2tbVP9rW1T/a1tU/2tb
+ VP9rW1T/eGpj/6Wbl//Szcv/+vn5////////////////////////////////////////////////////
+ /////////////7Wtqv9rW1T/a1tU/2tbVP9rW1TUalhYHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABpWloRbFpUVWtb
+ U6JrW1Twa1tU/2tbVP9rW1T/a1tU/2tbVP9rW1T/cGFa/5KHgv+/uLX/8O/u////////////////////
+ ///////////////////9/f3/p56a/2tbVP9rW1T/a1tU/2pbVcdmWVkUAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAABVVVUDallVPGtbVJFrW1Pia1tU/2tbVP9rW1T/a1tU/2tbVP9rW1T/bFxV/4l8
+ dv+1ran/4d7d//////////////////v6+v+cko3/a1tU/2tbVP9rW1T/a1tUsXFVVQkAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAa1xSMmxcVIBrW1XNa1tU/2tb
+ VP9rW1T/a1tU/2tbVP9rW1T/a1tU/4Fzbf+vpqL/2NPR/42BfP9rW1T/a1tU/2tbVP9rW1SYVVVVAwAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAb15VHmtbU2trWlS6a1tU+WtbVP9rW1T/a1tU/2tbVP9rW1T/a1tU/2tbVP9rW1T/a1tU/2pa
+ VH8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbVtbDmtcU1ZrW1Ola1tU7mtbVP9rW1T/a1tU/2tb
+ VP9rW1T8altTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgEBABGxd
+ VUJqWlOQa1tU22tbVOdsXFVOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//4H///+sEP//AD///6wQ//4AB///rBD/+AAA//+sEP/w
+ AAAP/6wQ/+AAAAH/rBD/wAAAAD+sEP+AAAAAH6wQ/wAAAAAPrBD+AAAAAA+sEPwAAAAAD6wQ+AAAAAAP
+ rBDgAAAAAA+sEMAAAAAAB6wQgAAAAAAHrBAAAAAAAAesEAAAAAAAB6wQAAAAAAADrBAAAAAAAAOsEAAA
+ AAAAA6wQAAAAAAADrBAAAAAAAAOsEIAAAAAAAawQgAAAAAABrBCAAAAAAAGsEIAAAAAAAawQwAAAAAAA
+ rBDAAAAAAACsEMAAAAAAAKwQwAAAAAAArBDAAAAAAACsEOAAAAAAAKwQ4AAAAAAArBDgAAAAAAGsEOAA
+ AAAAA6wQ8AAAAAAHrBDwAAAAAA+sEPAAAAAAP6wQ8AAAAAB/rBDwAAAAAP+sEPgAAAAB/6wQ/AAAAAP/
+ rBD/gAAAB/+sEP/wAAAP/6wQ//8AAB//rBD//+AAf/+sEP///AD//6wQ////gf//rBAoAAAAIAAAAEAA
+ AAABACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAABsXFRha1tU7GtbVcFqW1RzalxVJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAbFtVe2tbVP5rW1T/a1tU/2tbVP9rW1T/a1tT1mtcVIhrWVU5gICAAgAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAVVVVA2xbVJVrW1T/bV5X/8K7uf/RzMr/pJqW/3hpY/9rW1T/a1tU/2tb
+ VP9rW1TpalxTnGxcVU5mZk0KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAG1JSQdrW1Spa1tU/29fWf/Oycf//////////////////v7+/+He
+ 3f+1ran/iXx2/2tbVP9rW1T/a1tU/2tbVPZqW1W7bFxVb2xYWBoAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwYFAQbFxUwGtbVP91ZmD+3trZ////////////////////
+ ////////////////////////6efm/7y0sf+Ogn3/bV1W/2tbVP9rW1T/a1tU/WtbVMZrWlR3ZlVVDwAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaF5VG2tbVNJrW1T/fW9p/+fl5P//////////////
+ ///////////////////////////////////////////////////z8vL/x8G//5uQi/9xYlv/a1tU/2tb
+ VP9rW1SPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGpdVylrW1Tha1tU/4V4cv/w7u7/////////
+ //////////////////////////////////////////////////////////////////////////////r6
+ +v/Evbv/a1tU/2xbVMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABrXVM3a1tU62tbVP+MgHr/9PPy////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////v6+v9vX1n/a1tU+2pVVQwAAAAAAAAAAAAAAAAAAAAAallTTWtbVPVrW1T/mY6K//r5
+ +f///v3/1r8d/9G3AP/RtwD/0bcA/9G3AP/RtwD/07oL//r34//57u//x2xy/8RlbP/EZWz/xGVs/8Rl
+ bP/EZWz/y3d9///+/v///////////4yAev9rW1T/alpSQQAAAAAAAAAAAAAAAGpaVWBrW1T7a1tU/6mg
+ nP/+/v7///////799//RtwD/2cMr/+PUZv/j1Gb/49Rm/9zIPP/RtwD/9vHM//Pg4v/EZWz/0omP/9yj
+ p//co6f/3KOn/85/hf/EZWz//fr6////////////rqai/2tbVP9sW1V7AAAAAAAAAABrW1R5a1tU/2xc
+ Vf+4sa3//////////////////v33/9G3AP/k1Wz/////////////////7OGW/9G3AP/28cz/8+Di/8Rl
+ bP/nwML/////////////////3aaq/8RlbP/9+vr////////////RzMn/a1tU/2pbVLYAAAAAAAAAAGtb
+ VO5rW1T/w726///////////////////////+/ff/0bcA/+TVbP/////////////////s4Zb/0bcA//bx
+ zP/z4OL/xGVs/+fAwv/////////////////dpqr/xGVs//36+v////////////Lw8P9rW1T/a1tU74CA
+ gAIAAAAAa1tUxWtbVP/Z1dP///////////////////////799//RtwD/5NVs/////////////////+zh
+ lv/RtwD/9vHM//Pg4v/EZWz/58DC/////////////////92mqv/EZWz//fr6/////////////////4By
+ bP9rW1T/aF1RLAAAAABqXFSLa1tU/7iwrf///////////////////////v33/9G3AP/dyUH/7eKZ/+3i
+ mf/t4pn/4dBa/9G3AP/28cz/8+Di/8RlbP/Zm6D/58HE/+fBxP/nwcT/04yR/8RlbP/9+vr/////////
+ ////////opeT/2tbVP9qW1NlAAAAAGtbVVFrW1T/louG///////////////////////+/ff/0bcA/9G3
+ AP/RtwD/0bcA/9G3AP/RtwD/0bcB//n12//z4OL/xGVs/8RlbP/EZWz/xGVs/8RlbP/EZWz/x2xy//79
+ /f/////////////////Dvbr/a1tU/2tbU58AAAAAaF1RFmtbVP90ZV///v7+///////////////////+
+ /f/28cz/9vHM//bxzP/28cz/9vHM//bxzP/49dr///////35+f/z4OL/8+Di//Pg4v/z4OL/8+Di//Pg
+ 4v/47e7//////////////////////+Xi4f9rW1T/altU2gAAAAAAAAAAa1xT3GtbVP/m4+L/////////
+ /////////////+zp/P/e2Pr/3tj6/97Y+v/e2Pr/3tj6/+fj+////////////9ry/v/M7f7/zO3+/8zt
+ /v/M7f7/zO3+/+L1/v///////////////////////v7+/3VmX/9rW1T+aF1RFgAAAABsWlSha1tU/8S+
+ u//////////////////8/P//YkXl/1s95P9bPeT/Wz3k/1s95P9bPeT/XD7k/+jk+//b8v7/AaT5/wCk
+ +f8ApPn/AKT5/wCk+f8ApPn/C6j5//v+////////////////////////lYmE/2tbVP9rWlRPAAAAAGpc
+ VGdrW1T/o5mU//////////////////r5/v9bPeT/hW7r/72x9P+9sfT/vbH0/5WB7v9bPeT/3tj6/8zt
+ /v8ApPn/WsT7/5nb/f+Z2/3/mdv9/0G7+/8ApPn/9/z///////////////////////+2r6v/a1tU/2pb
+ VIkAAAAAaF1RLGtbVP+Acmz/////////////////+vn+/1s95P+gj+//////////////////u6/0/1s9
+ 5P/e2Pr/zO3+/wCk+f+W2v3/////////////////bMv8/wCk+f/3/P///////////////////////9nV
+ 0/9rW1T/a1tUxQAAAACAgIACa1tU72tbVP/y8PD////////////6+f7/Wz3k/6CP7///////////////
+ //+7r/T/Wz3k/97Y+v/M7f7/AKT5/5ba/f////////////////9sy/z/AKT5//f8////////////////
+ ////////w726/2tbVP9rW1TuAAAAAAAAAABqW1S2a1tU/9HMyf////////////r5/v9bPeT/oI/v////
+ /////////////7uv9P9bPeT/3tj6/8zt/v8ApPn/ltr9/////////////////2zL/P8ApPn/9/z/////
+ /////////////7ixrf9sXFX/a1tU/2tbVHkAAAAAAAAAAGpcVH1rW1T/r6ej////////////+vn+/1s9
+ 5P93Xun/nYvv/52L7/+di+//gmvq/1s95P/e2Pr/zO3+/wCk+f88ufr/Zsj7/2bI+/9myPv/K7P6/wCk
+ +f/3/P////////7+/v+upaH/a1tU/2tbVPxqXFRnAAAAAAAAAAAAAAAAa1tUQ2tbVP+NgXz/////////
+ ///6+f7/Wz3k/1s95P9bPeT/Wz3k/1s95P9bPeT/YkXl/+3q/P/M7f7/AKT5/wCk+f8ApPn/AKT5/wCk
+ +f8ApPn/Ha76//3+///7+vr/nZOO/2tbVP9rWlT4altVVAAAAAAAAAAAAAAAAAAAAAB0XV0La1tU+29f
+ Wf/7+vr/////////////////////////////////////////////////////////////////////////
+ ////////////////////////9vX0/5CEfv9rW1T/bFxU72pZVTwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AABsW1TMa1tU/8S9u//6+vr/////////////////////////////////////////////////////////
+ //////////////////////////////Du7v+FeHL/a1tU/2tbVOFqXVcpAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAGtbVI9rW1T/a1tU/3FiW/+bkIv/x8G///Py8v//////////////////////////////
+ ///////////////////////////////////n5eT/fW9p/2tbVP9rW1TSaF5VGwAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAZlVVD2taVHdrW1TGa1tU/WtbVP9rW1T/bV1W/46Cff+8tLH/6efm////
+ ////////////////////////////////////////3trZ/3ZnYf9rW1T/bFxUwHBgUBAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmWVkUalxUXmtcVKprW1Tya1tU/2tb
+ VP9rW1T/f3Fr/6uinv/Y09H//fz8/////////////////9LNy/9xYVv/a1tU/2paVa9xVVUJAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGZm
+ TQpsXFVOalxTnGtbVOlrW1T/a1tU/2tbVP94aWP/pJqW/9HMyv/Cu7n/bV5X/2tbVP9sW1SVVVVVAwAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAgICAAmtZVTlrXFSIa1tT1mtbVP9rW1T/a1tU/2tbVP9rW1T+bFtVewAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAalxVJGpbVHNrW1XBa1tU7Gxc
+ VGEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/g////wA///wAB//4A
+ AD/8AAAH+AAAB/AAAAfgAAADwAAAA4AAAAMAAAADAAAAAQAAAAEAAAABAAAAAQAAAAGAAAAAgAAAAIAA
+ AACAAAAAgAAAAMAAAADAAAABwAAAA8AAAAfgAAAP4AAAH+AAAD/8AAB//4AA///wA////wf/KAAAABgA
+ AAAwAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAa1tTa2xcVfBsXFW1bFpVZmZcUhkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFrWlSFa1tU/4+Dfv+AcWv8a1tU/2tb
+ VP5tXlbMa1xUemxbVS0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAVVVVA2xbVJprW1T/qqCc//7+/v//////6+no/7+4tf+RhoH9bF1W/mtbVP9tXlbia1xTmWpZ
+ U02AVVUGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0XV0LbFxVtWxcVf+5sq//////////
+ ////////////////////////8/Hx/8bAvf+Zjor/cGBa/WtbVP9tXVbxaltUo2heVRsAAAAAAAAAAAAA
+ AAAAAAAAAAAAAGZZWRRtXFbKbV1W/sjCv///////////////////////////////////////////////
+ ////////+vn5/9LNy/+mnJj/bV1W/WtbVIMAAAAAAAAAAAAAAAAAAAAAaFhYIG1eV9pvYFn808/N////
+ ////////////////////////////////////////////////////////////////////////in55/W1d
+ Vr4AAAAAAAAAAAAAAABoXVEsbV5X53NlXvzd2tj//v78/9S8EP/RtwD/0bcA/9G3AP/RtwD/8Oit/+zN
+ 0P/EZWz/xGVs/8RlbP/EZWz/yG91//79/f//////raSg/2xcVfaAQEAEAAAAAGxcVEBtXVbzfG5n++jm
+ 5f///////v35/9G3AP/v5qf/9vHM//bxzP/Ywij/7eKZ/+fBxP/NfYP/8+Di//Pg4v/rysz/xGVs//77
+ /P//////z8rH/2tbVP9rXFIyAAAAAG1dVe2CdW/98O/u/////////////v35/9G3AP/38tH/////////
+ ///axTL/7eKZ/+fBxP/Qg4n////////////04+T/xGVs//77/P//////8fDv/2tbVP9sW1RtAAAAAG5e
+ Vs+ViYT+/////////////////v35/9G3AP/38tH////////////axTL/7eKZ/+fBxP/Qg4n/////////
+ ///04+T/xGVs//77/P///////////31waftqW1OoAAAAAGxaU5NyY138/v7+/////////////v35/9G3
+ AP/Zwyr/2sUz/9rFM//Tugr/7eOb/+fBxP/Ga3L/0ISJ/9CEif/OfoT/xGVs//78/P///////////6CW
+ kv9tXlflAAAAAGpcU1lrW1T/5ePh//////////////79/+3imf/t4pn/7eKZ/+3imf/t4pr/+/nr//bm
+ 5//nwcT/58HE/+fBxP/nwcT/7M3P/////////////////8K7uf9rW1T/alhYHW9eVR5rW1T/w726////
+ /////////////8rA9v+9sfT/vbH0/72x9P++svT/8vD9/+v4//+a2/3/mdv9/5nb/f+Z2/3/rOH9////
+ /////////////+Th4P9rW1T/bFtVVwAAAABtXlfnopeT/////////////Pv+/1s95P92Xej/fGTp/3xk
+ 6f9hReX/v7P0/5vb/f8KqPn/M7b6/zO2+v8qs/r/AKT5//r9//////////////7+/v9yY1z8a1tUkQAA
+ AABqW1OofXBp+///////////+/r+/1s95P/h3Pr///////////97Y+n/vbH0/5nb/f8ytvr/////////
+ ///R7/7/AKT5//n9//////////////////+ViYT+bl5WzwAAAABsW1Rta1tU//Hw7///////+/r+/1s9
+ 5P/h3Pr///////////97Y+n/vbH0/5nb/f8ytvr////////////R7/7/AKT5//n9//////////////Dv
+ 7v+CdW/9bV1V7QAAAABsXVM0a1tU/9DLyf//////+/r+/1s95P/GvPb/3tj6/97Y+v91W+j/vbH0/5nb
+ /f8osvr/zO3+/8zt/v+n4P3/AKT5//n9////////6+no/35wavxsXVX1altURgAAAACAQEAEbV1W9q6m
+ ov//////+/r+/1s95P9bPeT/Wz3k/1s95P9bPeT/ysH2/5nb/f8ApPn/AKT5/wCk+f8ApPn/EKr5//z+
+ ///g3dv/dmdh/G1dVuptWFMxAAAAAAAAAAAAAAAAbFxVv4x/ev3/////////////////////////////
+ /////////////////////////////////////////////9jT0f9xYVv8bV5W32pcVSQAAAAAAAAAAAAA
+ AAAAAAAAa1tUg21dVv2mnJj/0s3L//r5+f//////////////////////////////////////////////
+ ////////yMK//21dVv5tXFbKZllZFAAAAAAAAAAAAAAAAAAAAAAAAAAAaF5VG2pbVKNsXFXwa1tU/3Bg
+ Wv2Zjor+xsC9//Px8f////////////////////////////////+5sq//bFxV/2xcVbV0XV0LAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVVVUDallVPGtcVIhtXVbba1tU/2tbVP6Ie3X9ta2p/+He
+ 3f///////v7+/66mov9rW1T/bFpUoWZmZgUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAbFtVLWtcVHpsXVXLa1tU/mtbVP9/cWv7j4N+/2tbVP9rWlSFAAAAAQAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAZlxSGWxaVWZsXFW1bFxV8GtbU2sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8H
+ /0H8AP9B+AAPQfAAA0HgAANBwAADQYAAAUEAAAFBAAABQQAAAUEAAAFBAAAAQQAAAEGAAABBgAAAQYAA
+ AEGAAABBgAABQcAAA0HAAAdBwAAPQfAAH0H/AD9B/+D/QSgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHJhW3tvYFn0dWZgsmxbVVdmVVUPAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgICAAnFiW5eCdG705OHg/8a/vf+UiYT0cWFa+Xdo
+ YcptXFVsb15VHgAAAAAAAAAAAAAAAAAAAAAAAAAAbUlJB3NkXbKMgHr09/b2//////////////////r5
+ +f/Szcv/oJeS9XNlXfZzZV7baVxVJwAAAAAAAAAAbVtbDnNjXciZj4n1+/r6////////////////////
+ ///////////////////+/v7/pJqW+WxdVnYAAAAAamBVGHJkXdmnnpn2/f37/9S8E//axTP/2MIo/+XX
+ cP/eqa3/zX2D/9CEif/IcHf//v39/83Ixf92Z2C8AAAAAHJjXOC5sK36//////7++//bxjb///////Xw
+ yv/k1Gf/3KOn//Pf4P//////0IaL//79/f/w7u7/cWFb8gAAAAF0Zl/i4+Df///////+/vv/2cMr//bx
+ zP/u5aL/5NRn/9yjp//px8n/8+Di/85/hf/+/f3//////3hpYvNuWlMldGReo8K7uf////////79/+PU
+ Zv/j1Gb/49Rm//Dorv/qyMv/3KOn/9yjp//eqKz///7+//////+ajoryalxUXmpaVWCbkYzz//////7+
+ //+ikfD/nYvv/52L7//Lwfb/ruL9/2bI+/9myPv/b8z8//7/////////wbq3/3RlXqJuWlMleGli8///
+ ///8/P//d17p/97Y+v/DuPX/nYvv/2fJ+/+i3v3/zO3+/yuz+v/7/v///////+Pg3/90Zl/iAAAAAXFh
+ W/Lw7u7//Pz//35m6v//////3df5/52L7/9nyfv/yuz+//////82t/r/+/7///////+5sK36cmNc4AAA
+ AAB2Z2G+zsnH//z8//9iReX/fGTp/3Vb6P+jkvD/Z8n7/yiy+v8ztvr/E6v5//v9/v+to5/4c2Nd3m1b
+ UhwAAAAAbF1WdqSalvn+/v7///////////////////////////////////////v6+v+Zj4r2c2ReyW1b
+ Ww4AAAAAAAAAAGlcVSdzZV7bc2Vd9qCXkvXSzcv/+vn5//////////////////f29v+MgHr0c2Rdsm1J
+ SQcAAAAAAAAAAAAAAAAAAAAAAAAAAG9eVR5rW1NrdGRexnBhWfiShoHvxr+9/uTh4P+CdG70c2RdmYCA
+ gAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmVVUPbFtVV3VmYLJvYFn0cmFbewAA
+ AAAAAAAAAAAAAAAAAAAAAAAA+D+sQeAHrEHAAaxBgAGsQQABrEEAAKxBAACsQQAArEEAAKxBAACsQQAA
+ rEGAAKxBgAGsQYADrEHgB6xB/B+sQQ==
+
+
AAABAAQAMDAAAAEAIACoJQAARgAAACAgAAABACAAqBAAAO4lAAAYGAAAAQAgAIgJAACWNgAAEBAAAAEA
diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs
index 735590f..5fb28ec 100644
--- a/Properties/AssemblyInfo.cs
+++ b/Properties/AssemblyInfo.cs
@@ -33,4 +33,4 @@ using System.Runtime.InteropServices;
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("0.1.1.113")]
+[assembly: AssemblyFileVersion("0.1.1.144")]