diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/App.Debug.config b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/App.Debug.config
deleted file mode 100644
index 18e7f2ee..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/App.Debug.config
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/App.Release.config b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/App.Release.config
deleted file mode 100644
index 60bc4b39..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/App.Release.config
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/App.config b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/App.config
deleted file mode 100644
index 60bc4b39..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/App.config
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/ApplicationForm.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/ApplicationForm.Designer.cs
deleted file mode 100644
index 1eba1298..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/ApplicationForm.Designer.cs
+++ /dev/null
@@ -1,243 +0,0 @@
-namespace WebsitePanel.Installer
-{
- partial class ApplicationForm
- {
- ///
- /// 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()
- {
- this.components = new System.ComponentModel.Container();
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ApplicationForm));
- this.statusBar = new System.Windows.Forms.StatusStrip();
- this.statusBarLabel = new System.Windows.Forms.ToolStripStatusLabel();
- this.splitContainer = new System.Windows.Forms.SplitContainer();
- this.scopeTree = new System.Windows.Forms.TreeView();
- this.smallImages = new System.Windows.Forms.ImageList(this.components);
- this.pnlRight = new System.Windows.Forms.Panel();
- this.pnlResultView = new System.Windows.Forms.Panel();
- this.pnlDescription = new System.Windows.Forms.Panel();
- this.lblResultViewPath = new System.Windows.Forms.Label();
- this.lblResultViewTitle = new System.Windows.Forms.Label();
- this.pictureBox = new System.Windows.Forms.PictureBox();
- this.backgroundWorker = new System.ComponentModel.BackgroundWorker();
- this.lineBox2 = new WebsitePanel.Installer.LineBox();
- this.topLogoControl = new WebsitePanel.Installer.TopLogoControl();
- this.statusBar.SuspendLayout();
- this.splitContainer.Panel1.SuspendLayout();
- this.splitContainer.Panel2.SuspendLayout();
- this.splitContainer.SuspendLayout();
- this.pnlRight.SuspendLayout();
- this.pnlDescription.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).BeginInit();
- this.SuspendLayout();
- //
- // statusBar
- //
- this.statusBar.GripStyle = System.Windows.Forms.ToolStripGripStyle.Visible;
- this.statusBar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.statusBarLabel});
- this.statusBar.Location = new System.Drawing.Point(0, 431);
- this.statusBar.Name = "statusBar";
- this.statusBar.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
- this.statusBar.Size = new System.Drawing.Size(632, 22);
- this.statusBar.TabIndex = 1;
- //
- // statusBarLabel
- //
- this.statusBarLabel.Name = "statusBarLabel";
- this.statusBarLabel.Size = new System.Drawing.Size(39, 17);
- this.statusBarLabel.Text = "Ready";
- //
- // splitContainer
- //
- this.splitContainer.BackColor = System.Drawing.SystemColors.Control;
- this.splitContainer.Dock = System.Windows.Forms.DockStyle.Fill;
- this.splitContainer.Location = new System.Drawing.Point(0, 63);
- this.splitContainer.Name = "splitContainer";
- //
- // splitContainer.Panel1
- //
- this.splitContainer.Panel1.Controls.Add(this.scopeTree);
- this.splitContainer.Panel1.Padding = new System.Windows.Forms.Padding(0, 1, 0, 0);
- //
- // splitContainer.Panel2
- //
- this.splitContainer.Panel2.Controls.Add(this.pnlRight);
- this.splitContainer.Panel2.Padding = new System.Windows.Forms.Padding(0, 1, 0, 0);
- this.splitContainer.Size = new System.Drawing.Size(632, 368);
- this.splitContainer.SplitterDistance = 250;
- this.splitContainer.SplitterWidth = 2;
- this.splitContainer.TabIndex = 2;
- //
- // scopeTree
- //
- this.scopeTree.Dock = System.Windows.Forms.DockStyle.Fill;
- this.scopeTree.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.scopeTree.HideSelection = false;
- this.scopeTree.ImageIndex = 0;
- this.scopeTree.ImageList = this.smallImages;
- this.scopeTree.ItemHeight = 19;
- this.scopeTree.Location = new System.Drawing.Point(0, 1);
- this.scopeTree.Name = "scopeTree";
- this.scopeTree.SelectedImageIndex = 0;
- this.scopeTree.ShowLines = false;
- this.scopeTree.Size = new System.Drawing.Size(250, 367);
- this.scopeTree.TabIndex = 0;
- this.scopeTree.BeforeExpand += new System.Windows.Forms.TreeViewCancelEventHandler(this.OnScopeTreeBeforeExpand);
- this.scopeTree.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.OnScopeTreeAfterSelect);
- //
- // smallImages
- //
- this.smallImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth32Bit;
- this.smallImages.ImageSize = new System.Drawing.Size(16, 16);
- this.smallImages.TransparentColor = System.Drawing.Color.Transparent;
- //
- // pnlRight
- //
- this.pnlRight.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
- this.pnlRight.Controls.Add(this.pnlResultView);
- this.pnlRight.Controls.Add(this.pnlDescription);
- this.pnlRight.Dock = System.Windows.Forms.DockStyle.Fill;
- this.pnlRight.Location = new System.Drawing.Point(0, 1);
- this.pnlRight.Name = "pnlRight";
- this.pnlRight.Size = new System.Drawing.Size(380, 367);
- this.pnlRight.TabIndex = 0;
- //
- // pnlResultView
- //
- this.pnlResultView.Dock = System.Windows.Forms.DockStyle.Fill;
- this.pnlResultView.Location = new System.Drawing.Point(0, 63);
- this.pnlResultView.Name = "pnlResultView";
- this.pnlResultView.Size = new System.Drawing.Size(376, 300);
- this.pnlResultView.TabIndex = 14;
- //
- // pnlDescription
- //
- this.pnlDescription.Controls.Add(this.lineBox2);
- this.pnlDescription.Controls.Add(this.lblResultViewPath);
- this.pnlDescription.Controls.Add(this.lblResultViewTitle);
- this.pnlDescription.Controls.Add(this.pictureBox);
- this.pnlDescription.Dock = System.Windows.Forms.DockStyle.Top;
- this.pnlDescription.Location = new System.Drawing.Point(0, 0);
- this.pnlDescription.Name = "pnlDescription";
- this.pnlDescription.Size = new System.Drawing.Size(376, 63);
- this.pnlDescription.TabIndex = 13;
- //
- // lblResultViewPath
- //
- this.lblResultViewPath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.lblResultViewPath.AutoEllipsis = true;
- this.lblResultViewPath.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblResultViewPath.Location = new System.Drawing.Point(47, 28);
- this.lblResultViewPath.Name = "lblResultViewPath";
- this.lblResultViewPath.Size = new System.Drawing.Size(251, 21);
- this.lblResultViewPath.TabIndex = 15;
- this.lblResultViewPath.Text = "Path";
- //
- // lblResultViewTitle
- //
- this.lblResultViewTitle.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.lblResultViewTitle.Font = new System.Drawing.Font("Tahoma", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblResultViewTitle.Location = new System.Drawing.Point(47, 8);
- this.lblResultViewTitle.Name = "lblResultViewTitle";
- this.lblResultViewTitle.Size = new System.Drawing.Size(318, 20);
- this.lblResultViewTitle.TabIndex = 14;
- this.lblResultViewTitle.Text = "Title";
- //
- // pictureBox
- //
- this.pictureBox.Location = new System.Drawing.Point(9, 8);
- this.pictureBox.Name = "pictureBox";
- this.pictureBox.Size = new System.Drawing.Size(32, 32);
- this.pictureBox.TabIndex = 13;
- this.pictureBox.TabStop = false;
- //
- // lineBox2
- //
- this.lineBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.lineBox2.Location = new System.Drawing.Point(6, 51);
- this.lineBox2.Name = "lineBox2";
- this.lineBox2.Size = new System.Drawing.Size(366, 2);
- this.lineBox2.TabIndex = 16;
- this.lineBox2.TabStop = false;
- this.lineBox2.Text = "lineBox2";
- //
- // topLogoControl
- //
- this.topLogoControl.BackColor = System.Drawing.Color.White;
- this.topLogoControl.Dock = System.Windows.Forms.DockStyle.Top;
- this.topLogoControl.Location = new System.Drawing.Point(0, 0);
- this.topLogoControl.Name = "topLogoControl";
- this.topLogoControl.Size = new System.Drawing.Size(632, 63);
- this.topLogoControl.TabIndex = 3;
- //
- // ApplicationForm
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(632, 453);
- this.Controls.Add(this.splitContainer);
- this.Controls.Add(this.statusBar);
- this.Controls.Add(this.topLogoControl);
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MinimumSize = new System.Drawing.Size(640, 480);
- this.Name = "ApplicationForm";
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "WebsitePanel Installer";
- this.Shown += new System.EventHandler(this.OnApplicationFormShown);
- this.statusBar.ResumeLayout(false);
- this.statusBar.PerformLayout();
- this.splitContainer.Panel1.ResumeLayout(false);
- this.splitContainer.Panel2.ResumeLayout(false);
- this.splitContainer.ResumeLayout(false);
- this.pnlRight.ResumeLayout(false);
- this.pnlDescription.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).EndInit();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.StatusStrip statusBar;
- private System.Windows.Forms.SplitContainer splitContainer;
- private System.Windows.Forms.Panel pnlRight;
- private TopLogoControl topLogoControl;
- private System.Windows.Forms.TreeView scopeTree;
- private System.Windows.Forms.Panel pnlDescription;
- private LineBox lineBox2;
- private System.Windows.Forms.Label lblResultViewPath;
- private System.Windows.Forms.Label lblResultViewTitle;
- private System.Windows.Forms.PictureBox pictureBox;
- private System.Windows.Forms.ToolStripStatusLabel statusBarLabel;
- private System.Windows.Forms.ImageList smallImages;
- private System.Windows.Forms.Panel pnlResultView;
- private System.ComponentModel.BackgroundWorker backgroundWorker;
- }
-}
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/ApplicationForm.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/ApplicationForm.cs
deleted file mode 100644
index 75c23392..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/ApplicationForm.cs
+++ /dev/null
@@ -1,650 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.IO;
-using System.Diagnostics;
-using System.Net;
-using System.Configuration;
-using System.Threading;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Text;
-using System.Windows.Forms;
-using Microsoft.Win32;
-
-using WebsitePanel.Installer.Common;
-using WebsitePanel.Installer.Controls;
-using WebsitePanel.Installer.Services;
-using WebsitePanel.Installer.Configuration;
-using System.Xml;
-using System.Runtime.Remoting.Lifetime;
-using WebsitePanel.Installer.Core;
-
-namespace WebsitePanel.Installer
-{
- ///
- /// Main application form
- ///
- internal partial class ApplicationForm : Form
- {
- private ProgressManager progressManager;
- private ScopeNode activeScopeNode;
- private static ApplicationForm instance;
- delegate void VoidCallback();
-
- #region Constructor
-
- ///
- /// Initializes a new instance of the ApplicationForm class.
- ///
- internal ApplicationForm()
- {
- InitializeComponent();
- if (DesignMode)
- {
- return;
- }
- }
- #endregion
-
- #region Scope tree
-
- ///
- /// Adds predefined nodes
- ///
- private void AddDefaultNodes()
- {
- scopeTree.Nodes.Clear();
- ScopeNode componentsNode = AddScopeNode(null, "Components", Properties.Resources.Folder32, Properties.Resources.Folder16, new ComponentsControl(), NodeType.Components, null);
- AddScopeNode(null, "Application Settings", Properties.Resources.Tool32, Properties.Resources.Tool16, new SettingsControl(), NodeType.Settings, null);
- componentsNode.Expand();
- ExpandScopeNode(componentsNode);
- scopeTree.SelectedNode = componentsNode;
-
- }
-
- ///
- /// Adds scope node to the scope tree
- ///
- internal ScopeNode AddScopeNode(ScopeNode parent, string text, Icon largeIcon, Icon smallIcon, ResultViewControl resultView, NodeType nodeType, object tag)
- {
- string smallIconName = smallIcon.GetHashCode().ToString();
- if (!this.smallImages.Images.ContainsKey(smallIconName))
- {
- this.smallImages.Images.Add(smallIconName, smallIcon);
- }
- ScopeNode node = new ScopeNode();
- node.Text = text;
- node.ResultView = resultView;
- node.SmallIcon = smallIcon;
- node.LargeIcon = largeIcon;
- node.ImageKey = smallIconName;
- node.SelectedImageKey = smallIconName;
- node.NodeType = nodeType;
- node.Populated = false;
- node.Tag = tag;
- if (parent == null)
- {
- scopeTree.Nodes.Add(node);
- }
- else
- {
- parent.Nodes.Add(node);
- }
- //add fake node to show +
- node.Nodes.Add(" ");
- return node;
- }
-
-
- ///
- /// Adds component node to the scope tree
- ///
- internal ScopeNode AddComponentNode(ScopeNode parent, string text, object tag)
- {
- return AddScopeNode(parent, text, Properties.Resources.Service32, Properties.Resources.Service16, new ComponentControl(), NodeType.Component, tag);
- }
-
- ///
- /// Actions on select node in the scope tree
- ///
- private void OnScopeTreeAfterSelect(object sender, TreeViewEventArgs e)
- {
- ScopeNode node = e.Node as ScopeNode;
- //node.ContextMenuStrip = scopeItemContextMenu;
- ExpandScopeNode(node);
- PopulateResultView(node);
- activeScopeNode = node;
- }
-
- ///
- /// Expands scope node in the scope tree
- ///
- private void ExpandScopeNode(ScopeNode node)
- {
- if (node != null)
- {
- if (!node.Populated)
- {
- node.Nodes.Clear();
- StartProgress("Loading...");
- string text = node.Text;
- node.Text += " expanding...";
- scopeTree.Update();
- scopeTree.BeginUpdate();
- switch (node.NodeType)
- {
- /*case NodeType.Servers:
- LoadServers(node);
- break;
- case NodeType.Server:
- LoadServerComponents(node);
- break;*/
- case NodeType.Components:
- LoadInstalledComponents(node);
- break;
- }
- node.Text = text;
- node.Populated = true;
- node.Expand();
- scopeTree.EndUpdate();
- FinishProgress();
- }
- }
- }
-
- ///
- /// Action on expanding scope tree node
- ///
- ///
- ///
- private void OnScopeTreeBeforeExpand(object sender, TreeViewCancelEventArgs e)
- {
- ScopeNode node = e.Node as ScopeNode;
- ExpandScopeNode(node);
- }
- #endregion
-
- #region Result view
-
- ///
- /// Displays result view control
- ///
- ///
- private void PopulateResultView(ScopeNode parentNode)
- {
- this.SuspendLayout();
- pnlResultView.Controls.Clear();
- if (parentNode.LargeIcon != null)
- {
- pictureBox.Image = parentNode.LargeIcon.ToBitmap();
- }
- else
- {
- pictureBox.Image = Properties.Resources.Folder32.ToBitmap();
- }
- lblResultViewTitle.Text = parentNode.Text;
- lblResultViewPath.Text = parentNode.FullPath;
- ResultViewControl control = parentNode.ResultView;
- if (control != null)
- {
- pnlResultView.Controls.Add(control);
- control.Dock = DockStyle.Fill;
- try
- {
- AppContext context = new AppContext();
- context.AppForm = this;
- context.ScopeNode = parentNode;
- control.ShowControl(context);
- }
- catch (Exception ex)
- {
- Log.WriteError("Console error", ex);
- ShowError(ex);
- }
- }
- this.ResumeLayout(false);
- this.PerformLayout();
- }
-
- #endregion
-
- #region Console
-
- ///
- /// Application form instance
- ///
- internal static ApplicationForm Instance
- {
- get { return instance; }
- }
-
- ///
- /// Current version
- ///
- public string Version
- {
- get
- {
- return this.GetType().Assembly.GetName().Version.ToString();
- }
- }
-
- ///
- /// Reloads application
- ///
- internal void ReloadApplication()
- {
- //thread safe call
- if (this.InvokeRequired)
- {
- VoidCallback callback = new VoidCallback(ReloadApplication);
- this.Invoke(callback);
- }
- else
- {
- AppConfigManager.LoadConfiguration();
- Update();
- //LoadConfiguration();
- ScopeNode componentsNode = scopeTree.Nodes[0] as ScopeNode;
- componentsNode.Nodes.Clear();
- componentsNode.Populated = false;
- OnScopeTreeAfterSelect(scopeTree, new TreeViewEventArgs(componentsNode));
- }
- }
-
- ///
- /// Initializes application
- ///
- internal void InitializeApplication()
- {
- CheckForIllegalCrossThreadCalls = false;
- LifetimeServices.LeaseTime = TimeSpan.Zero;
-
- this.splitContainer.Panel2MinSize = 380;
- this.splitContainer.Panel1MinSize = 150;
- this.progressManager = new ProgressManager(this, this.statusBarLabel);
- instance = this;
-
- AddDefaultNodes();
-
- }
-
- ///
- /// Disables application content
- ///
- internal void DisableContent()
- {
- scopeTree.Enabled = false;
- pnlResultView.Enabled = false;
- }
-
- ///
- /// Enables application content
- ///
- internal void EnableContent()
- {
- scopeTree.Enabled = true;
- pnlResultView.Enabled = true;
- }
-
- ///
- /// Shows error message
- ///
- /// Message
- internal void ShowError(string message)
- {
- MessageBox.Show(this, message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
-
- ///
- /// Shows default web error message
- ///
- internal void ShowServerError()
- {
- ShowError("An error occurred while connecting to the remote server. Please check your internet connection.");
- }
-
- ///
- /// Shows default error message
- ///
- internal void ShowError()
- {
- ShowError("An unexpected error has occurred. We apologize for this inconvenience.\n" +
- "Please contact Technical Support at support@websitepanel.net.\n\n" +
- "Make sure you include a copy of the Installer.log file from the\n" +
- "WebsitePanel Installer home directory.");
- }
-
- ///
- /// Shows security error message
- ///
- internal void ShowSecurityError()
- {
- ShowError(Global.Messages.NotEnoughPermissionsError);
- }
-
- internal void ShowError(Exception ex)
- {
- if (Utils.IsSecurityException(ex))
- ShowSecurityError();
- else
- ShowError();
- }
-
-
- ///
- /// Shows info message
- ///
- ///
- internal void ShowInfo(string message)
- {
- MessageBox.Show(this, message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
-
- ///
- /// Shows warning message
- ///
- ///
- internal void ShowWarning(string message)
- {
- MessageBox.Show(this, message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- }
-
- ///
- /// Loads installed components from configuration file
- ///
- private void LoadInstalledComponents(ScopeNode node)
- {
- Log.WriteStart("Loading installed components");
- node.Nodes.Clear();
-
- foreach (ComponentConfigElement componentConfig in AppConfigManager.AppConfiguration.Components)
- {
- string instance = string.Empty;
- if (componentConfig.Settings["Instance"] != null &&
- !string.IsNullOrEmpty(componentConfig.Settings["Instance"].Value))
- {
- instance = "(" + componentConfig.Settings["Instance"].Value + ")";
- }
- string title = string.Format("{0} {1} {2} {3}",
- componentConfig.Settings["ApplicationName"].Value,
- componentConfig.Settings["ComponentName"].Value,
- componentConfig.Settings["Release"].Value,
- instance);
-
- AddComponentNode(node, title, componentConfig);
- }
- node.Populated = true;
- Log.WriteEnd(string.Format("{0} installed component(s) loaded", AppConfigManager.AppConfiguration.Components.Count));
- }
-
- ///
- /// Returns installer web service
- ///
- internal InstallerService WebService
- {
- get
- {
- return ServiceProviderProxy.GetInstallerWebService();
- }
- }
-
- ///
- /// Checks for the application update
- ///
- /// File name
- /// true if update is available for download; otherwise false
- internal bool CheckForUpdate(out string fileName)
- {
- bool ret = false;
- fileName = string.Empty;
- Log.WriteStart("Checking for a new version");
- //
- var webService = ServiceProviderProxy.GetInstallerWebService();
- DataSet ds = webService.GetLatestComponentUpdate("cfg core");
- //
- Log.WriteEnd("Checked for a new version");
- if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
- {
- DataRow row = ds.Tables[0].Rows[0];
- Version currentVersion = GetType().Assembly.GetName().Version;
- Version newVersion = null;
- try
- {
- newVersion = new Version(row["Version"].ToString());
- }
- catch (FormatException e)
- {
- Log.WriteError("Version error", e);
- return false;
- }
- if (newVersion > currentVersion)
- {
- ret = true;
- fileName = row["UpgradeFilePath"].ToString();
- Log.WriteInfo(string.Format("Version {0} is available for download", newVersion));
- }
- }
- return ret;
- }
-
- ///
- /// Runs application updater
- ///
- /// File name
- /// true if updater started successfully
- internal bool StartUpdateProcess(string fileName)
- {
- Log.WriteStart("Starting updater");
- string tmpFile = Path.ChangeExtension(Path.GetTempFileName(), ".exe");
- using (Stream writeStream = File.Create(tmpFile))
- {
- using (Stream readStream = typeof(Program).Assembly.GetManifestResourceStream("WebsitePanel.Installer.Updater.exe"))
- {
- byte[] buffer = new byte[(int)readStream.Length];
- readStream.Read(buffer, 0, buffer.Length);
- writeStream.Write(buffer, 0, buffer.Length);
- }
- }
- string targetFile = GetType().Module.FullyQualifiedName;
- //
- var webService = ServiceProviderProxy.GetInstallerWebService();
- string url = webService.Url;
- //
- string proxyServer = string.Empty;
- string user = string.Empty;
- string password = string.Empty;
-
- // check if we need to add a proxy to access Internet
- bool useProxy = AppConfigManager.AppConfiguration.GetBooleanSetting(ConfigKeys.Web_Proxy_UseProxy);
- if (useProxy)
- {
- proxyServer = AppConfigManager.AppConfiguration.Settings[ConfigKeys.Web_Proxy_Address].Value;
- user = AppConfigManager.AppConfiguration.Settings[ConfigKeys.Web_Proxy_UserName].Value;
- password = AppConfigManager.AppConfiguration.Settings[ConfigKeys.Web_Proxy_Password].Value;
- }
-
- ProcessStartInfo info = new ProcessStartInfo();
- info.FileName = tmpFile;
-
- //prepare command line args
- StringBuilder sb = new StringBuilder();
- sb.AppendFormat("\\url:\"{0}\" ", url);
- sb.AppendFormat("\\target:\"{0}\" ", targetFile);
- sb.AppendFormat("\\file:\"{0}\" ", fileName);
- sb.AppendFormat("\\proxy:\"{0}\" ", proxyServer);
- sb.AppendFormat("\\user:\"{0}\" ", user);
- sb.AppendFormat("\\password:\"{0}\" ", password);
- info.Arguments = sb.ToString();
- Process process = Process.Start(info);
- if (process.Handle != IntPtr.Zero)
- {
- User32.SetForegroundWindow(process.Handle);
- }
- Log.WriteEnd("Updater started");
- return (process.Handle != IntPtr.Zero);
- }
- #endregion
-
- #region Progress indication
-
- ///
- /// Starts progress indication
- ///
- /// Title
- internal void StartProgress(string title)
- {
- StartProgress(title, false);
- }
-
- ///
- /// Starts progress indication
- ///
- /// Title
- /// Disable content
- internal void StartProgress(string title, bool disableContent)
- {
- if (disableContent)
- {
- DisableContent();
- }
- progressManager.StartProgress(title);
- }
-
- ///
- /// Starts async progress indication
- ///
- /// Title
- /// Disable content
- internal void StartAsyncProgress(string title, bool disableContent)
- {
- if (disableContent)
- {
- DisableContent();
- }
- topLogoControl.ShowProgress();
- progressManager.StartProgress(title);
- }
-
- ///
- /// Finishes progress indication
- ///
- internal void FinishProgress()
- {
- topLogoControl.HideProgress();
- progressManager.FinishProgress();
- EnableContent();
- }
-
- #endregion
-
- private void OnApplicationFormShown(object sender, EventArgs e)
- {
- StartUnattendedSetup();
- }
-
- private void StartUnattendedSetup()
- {
- XmlDocument doc = Global.SetupXmlDocument;
- if (doc != null)
- {
- XmlNode root = doc.SelectSingleNode("setup");
- if (root == null)
- {
- Log.WriteError("Incorrect setup xml file");
- Close();
- }
- Log.WriteStart("Starting unattended setup");
- ProceedUnattendedSetup();
- }
- }
-
- public void ProceedUnattendedSetup()
- {
- XmlDocument doc = Global.SetupXmlDocument;
- XmlNode root = doc.SelectSingleNode("setup");
- if (root.ChildNodes.Count == 0)
- {
- Log.WriteEnd("Unuttended setup finished");
- Close();
- return;
- }
- XmlNode node = root.ChildNodes[0];
- switch (node.Name.ToLower())
- {
- case "install":
- ParseInstallNode(node);
- break;
- }
- }
-
- private void ParseInstallNode(XmlNode installNode)
- {
- XmlNodeList components = installNode.SelectNodes("component");
- if (components.Count == 0)
- {
- //remove parent install node
- installNode.ParentNode.RemoveChild(installNode);
- ProceedUnattendedSetup();
- }
- else
- {
- //remove current node and start installation
- XmlElement componentNode = (XmlElement)components[0];
- string componentCode = componentNode.GetAttribute("code");
- string componentVersion = componentNode.GetAttribute("version");
- string xml = componentNode.InnerXml;
- installNode.RemoveChild(componentNode);
-
- if (!string.IsNullOrEmpty(componentCode))
- {
- ScopeNode componentsNode = scopeTree.Nodes[0] as ScopeNode;
- scopeTree.SelectedNode = componentsNode;
- ComponentsControl ctrl = componentsNode.ResultView as ComponentsControl;
- ctrl.InstallComponent(componentCode, componentVersion, xml);
- }
- }
- }
-
- public override object InitializeLifetimeService()
- {
- ILease lease = (ILease)base.InitializeLifetimeService();
-
- //Set lease properties
- lease.InitialLeaseTime = TimeSpan.Zero;
- return lease;
- }
-
- }
-}
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/ApplicationForm.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/ApplicationForm.resx
deleted file mode 100644
index 37d70fbb..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/ApplicationForm.resx
+++ /dev/null
@@ -1,1571 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
- 17, 17
-
-
- 115, 17
-
-
- 229, 17
-
-
-
-
- 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
- nI5yAJmLdgCZjHUAnI97AJ2QcwCekHQAn5J4AKCTdwCgk3kAopV6AKSXewCjl3wApJd+AKWZfgCpmn4A
- x5hEAMKVSADInVUAxZ9eAMifWgDKoVgAyKFcAMKeYgDDoW4AxaVxAKGWgwCkl4MAppqBAKmbgACpnYIA
- qZ2EAKidigCsoYYAraKJAK2kiQCuo40ArqSNALCihwCwpYoAsKWNALSpjwC8qokAq6GRAK+kkgCvpZUA
- saaQALarkQC1rJMAtKqWALWslAC1q5sAt66YALWsnwC4rpkAuK+fAL2wkwC6sZYAvLCXALmwmwC9tJoA
- u7GcAL21nQCzr6MAtbGmAL61oQC7s6UAv7ihALazrgC+uq0Au7m0AL+8tADEqoUAwa6KAM2xhwDOtogA
- y7GPAMu3jQDQt44Ay7SXAMS5mwDAuJ4AxbqfAMm4mgDSvZYAwLejAMC3pADCuqEAxbmhAMW8owDBuKYA
- wrykAMW+pgDKuqEAwLeqAMO6qADEu6oAxb2pAMC6rgDGvqwAyL6rAMi/rgDBu7AAwbywAMvApQDHwaoA
- x8CvAMjBqQDIwa0AzcevANPBoADYyq0AycKxAM3DsADKxLIAzcaxAMnCtgDLxbQAzMa1AM3IsQDOyLcA
- w8C6AMXDvgDGxL8AzMa7AMnFvgDOybgAysi/AM/JvADSx7UA0cy1ANHKugDRzLsA1c24ANDKvQDSzL0A
- 1M69ANrPuwDX0boA1tG9ANjTvADh1b0AyMbBAMnIwwDNysEAz83CAMvJxQDNy8UAzszHAM3LyADPzckA
- 0czBANTOwQDQzcQA1dDCANbSxADY0sIA2NTDANzXwQDY0sUA2tXFANzXxwDd2MEA3tnEANrVyADc18sA
- 3djJANzZzADb2NIA3NnSAN/d0ADb2dQA3trUAN7c1QDh28cA4dzGAOLeyADg288A4d3OAODd0gDh3tUA
- 4d/aAObhzADp480A4+DSAOTg0gDi4NUA5OHWAOvm0QDp5NUA7urWAO/s1wDk4tgA5uTaAOfl3ADp5toA
- 7OfbAOjm3QDv69sA6ujeAO3q3gDv7N8A8e3aAPPv3gDz8N8A9PDeAOrp4QDs6uIA7uziAOzq5ADt7OUA
- 7+7oAPHt4ADw7uYA8O7pAPTx4QDx8OoA9fPpAPLx7QD08u4A9PTvAPn37QD6+O8A9PPwAPX18QD39vQA
- +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
- //8AAP4//////wAA////////AAD///////8AAP///////wAA////////AAAoAAAAIAAAAEAAAAABAAgA
- AAAAAAAEAAAAAAAAAAAAAAABAAAAAQAAAAAAAJyPdwCiln4Au6V9AMWeWQDGomMAx6JpAMeocADMsH0A
- pZmBAKabhQCqnYIAqJ2FAKmeiACtoYYAq6CKAKygigCroY4ArqOMAK6kjQC0o4IAsKaNAK6kkQCwppEA
- saiQALSrkwCzqpQAtKqVALaulwCzqZkAt62YALmvmwC5sZkAurCdALy1ngC7saEAvLOgAL21oAC7s6UA
- vbSmAL+4pgC+vLcAz7OHAMGxjQDOto4AyribAMC2oQDAt6UAwLmiAMK5pQDDvKQAxbynAMi7pgDCuqkA
- xb2pAMK7rwDGvq4AyL+rAMe/sADVwJwAzsGhAMvCrwDMxq4AxsCyAMfBtADJwrEAysSzAMzEswDKxLUA
- zMa1AM3IsADJxbkAy8e9AM7IuADOyb0A0ce2AN3PsQDazLQA0cq6ANbNuQDRyr0A0828ANTOvgDV0LkA
- zcrBAM3KxQDPzMYA0s7BANTOwADUz8UA0s/KANPQwwDV0MIA19HEANjSwgDe18IA2NPHANrVxQDc2MEA
- 2tbKANzWyADb2MsA3dnKAN3ZzgDe2dAA393RAODbygDj38kA4NvSAOHd0QDh3tQA5N/WAOXgyQDl4NEA
- 4uDUAOTh1gDn5NcA6OPSAOrm0QDr5tcA7enWAOTi2ADm5NoA5+XcAOrn2gDo5t0A7urZAOzp3gDw7NoA
- 6ujgAOzq4gDs6+QA7uzmAO/u6ADx7+cA8O7pAPHw6gD08ukA8vHtAPTz7wD19O8A9fXxAPf29AD59/AA
- +Pf0APn48QD5+PYA+vr4APz7+gD8/PoA/v7+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFRXV0cpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUVFtm
- c4SGZigAAAAAAAAAAAAAAAAAAAAAAAAAVFRUW2h8ipOWlpNmMAAAAAAAAAAAAAAAAAAAAABUVFRbbYSK
- lpaWlpaWk2YwAAAAAAAAAAAAAAAAVEdHVF5thpOWlpaWlpaWlpaTZi4AAAAAAAAAAFpHQDhHZHyKlpaW
- lpaWlpaWlpaWlpBkIgAAAAAAAABAL0VohJaWlpaWlpaWlpaWlpaWlpOWimQiAAAAAAAAVziIlpaWlpaW
- lpaWlpaWlpaTk5CQjo6KZBwAAAAAAAA6ZpaWlpaWlpaWlpaWlpOQk5OQjo6OioRbHAAAAAAAADptlpaW
- lpaWlpOTk46TkJOOjoqOioqKhFIcAAAAAAAAOm2WlpaWk5OTk5OQk46Oio6KioqGiIR8VxwAAAAAAAA6
- bZaWkJOTk5CQkI6OipOKioqEhISEhHpSFwAAAAAAADptlpCWkJOQk46OjoqOioqGhH+Ef3yBc1ISAAAA
- AAAAOGiWk46TkI6OjoqOioqKhH96fHp6enpoSRIAAAAAAAA4aJaOk5CQjo6KjoqKhnx6enp6enp6emZJ
- EgAAAAAAADhmlo6Qjo6OipOKin96enp6enptc25zZkUSAAAAAAAAOmiTk46OjoqThoRzc3Nzc25oc2hm
- W1QwOAwAAAAAAAA4ZpaOjo6OioRzc3NzbWhmW0UoHhwSFQ4uDAAAAAAAADpok5COiop8c2ZmUkAiHAoL
- DBQDKwQ8PjAMAAAAAAAAOGaWjohzUkUiHAoLDBIcMAUHCAQ7BUxfMAkAAAAAAAA4UmQ4EgwLChIcMD5S
- YnBwKixMLVI0OUUXEgAAAAAAAEUSHBwwMElTYnB2doB2dmZLPkU4MDAhDAEAAAAAAAAAZG1zf3+AgIB2
- f3NfW0tFMC4XDAkNFi4AAAAAAAAAAABtk5GRhn9oZEs+MCIXCgoNHjoAAAAAAAAAAAAAAAAAAGSEhHNS
- OBwODA0XJwAAAAAAAAAAAAAAAAAAAAAAAAAAADgSDBciAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////////////8H///wB///AAf/+AAH
- /4AAB/gAAAfwAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH
- 4AAAB+AAAAfgAAAP4AAAP+AAB//gAf//8H///////////////////ygAAAAYAAAAMAAAAAEACAAAAAAA
- QAIAAAAAAAAAAAAAAAEAAAABAAAAAAAAtqF5ALumfgDBo2wAyaZrAK+ljQCwpo0At6iJAK+lkwCwppIA
- tqySALKplgC0qpYAtayVALiulwC2rZsAuK+dALqwmQC6sJ0AvLKfAL+3ngC6sqEAvbWhAL62pQC/uqsA
- ybGFANG5jgDPuZYAwbmmAMW8pgDKvKIAwrqpAMO9qwDEvKkAw7utAMO+rQDFvq4Ax8CqAMnArgDLxKwA
- 0sSpAMfBsADIwrEAzcewAMjBtQDNx7YAysW6AMrHvQDOyLkAzcm8ANDItQDQyrkA0Mq+ANPNvgDW0boA
- 3NO6AM/MwwDRzcAA1c/DANDNxQDW0MEA1dHEANjTxQDa1MQA39rFANHQygDY08gA2tXJAN7ZyQDc2MwA
- 39vRAN/c0QDh3MYA4dzOAOHd0QDh3tQA5uHPAOjkzwDi4NUA5OHXAOrl0wDq5tUA4+DYAOTh2ADm5NoA
- 5+PcAOfk3ADo5t4A6ejfAPDt3wDq6OEA7OniAOzr5ADt7OUA7+7oAPDu5QDw7ukA9PHmAPTy6ADy8ewA
- 9PLuAPb18QD39/QA+Pf0APj49gD6+vkA/Pz6AP7+/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOzsvAAAAAAAAAAAAAAAAAAAAAABBOz5HW2RJGAAA
- AAAAAAAAAAAAAAA4Oz5PXmdra2tKIwAAAAAAAAAAADsxMUNWZGtra2tra2tKKgAAAAAAAC8qL0VbZ2tr
- a2tra2tra2tJIwAAAAAAI0pga2tra2tra2tra2tnZ2ZFIwAAAAA7Smtra2tra2tra2dnZ2ZmZmQ+IwAA
- AAA0V2tra2trZ2tmZ2dnZmRkZGA+HAAAAAA0VmtrZ2tmZ2ZmZmZkZFtkW1s+FwAAAAA0VmtnZ2dnZmZm
- ZGRgW1tbW1Y0FwAAAAA0Umtna2ZmZmRkZFtbW1ZWVk8zFgAAAAA0SmtmZmZmZGRgWFZWT1ZPT04tFgAA
- AAA0VmdnZmRkZFtWT09PTkVFPi0cFgAAAAAxUmtmZmRbVk9FRTQqHBENBw0REAAAAAA7SmtkW0c+JRYN
- BgcBAgMZBDccEAAAAAA0Oz4jDQUFDRQnNkQaGhsoHjMOFgAAAAA+FBwlJzdETVBQTEQzJyMRDgUIAAAA
- AABKXmRhWVBJPjMjEA0FCxYqAAAAAAAAAABKXlc+KhEODQ4jAAAAAAAAAAAAAAAAAAAAKhYfAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- ////AP///wD//8cA//wDAP/gAwD+AAMA8AADAOAAAwDAAAMAwAADAMAAAwDAAAMAwAADAMAAAwDAAAMA
- wAADAMAAAwDAAAMAwAAHAMAAPwDAD/8A4///AP///wD///8AKAAAABAAAAAgAAAAAQAIAAAAAAAAAQAA
- AAAAAAAAAAAAAQAAAAEAAAAAAAC+ro0AvrKXAL20ngC8s6EAvrSgAL+3pwDBsI0Ay7OJAM24kgDMu5cA
- zr6fAMG3oQDCu6MAw7qkAMK5qQDFva0Ayb+sAMa/sQDHwK4Ay8WuAMvDtwDKxbQAyMW6AM/JvQDRy7oA
- 0cq9ANPOvwDUz7wA19G/ANjTvwDRy8AA087BANTPwwDSzcQA1tHFANjTxQDf2cYA1NHKANbTzQDa1coA
- 2dXNAN3YywDc2c0A29nRAN7a0gDi3coA4d3SAOHd1QDj4dcA5eLXAOXi2ADm5NsA5uXcAOnm3QDq6N8A
- 6efgAOrp4QDs6uMA7erlAO7s5gDx8OsA8vHsAPTz7gD29fEA+Pf0APn49gD6+vgA/Pz7AP7+/gAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACYAAAAAAAAAAAAA
- ACksNT4yFwAAAAAAACYmLDlARERENyMAAAAiIiw8Q0RERERERDUjAAAAMEREREREREREQ0EwIwAALDlE
- RERERENBQD4+JSIAADA5RERDQUBAPjk5OSQiAAAwOURDQEA+PDk4NzUiGgAAMDhDQEA+OTUyMCUjExoA
- ADA4Qz43JSIWDQIBBwMYAAAsKSQTBQUNFAoICgsMAAAANRoaHiUuJR0RAwUFEgAAADk3MhoTDw8XAAAA
- AAAAAAAAKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8AAP/7AAD/gQAA+AEAAMABAADAAQAA
- gAEAAIABAACAAQAAgAEAAIABAACAAwAAgAMAAIB/AADf/wAA//8AAIlQTkcNChoKAAAADUlIRFIAAAEA
- AAABAAgGAAAAXHKoZgAAIABJREFUeJzsvXmQZNl13ve79635cqutq7unZwUwA3AADBZiJQmQgoiNILiA
- BEmQoACSoByyIixZsiQ7FJasCIUVssIO2aGQLFEWoY2yZIuUKQIEMCQEkABFEAQGs8/0NHt6uruqa83M
- yv1t9/qPe9+S1d0zPSR7GqDyRHTXq6xcXma+c+53vvOdc2FpS1va0pa2tKUtbWlLW9rSlra0pS1taUtb
- 2tKWtrSlLW1pS1va0pa2tKUtbWlLW9rSlra0pS1taUtb2tKWtrSlLW1pS1va0pa2tKUtbWlLW9rSlra0
- pS1taUtb2tKWtrSlLW1pS1va0pa2tKUtbWlLW9rSlra0pb00Jm71CTyfffrBL77MdeQrpJRrUohQCAFa
- ozRorQaZUttK6fPf9+7vPrjV57q0pX0r2jdVAPj0g1/cBL4DeL8j5VscKW9XWm2kmSJTOVpphBBIKXAd
- B9eRc+AgV+qyUvox4GvAU8B5oPd97/7u8S18O0tb2je9fVMEgE997gv3SSn/vOc4HxKC23OlGM/m7PVH
- XD7os9sfcjSekeUZ0nHwXYf1bosz6yucXO2y2m4SBZ4JDkIghBhqrc8ppc/nSj2stH4KGxi+793fPb3V
- 73dpS/tmsVsaAD714BdvF/CXPcf5WceRnYOjMWcv7fDM1i7bhwNmcUKa5yilAV2ebnHkSInvOjQCn7V2
- kxOrbU6tdtnotuk0Q5phQCPwcaUkV2qcK32gtDqH5hEND6H1Uxp2gJ3ve/d3Z7fuk1ja0m6N3bIA8KnP
- feETvuf+LSnlbbu9I37/6Qs8cv4Su4MhEoEQIKVECoEjJY4jEfZstQalQKPQWqO1Rmltb9cEnkM7Cuk2
- I1bbTU6udjix0mG906TbjPA9B0dKXCkBtnOtL+S5upAr9RDwGAYtXF4GhaX9SbeXPAB86nNfOCWF+N99
- z/2x8Tzmtx4+y5cfO8v+YETgubQaIb7v4kgH0KR5TpJkpFlGrhRSSFzXwZUSKQVCXP0WtNbkSpMrgx6k
- lLg2dehEIevdFpsrHU6tdljttOhEIe2oQei5aEApPdVaX1RaP6G1Pq+0vqK1PgdcAC5+4D3fM3hpP7Wl
- Le3m2EsaAD71uS/cKaT49cj373/y4jb/9vO/x8FozH13neHb7rmDu86cZHOtSxQGuI6D1poszxlN5xz0
- j9jePWRrv8d+r09vMGI8m5PnOUDp5I4NDFIKQFh0AGhlEILWKKXIlUIIQSPwaUch7UbIRrfFydUuJ1e7
- rHUiosDHd10810VKgVJqmit9WWl9WSn1iNb6YQxaOAcMvv+9f2qJGJb2LWUvWQD4j5/9T6c8x/ms77kP
- fOWJc/z6Vx/j/lfczXu/89t52R2naPg+GsiVgfXo6gylEEgD18nynNk85mAwYuegx5X9Hlu7B+wc9Dkc
- DJnNY5I0I0kztAbHkbiOLAPDccSQK4VS2r4u9n6S0HdZbTXZ6LY40W1xcq3LajuiEzUIPBffdXEcaVIQ
- OEBzTqMfy3P1cK7UWUwl4uIH3/eu5KX6jJe2tBdrL0kA+LXP/qfQdZzPuo7zzs/83iNsH034yAe+m1fd
- cwdpljOPE+P0N2imDOjiew5CSPI8Z54kjMYzxrM5w/HEBIa9Q3b2e+z2BgyGY+IkNSs/AteVeK6LIyXm
- YzAcAhiOQWOQQpbnKK3xXIdmEBCFPq4j6TQabK512FzpcKLbptsygSH0vQK9HORKHeS5Oqe0/gZaP6Th
- LIZ07P3A+/+0ugkf9dKW9qLsJQkAn37wi3839Ly/+sWHn+Qwzvi5D72PRugxncUoC8X/MFZUA4QlCg30
- Nz8dIdFAmmUMx1P2ewN2Dvts7/XY3j1k97DP/mDIZDIjy5WpKjgOTokWzPNa7VHJK1SkozmH4nGdKGC1
- 02S90+LUaof1TovVdpOVZoPA90CDECCEuKi0PquUPquUekhpdU5rzv7g933v9h/Pp720pd243fQA8KnP
- feFdged99tzlHfeJKwf8/IffD0CcZBz3ew0l/Nc2BxBCmJMsft6gFau5EOC6Tm21hzzPmcxiekcjdg8H
- bO8dsL3XY+egz15vwGg8IU5TlFJIaZCC6zpIe8JXgxWTQuRKkecKKQWB5xH6Hs3QZ71jUojNbof1bpNW
- GNAIAxq+ixAiy3LVU0bV+JSGbeBZrdVTCC5Ixd4HP/Du4Yt460tb2g3bTQ0An37wi9KR8jfTLPuezz/8
- NB98zzvYXOkwi5OFVV9pXdb1A8/Dcx1cx1YBstz8s1BcKVWnB150YBCAkAIpzErvuhJHOiitidOUwXDM
- fu+IKwc9tvcO2d49YPdwQO9oxHQWG7SwoEY0qMO8H01BX2hVlCYtYlAmpIW+R7fZoNtqcKLbZnPVlCfX
- 2y3aUYjrWCQjBFrrcW7ETBeU0o8ATwJPgD73Qx94z1LluLQ/st3UAPCpB7/4xtBzv/r4hS3ptNq8++1v
- YDieLqz8WmsC36fTCAl9D0c6SFHAb1GD3IosV8yTlCTNSPOcTOVkuULpY2jhRZg2J2Gd2lQSPNdBSIP9
- 0yxnPJ1x0B+xe2B4he29Q3YO+hz0B4wmM5IsA61xHMc8h5RIxwaFY2hB6QopaK1tedLF911WmhHr3SYn
- VzqcXGnTbTVpNQKaYYDvOUUAnKM4UOhzWvMNjX5Ya85qzTaoyz/8/e9dViKWdsN2UwPAZ37jt/5WnKZ/
- 49HnrvCud76VVuCT2rIdmJW/22yw2mqVzl6elHXmEsqj0ZasA8Pe5wU6UDlZnpOkOWmWUUSYehqBAIF4
- UWRjcR5SiDKNEEKglGIWJ/SHY/YOB2zvH7C9Y3iF0XTG0WjM0WhKnKbkFjG4jmPRhiwrGkVwK1IfU40w
- KMeRkmYjoN0I6TQbnFxts7nSZrUVEQY+rTCkEXh4picCBDtKqctprs7neV3QpC9/6IPvm/9hv8Ol/cm2
- mxYAPv3gFzd8x/3/zl/Z+46xhg98z9sYTaYl9Nda02yEnOh2Sta9OBlhvNXcz55knRsonAVMENHKoIA8
- y8mUIs9NQChkxLog8qAkCq8yrY8v1te4iy4DgkkfrO5ACLQ2hGOSpYyncw56R7ZEecjW/iFX9g7oH42Z
- zmOyPENIiWdJRylkiXhqp2PQQq5QWpVEp2PTjSjw2Oi2ObHSZrPbZr3bpNts0I4aRL4PArTWidb6okY/
- pRWPKa0eypW+AJz/kR9437KDcmk3NQC83nedB5+6tLuxedspXn3vnczitHRmR0pObazhOY6F4VSpQQ3S
- U66Q1vlrTLxZPW1+rTWZhdWmpm+hdmZKeXmuyFVObuXCWmgrMXZKfUAhPS5W5BeDFqCqSEjHEoeOKTGm
- Wc54MrWkY79MI7Z3D9jrHTG2aYRRLYqSAzHcgvlwTCWC8pyUDYJZrkBA6Lk0GwGtMGC902Jztc1Gt8VG
- p0WrERC4LoHv4UiZKK2281xtZ0pd0FrvoXlSG8RwHuTgR3/wvUvE8F+I3cwA8DZHyt/cGYyiO+65k7Vu
- izw3pW+lNa1Gg5Prq6YMeOyxnuvgO47t7GPBIbNckeeaTGWkWW4hc45SoKyoR2mFRlunV+jcBIVM5RYd
- 1IOCKld2R0gc10B0368UgMXHVCYgNdh+PasTlYZbqOC/lBKlNfN5TP9oxF5vwPZ+n63dg1LUdDQaM41N
- mVTaFKJ4rO14rCVElO87VxpQ9u8mmHSihpE/W8Sw2opYaUd0GgGe69bPuae1Oq+UfkJp9bDWnENzVsL5
- D/3Q9y0FTX8C7aYGAAEPpojW5plTBL6PUjYAKMX6apf1bre8zaACQeR5duV8fjNMuyJTijTLSbKMNM1I
- M0WaZ6WTK+vgSulS8ZfnuQkI9mduH5OmJkBo21gkpCHpPN83ObwNDK4tC7qOs4BAbhQxmPuJcrUvAo3W
- kKQZw/GEw8GQnQMbFPYO2d495HBwxGQekyYZGqNyLBSJVfqga69D2SiV5cpwC44k9H1C36XTCDix0mFz
- pc1Gt81qO6IZeDTCgMA1yCzP1aDootRaf0PAwwie0oodDQc/9sMfWJKO38J2UwOAVupBr9ForZ08UV7g
- YALAyRMbrHXbqNys1kJA5Lo4f0hRUGFKa7IsJ8lykjQlTjPmaUqSpCRZXgWA3PYElBWGnDyz/EFmOIQs
- y0jzzJCNaUauzHk6VoUYBD4N3ydqhjTCoCQJpSUdta6lLDdw7sVjS8Rg05M8V0xmc3pHI/YO+2zt9Uq0
- sHvYZziaEidxWQ0xKEGWwqYCMSx2Tio7WakiXqPQpxtFrHaabHZbrHdaVtAUEYUeTslVgEBsaziX5+ps
- rnIzc0Fw9sd+6Psv/pG+wKW9pHbTA4AfRa3VkyewVTXABIBTm5usr7TLur4vBL5c1AZkykBaBeWDpYW+
- Ra28+Pd8prRJB+ZJyjxJmMUpsyQhSTPmSVqKfnKtUDmGK7BVhjwz3IEJCibtSFNTisyKWQW2BBiFAVEj
- oBk1aFkFYOD7eJ5b1PVLbYB5S88fFrQlR4QQOJZXKBxaKU2cpByNJ+z3jtjeO2S/N2A0mXLloM/ufp/B
- eMJsPifPFEIKy0s4pcrxuOWqljZhUrHAdQl9l7V2k83VDt0oJAp8VttN2lFIq+ETBQFSCqWUGqpcX1Za
- P6VQX0XzhEaf15odBMMf/+EPLtHCN5ndwgCwwVq3i9Imx23IqoafakhzhcIy/9r0/gMlPK+vXFIYEZFT
- MuUvHBSAEiVM44TZPGUSzxnPY+ZxYhj91Dq+UigLoVWZPmRktgyZpal1HpNy5Ll5T77vEvg+YeATNUJa
- NjCEgW8kx7YCUJCb9eDwQlZUDRwpynSkcOo4SRlNZvQGQ64c9tnePeTilV2bRgwZT2ekWYbWGikk0nHw
- HAdpg0v1OeuFNELpKp3yXdfOXGiw3mmysdJmo91kvWvaq33XKXiPOYKLea4GWa4OlNKPaLQVNHHuJ37k
- B5at1bfQblkAOLGxxmq3g1IaTwqargNArDSpVQZWJcNCB7AYAOolwUJ9h73NDPwwxJ60HYWOUw4Bua7l
- SjFLUiazmMlsziSOmScZszhmPI1NGS/L7ayBik9AVYIllasy1chs2gEaoY3TBoFHIwhoRiGtVkRkRVBh
- 6JdVkeJ93jDhWKucFCmEa51aIMjznOl8Tm84Zv9gwNb+IZd29rl0ZZ/9wwFH4wnzOLEaBAfPc3CkEUSJ
- qipba5gqZi6YEqxTaCUcM4xlc8WkDye6piei0whpRwGB5xaBTinNnkafQ/ENrfWjuVZngYvAxY/86A8u
- 0cJLYLcsAKyvrbDSbqO0JnAlLc8j15pxmpWOXzDZ5rg43Ypfr1cHyhKhfX5l8+/czgHQVu3nYNIHT0o8
- R+LX8uTnszTPmdvAMJrNOBrPGIwmjKYzYpsSFASiES/YVV2pcnUvEEIRILKsIPPMsBLf94jCkGYU0m5G
- NKMQ33NxHLvCS3GVxPhGrZBAG0GS6YvQwDxOGI0nHPSHZWv1pZ09tvYOGQzHTKYz0iwHbbswXRfPdRbm
- LUAVhIrvpAiAAmGFS4FBC90mG50WJ1ZarLWbNAOjcnTtd5BrvaeU2smVOqc1D6F5TKCfUrD9kx/+oWVP
- xB+z3aIAoFld7dBpNlFaE3ke7cBjlmVM08w6oyi658pTLZR5YGB/EQRKpEAdHRTqumIQSL3vv1q5hMbA
- aBsQiqDgW5HPC9l0njCazRhO5wwnU0aTGUeTGZP5nCzNDGxWtfPSCnRRslQUQ0+y3KYZFmajNI7rEPoe
- jUZAs2HShygMCAIf13XxPVum1HUHXEyRrmVVFQIc6VTpiJRIBGlu5M+9IzNzYXvngEs7B1y6ssf+YMhw
- NLHzFkyVpHh8QRCWwVSDol6erfE4QhD4Lmt25sJ6J2Kj22Kl2WClFdFuhFaTYfI/hb6gtT4LPKY1Dyut
- L2ilzv3kj/3wzo1flUs7brckAGit6bRbtJoRWmmiwGOlEXI0T5inaanUs2yzPS5waBEI7HH1S3Vcq5EX
- brDIgOuybl6WBks9QXWROkLgO5LAdQg916AF2258PdNgyMY4YTg1weBoNGU4mTFPEuZpQppmNl0x51w4
- SBEgCoRQphi2pGnmGBTqQ0nguzSbDVoWLTSCAN9zLWqQtff5IkqUVANX3VqJMs8Vs3nM0WjCXv+IK3uH
- XN454NLOPjsHh/SHE9IkNdxITf7seW6pXjx+DkUakVnk5LqShufTCH3WWo0yhVi3gaEReHiui2e4hURr
- fZDlajtX6gml9dcEPKGFOIdSA2D+Uz/+oaWg6QXslgWAZjMiajTQWtEOA9aaEQfjKXGWGQUchdNXIpw6
- c10e14KEto6/wHDXnqN8nF2ZoHKQUi9gV+RcG2lxUSrUSiExSKEICoHn0vBcAsvyP59ltpQ3ns1NYBjP
- OJpMGc1mxHFazi/U9rVKFGObnUwqUQmYCq6hSHVA4LsOYRjQjAJaUYNGaCoSURTaEmWdV6mIx+czrcs5
- BqUU2bEdlEIs6hb6wwnj6ZSt3UMubO2wu9/n8GjIZDo3PRpQCpqKuQtFFyVQ+y4Wz8v0RZjJz80wMDLo
- dpO1jvm30myYQGXOcyzQ20rpXqb0BaX1oxY5PIXW5z/6Ez+yHAtfs1sWABqNkEYYkmvFSqPBeiti52hE
- avvpoWK6i+PyhI/dRv02TCA4ft+qbVhYkCAWHgeYungRFJS2cuICKRjRUZ7lZLkmVxlCC1OBEMb5Gp5L
- w/NoeEYG7C0IdK62zPIK42nM0XTK0WTGYDhhlsRmJHqWkWUKpXPQ5vxVLVAUQaFwGqNyzMgzZTocraN5
- rkvUCGg1G7SiiFYU4vseYeDjeR5SsIAUbgQtlFWYWqNUIakWQJrlTGdzesMRuwcDtnb2eW57l+29Hvv9
- AcPxlDhOyGzjUyGdvmafBub8MouKCsm0mbng0moEphJRko4RrTAgavgENvCp3IyF11qfU/B1oAgM22i9
- 89Mf+dH/IknHWxYAgsDHD3y00qw2I1ZbEVu9AUobsqpYyYsVu+ros6ctuAoRVPRghQ6qB9WDRfHY4jlr
- P2X1WK2L/FqXF15mHU8VhF5J7hXDRjUCjW+bfaTQeI5TBobQ9/BtxeNappRmFsdM4oQ4SZnOE44mU47G
- Bi2YEqVFARY6m5YJbUVVlKXK4pwK4rHQLTiOdZ4wsOXJkKjRoNVq0Aj8sq25QDUlqXqjJUqoZi7YakSR
- kszihKPRhH075PXSlT2e295l96BPfzhmMp2TqbxEHK6UOHU+xkKSBQJYV3JxgMBz6VouYa3dYL3dZL0d
- sdJu0m4EOFJUTVywk+f5eaX0WaX1o9qUJ58C7/Kf+cif/ErETQ8Ang0ATi0AgGG+Xc9FazjRbtJpRjy3
- 38ORNoe3Dnk8ACBAaAHSnH6dD6gOa8GgJAiPIYL6sVgkGIuOvyJ9KIOFfYEiXdC6OjZOYgi/uty46Psv
- ZogJwPccQsch8s3UoMCSjq4rq+BVM6XNXII4TZnOYkazOYPRhKPJlOk8ZjZPmCVJybpXxGOVUtTTiOK8
- MpviAKV6sREGNBshzSii1QxpNkLCMDBowXVqPErlcC9K0GS5hSIVAE2SZoyncw77Q64cHLK1c8CFrR22
- 93sc9ocMJxOSODXiJM9UIUz6YJqlFjmZSnCV5xps05fvOviey4rVLazZoNCJQjpRQBT4OLZHQ2umSquL
- Gv0Eioc0+gmtOa/h8sd+8sN/oroob1kAwNbllYaTKx1aYcBz+4e4RV5YBoCKECzOuGoXvnYA0MeQAbxw
- ACh+XpU21CoSWgpTy8eiFMtVwKI+oST1UFUZsJw+nFu4rsqR5o4AV0g81yIF3yjwfM/BlabkJqs3bzgM
- bSBxnKTM4oTRdMZoOmM4MT+n85g0s/0NNkiJGsQ3AaFALvVjM3glT83i57iyFDM1o9CqHCNaUYPAd0u5
- cfE5K1UFnBu1+oQlk0pIq1uIGYzG7B4M2N475OL2Lpd29tjvHXE0HDNLUvI8NzMgpWMJUscIwWxwWTgL
- +7kpWxVypCQKPNpRSKcRstqOWO8YNLrSDAk9F9dWSQTMc623lVKXtdaPKaUfBp4QcE7BELzk4z/1w99y
- iOGWBYBcKbNSa8Xp9VUC1+PywaGBn6XTFQ6oF/vlBYsr5fE8W9T/Khbf5UIkKcPCsWAgTIGxJBDrAccc
- F1JkEFXuK6q/G9a7WB2rhiHj9NXgD22DQinBtdwDypQnPUcSeg6h7xuk4Dn40sFxRE21h0UmBn2kac4s
- SZjM5wwnM4bjKdM4YTKPmc3jUn+gtTI7LFmhUtGXUQQCramJmfKycoEGx3WIQp9m1CBsBPiuQxSGRFFI
- 1AjxLbdgtUxWH3EDoqayRCnKfghXSoQjQZmxbcPJtJy3cGl3n4tbe1zZ73E0GhMnGWmWkma5bbay3IIw
- /EKRXhaXQMGfaF0RnVIKI3duNVhtNlhtR6w0G3SigJYVa3m2YU3DQGt6GrWjNY9opR9XZhOZJz7+0R//
- pu+LuCUBQADzNC1FOrdvrCKE5EpvYKBhXQhUEIJlno518MqxxYKTl2syVzl/DcZr6+SGOyj0BLX7XauS
- oHXZo28c3lwEUprzEfanNNJDJLZkWCcg7bkV6QNg04SK0Ve2F0HbElmeG/Qg0LY8Cb7r0vDMOLHAKvCc
- 2oYoxasVbdFpppilCbN5wnQ+ZzQ1wWE6Nwx9nOZGt4BC2JWSwjlselOSo/Z30x9h0xylSofzfJcoMMGh
- 3W7SaTVpBB6u65VlwWpuw4sXNDmOLAVJCEGaZkxmMUejMZPZnKPRhEtX9rm0s8eu3S9iOJmRpCnadkS6
- dsOXqhKxaEZQZoRkAtMXEQU+Dd/D9xyaoc9qK2KtGbHaDIlCD7+QVEuBUnony/OzCv2vgV/+mY/+xDdl
- 6nBrAoAQTOZzErsSnVlfI88Vh6NRpWkX4NRIOVmurOa06wKhYjVfJP+u8fbqKKQoP2lAyjJeaC0QsvYA
- Ud1XaJCOU/5NOhKhsfeXJZQV9kSlOIYOBCZtEPWAsUiOVilExS0UP8vSpC0D5tYZBXajVEcQWMcIbb1c
- 1givoiHJ+LYJCnFmUojJbM5wMmcWx0xnMfMkNSmEHVRS8ArF+VBz4DpayPNKv6At1DZqQI9GGBJFphrR
- jiJazQaNRoDnONVnXXwON1KitN+wlNXGL9L2ggghUVoxn6cMxmbQ6/auETNt7x+y3z/iaDhhNk9MP4qU
- JT9RHC+UTal6IuqlUQH4jkOrEdJtBnSjBqvNkLV2xEYnwjXk58UsU7+gtf4HP/tnPvJN1ftwywLA0XjC
- PE0BzebKCkmaMonjhYhcTcTBED72jAUVSagFCG1/Ut1WvLlCG1AKgorn0NVtWKKxRAaiqn8XhGLxmtJu
- JCKFqFUr6qhALDp43fktaiiOpZAmnbDPJZFo+3sRm3SxpVmdbDx2XKQTRZuztqu4LFGLIHQt0eg4BjEs
- DBeh6P03o9RsO3SSZEzjmPHMIIbZPCZOTfdkllYE4vUDV00FqHKyzDRR1RWEvufSbIS0mhGddpN2s4Hv
- efh2WzaEKBFH2R9xA1akEmWzlOvgCEPyJWnGZDbncDBk97DPpSv7bO0esHc4oD8aM53NrG5BWJl2NXOh
- QKDF9VVcU0VrtdYa6QhCz2OtFfHyU6vcc2KVVuiT5epcrvXf/Nmf/olfurF3cfPtlgQAKSX7/QHj6RRH
- OnTbTdI8J89yC/sXoTVgUwFRkP/Vl1A4eOnli+lA6du6IAd1CeeLYFGsJMXQ0Wr4qCifo3Dkgi2XoiIB
- Zc3x65xAgQKK42K1qgJCLQCIRU6hCDRFM061PF7f4QqHzFSOyirmXyldqQu1wgE7j1DgFwHBdfGLqUUF
- UoAyb89yM3glThKmcxMUZjVeIU7TsnW6qECwQDjWB7MUKEEZ8jGvKieu61RooRHSaUdGu9A0wqbisynn
- G/whuigLZOZIx0yAEpI8V0znprpy0B+wtXfI5Z19s+Vcf8RwMiFO0rLxqRgnV5QoZXENFpehgtye00oz
- 5NW3n+CVt23guQ5pnv9TLfjLP/fRj9zy3oZbFgB2D3scjUYIYUQgyvplMTbLrIiLq2jhvBJhV/bCmSuu
- ztQHj+X/Fh7YolXN2YtPoYJ5x63uvEJc7dgCbMddEYzsOUuB1ALh1AID9neqYGAykOpxi89dvH9b7iqC
- Tu18oF6BWKz9g91rseh/KOB5oWnIC2LPOKsQJjD4jsSVNjBYcY4j6hDdvFaR/yepQQrTecx0NrcahoQ4
- yUjsrAVsOlBC+0JgpXVJfBaBqhjGouy5FXqCRhDQbIYGKbSaRA1TngyDajPZgrsoeiLg+VHDQonSkXiO
- Xe2lRClFkiSMbIly56DH5d0Druwdst8fMhiPmU3NIBbfc+zch6JqVcHQYnT9mbUO3/HKO1hvNUiz/PeV
- 4sM/97GPXHg+P7rZdksCgOs4PPz0HzCaTmk2Qnw7dEJKaeYA2IEUjjDsr5QYFldUJcICPps3UaUA5dta
- YPgx17io/XLsrVdV+soKElIcDwD2uOpZEIv/CtRQy73r573ABxx7PFyNEopjgw7qKYS4+rWPBQXjfHaV
- tEx/Bcvt8NS8qlAUASK33IIUBnW5Nm3wHVmOIi+Gs5TplS4CiyLJUuZxanQKccIsNuRjkmTlGLY8z1G6
- GhNXVEwqRGN4hXp7tVKGfATwXNe0VocB7VZEu2mQgud5BIFHYDspCxFRGRxfBFoQ9jszXZSGn0qzjOks
- ZjAyKsfH/+A5zl64zO5+nyTLiMIQx7lamJbmik7D52333s5dG11ypS9kSv3gJz72k4/c0AndBLslAaAR
- +nzyVx7k8195mG474vSJdU6ur9BuNVjvttlYaeO5rpnQowCtauu2cUqnLOlca8z3sQBgbXHVN7eAOLby
- V0GjJPVEjdgrVmtRMO7HA0D54BJqQvX3utPKqziEekqwmB48/78apwB2sEeVRhUIpr4iFs6C/dYXAAAg
- AElEQVRaKgi1bZ2uKwjtWPK87DmwZUrM/EZXSFzHlOv8ov4uCgWh+bRzXWketDYJVpplTOcxw8mcyWzG
- dJaYFELZPSNqsL5MHcpOSRMUqgpJXjYTFd+e1hrPc+0Aloh2y8ifGw2jYwh8z1wPJXLSteBz/Wu6aCk3
- syWqLkitYT6Peea5bR78na/x8Nln8TyH0PPL68P8NGhASMEb7j7F6+48Sa7UuVyr937iz/zU+eu/8s2z
- WxMAAp9/8au/wee+/HUC37ftsDmOlHQtEdTwPU6dWOW2kxs0G4Fpiw18hJRkaU6mMrTlBIRTX2krhyrT
- gIJQq73pKhhUgUIXdJ80X5bAWcjn6yx/WaIUIKkxxsV5FJzFNVKI484rawFgwZlrAQBRBLvrBAEsojge
- DIq0okAbUlbnX3wnNjCYUWBVQKjUjUUPQvHTtjFnpmlKa0M6Fu/RleaftMRt4Lq07XcoHaOPKOYhTOcJ
- w7Fpn54mKUmakmU589geF92QWUZdln11L0Q9/dELsx2LEqVvkUEratCKGnTaLZot02LtuR6eZyoAhZqz
- SKNuxKQUNIIApRVfeeRpfvnBL7HfO6IVNcw1V1xuQhiVolJ8+92ned1dm2S5ekTl+k994md+qvfivOyP
- bu4L3+XmmRFeCJQWONrArPF0xnA8QWv4g8u7CGEm557eWOXEWocwCDix1uXEWsdwB0qhLSQsylX1FXqR
- gTeva673YsYQHF/1K4dSiw4oag5drHSFA5dz9kTldMc4jMoB68ECsI5SoIU66lhEDnBVGbEeXBbQyWJ6
- Umor6kFiIRiYVQ1AuFfzCgukY93pip95pXJMlSJOc3Kd4UnBajvCcV0uHvR59vIuk4lpyIsaIS+7/STr
- qx06WZN5kpSdjpmd9JwkJpWYpyYgFLxCXqYyVRdn2UVZIobFgJBnOdOZ2Ua+GCIjgEYY0m5FNC3p2IxC
- ms0mzUaIU59QreulwEWooJRmPJ3hug7veOOrefkdp/kn/+7TPPPcFu1mg1ptGUcYLueh53YJPIdXnV5/
- INX6F//ZP/83H/7Zj33kJR2/fksDABiI2Gk1CX2P/d4R8zipdt2xK7tWios7+5zf2gWtaUUNQwB5HidP
- rHJyY5UoNH3kkWWKkzQnTw1ULBzTOFDFttfThDJQYL4cs7Ifd+DCuakCwHXuUzp4HTEsOPDVHMAiUqiI
- vyL4VGjBBI7jq7mQ0kiVjwWjxXRFLrzPKjheXYUoUIl0ihSiJiWuaQLqwaGSPBsO4Uy3BQK+/Og5hv0B
- 995+krzTJMlysiTmyw89jusFvOk19xJ6Dsqeo+9LfN9Dh2E51DVXpjSZZJlFELmdvRCTFJObi7HutQam
- 8ryKqkEh1ba3ZVnGYf+Inf0eaFWKhMLQM3qFVpNOK6LVNNuy+b6H73lWZFXNkBDCzE0YjCasr3T4bz/2
- IT75K5/jq4+fpd2MSswphJk1ITR87dld2qHPmdXOD8R59leBv/0SuZ45l5v1xFUK0GitndwsS0tQpQAP
- /s5DpFnOx37gT/PRD/wpvnH2PI8+8xzPbu1w5cA0gszipJRqFvJQQa0bzP50pWR9tcNat0Uj9FnptFhp
- NwkDbwEqF22lxblIYcdoy2pnIFOFoObwopznt7jK1lZVilVdLqzgV6UQpbNTrtILZcT6fbg6SNT/VY+r
- goasHUMtBTgWEBZShjq/UQtu1WtJjnMZgE0hKrY9r6UOmVKshT4Nz+W3HzlL1wG/0eH/+dKTPLN1yHie
- cmq1xQ++9RWEzHj4/GXe/Pr76bQaZGlWDXl1zE+BWWU9V9JuhGZ2otZmVFucMJ7FjKYzJvOYJDXIwaQQ
- VTekwsxuzItmqaISkVclytyWJbM8OzZ3QeG7LlHDcAmtZoPVTpvNjVWaTQPzC3LSfBrmOtcaPvkfPstv
- f+0xOs2oJHiLzy/Jc060It79mrsRUgzzXL325z/+0ZdMQnzTEMCL6Sv3PJfN1S7veesbeM9b38Bu/4gr
- hz2uHPa5tL3P1t4hW7uH9AZD+qMJ4+nMdIZZTXYhFzbCjgEC0zUWeKay0Gk1OLm+QjMKCQKfVmSGcIKZ
- 9ZdmdneiIucuFWVFYBDVylt3hEKlWBcClYgABPKYGOi4A1/NHRSOWJQ6pSxSmsUgUL9/ESDq51bk/MV9
- nOMIwMLQxXSkHhiuPt8qgFREZT1IeJ5l27WmAbQDj8e3djnZCtgfwz/6t1/iu197F+987V0cTWI+9Xtn
- +XN//9f46fe9mQ++8V6+8ujTvPNtbyAIQyM20hqdpCXsXm9GbK62URpTmhuMSLKMViOg027SikJmNmVI
- LX9gkIFNJ9LElC6znDzPqn4MXRctLQqYtC46KM1qP4tNL8KVPYUUkigMOHlyg7vvOM3mWtd0WGqTWszm
- Mb7v8bEffA9SSL780OMlJ1CY7zgcjOc8dvmA19+12dFC/F3gI38E13tRdstTAKj6zc3WYZoT3Q7rnTZ3
- n97kVXffbmSpacbReGL31zvi4vYel3cO2O31mczmpS69UH5JIUgzBSJn7zBhe6+P0opGELDSjuxk3pD1
- 1RZr3RauYz4KYWXBSZKWpKUjjey3kJmWAaF0BlmuosUKWl+Vj8PsyuGOBwCbekhh6M3iuAgsBQJZCDT1
- tMEcU+vlL1CGcw20UUczRQpREJfHZzIcRwDF+zbnTXn+UprAFbkus1yj5jFa+/yfv/67/FcfeDMrzYBZ
- nNGOQv67D38X73jgHv7CP/oM++PX8lNvvZ2HHn+Gd33HGwmy1BBxuSkrNgOX29e6HI6n/M43niKJ55zs
- ttFacXFrTn88487bNnn5HaeQUpK4DkppIoo5DWYlL1SOaZYxTzKyPEPZmYy5FVCV1RANHCMZta5avHNb
- hbi4tcv57X3uu+sMD9x3F64jy7FoSZoReB4f/6H3MIsTvvHkOdqthr22zHfkOfD0lR6nVpqc7DR/4hd+
- 8V//45//mZ/6wkvget8cAaBuBoaZycDNMKThB0xmM/qTCVIKVjot7rv7drLXvYo0yxhNZ+wcmNn3W3uH
- 7Bz0OOgPORpP0UqXo6d8zwHhotEcDEZlSef8ZePUjTBgY6XDSqdJ4Ht2Mm8DIUzdN08zio6hwmmdQmtf
- dppZzcL1gsFxvuBaty04di2FoEAm1wkGJSdQ4xSoAkB+Dc3CQkmyPNf6cx1LMa51/rXAU6QUGkHbdbiw
- s8/JdpO//2sP89ZX3k6Way7sHplz06APR7z81Bp//Sffyd/85Be4/44NzjQEu70Bd962SWo3X3GE4Eyn
- yf54yn9+5Cz3nznBNHN4eqtHmgs6jQ4PvGKTZy5c4sLOPm954JVG2my7HKUQSMcxnYW+V6oQNwqUiKnR
- z5OY6TxhMp0zt63GBfdQpgm1UWzFwhXlhvR85JnnOBpPedsD9xH4rgkCQJymhL7HT37gXWaX6NGEwPcp
- hrkIIUhyxVPbPTZbEVLyP/5fn/xXv/VzH//ojZch/pD2TREA6kREJSqxAx2AdtSg3Wwwi1MGozGDyYTU
- ooWVVpP1bpvXvfIetIbheEp/OOZwMGRr74DtnUO2D/oMxxOy3PTPZ3buoFsOlhDM5zHPbu2SX1K4UppZ
- eqHpg19fabPaaZkpvHbCjRCCNDUXRuEUBUIodOOmZVdeY9XGcAqOsKSdsOkC1oGLLkLrlPVqgKwHg2rF
- riMHITVCOqY0J3KDCOzGrAuo4VjAkEKY+1r1nQkIVn0pHPsY8xxom1bU5NoFcSiFZJYmCJWx1Ztz4WDM
- q+/aZKs3vqrOfjQd8LJTa3zXG17G//pr3+CffuLt9A/7fNu9d5cjw1Y9l1TAE89e5i2vuINf/dpFvvTY
- Bc6sd5jGKQ+d20Yo+Asfejt3BzG//+hZ3vbGV6OFLSNa7YLQGq3AcQRnNlZoNQzBOI3NjlGN0Kfb1sxm
- MZN5wiyOK8SQpub71sfl1+ZnowGO5/Ds9h5ZnvPOb78f13FKMnQep6yvtnn3d72Jf/Wrv4nvuQuB2pOS
- neGUK0cTzqw235Xk+j3AZ26Cuy3YN0UAqBp1bDFZL/4ltyxr4HucXl9lrdNmNJszmk4Zz+ekSYZMzcXX
- CHzapza467YTvP5VL0MpxSxO6Q2GDCdT9vtHbO0est87Yq93xGA4RilV5sSB7WOfJzGT2QyhYWvnAIQZ
- NbW20mGl3cQPPNpRg1YUIh1pZaw5SpntwJXWNc25YdKLXYvK1VUdg+AlcVdn6q+FDmzObyF4nVMweToI
- oWpBQVR8RbmyVwEAGxDqpcOqEasIPOoYGQmq6Fc4lu5IKTkcZnQbPs9cHpPkMJqnTOL0mt//JMn59lfc
- xpee2uWLz/R5xz0h/cGQTruFqxS+5/LU1h73bq7xuUeusHUw5L//sXcSBsaJJvOEX/r8I/z5f/gZ/tKP
- vJ1Xnwh56twl3vCae5nPY4rW4yzPERruXF/B8xwu7BzwzHPbJuBJQZykCOlw5+kTtJoNXM81AqU8J88D
- s1tUbPaLxMqYKymzxg884lRx8cohj567yJvuf3kpXhICptM53/n6+/n648/w1IXLtBph+Rk40iHNFc8d
- Djm1EiHgZ/hWDwCmIeTFPuj6Nxd5mec4rHdarLUiJnFiNuiYzUjzHE1eKcqs+a7DbSfXuUOeKMc+TWZz
- xtMZ+71huQPv7kGf4XjKeBYTJwnSTulxHDMBN9eaK/t9Lu8cIKUkDHwCz0U4gm6ryfpKx/a9OzTCAFc6
- 5NrsSYg2K2dRAy4qGsVgEWFTCZ4vGFyPA1hIN+rBoKYtcGqlzRIx1IJB4cBUKKEIDNfmAK6uQtQ5jTjL
- 6bQb7A0TpolibzRnnlTfi7BQQAuBECmu63L75gpfeGqPV2+c5PL2Lq+6N0LmOeNYI9KYcwcxX37qMj/3
- va9jqzcuJb2OEPzY97yWMydW+Ov/4ov8H3/2e4nmA67s97jrzKZp4rFy4pMtU8r77UfPMjka8oaX3c7e
- MCbNFL4ryNM5X3/8LO1Oh/tffgeBhCwzFQdf+zRCgyLTNCu1B0rl5bmc3hDM4oQnz2/RaUbce9cp0tS8
- 70wpAunx/ne8hfOXd6tFwn5XriPYGU4ZzlI6ofeeX/hn/+rOn//Zm1sRuKlVgBf5iOv+fgwQmA87N2ih
- GQS0woBZktAfThjOZkY1VstNNZSS1iL3DzyXxmqXzbUVXv2KOwED0w4GQ/YOByZ92OuxdzigNxyRFBwA
- 2J5xUZJJQsB4POPi9h4AURiy2mkShj6NwGe12yZqBOW5CzsSLE0zlBmMZLvLpEkbpEBKB0eaVbriFKwj
- ao4FAwPVK/a+HkDM32V+zIFlRTpWpJ5jn0cg7LEUAi0kMqeWklyjLElVPZDCTAXWOkQJwWCe0p+YHZrR
- Au1KtHRBK4TKIFd4jqnWXBmmDBPNYDAgThJ8AYPJlFOdNp/8zWe478w6W70JSbYY5A8nMffdvsH73nQv
- //OvfI1/+PG3cunSNq96xV24rkeaZYRSsNKK+M9PnqftCO5++cv5hd94hEt7fdIs5/LhiFfetsEn3vsA
- l7Yu8tXHzvGW192HFkb96ApTyvZ912wSa2czFGVFlSvCIGBjOmd7r8/Xn3yWVbtvYprlCGAax7zqntt5
- ywOv5He+bqsCNgcWQpLkiu3+mNXb1lZyod8FfPJFOtKLsm+KFECU/xfuep3gIRb/pDXkmE6zIj1Yz9oc
- TSYcjafEWUpx0VfPYY5zSzbWzZGC206scufpDd6k72UWm0aWwWjClf0e27s9tvYO6B0NGY7N3D0pKGfR
- ua4D2pCGV/YPUUobUYnn4kpBFDU4sdqh2QhwXdd2shm9eJIagYvJ6Y0zOQIbFKppP9VYq6q2X69GmLdo
- V3yo8QO287BG9ElbpqzSCNsAJO2x4FgKspg2XKvVufh8U9vqu94K6U8z+uOY2PPJ2m3yMDBDWNCIXCHn
- Mf50glYmrnt+SBwnzGZztO8yHI3IZcBzB2NuW2tzMJybjWPrpmEW53z7faf5zMMX+d3nRrxmXbF3MOD2
- 0yeYxSmrgcP+eEYkQTZX+Jv/+rd41+vu5sff+Wo812GvP+Yf/tpX+dG/8yv8g//6/Ww6hzx57hLf/tr7
- mNlUQgMSja/sNvR5JY3WypT/Tm+uc3g0Io5THj13iXe+8dsWzlMpzTve+Bq+8eQfkCu1MFNRAPujKUne
- RQrxXv4kB4DC5Y0dV+tT/l76/VVxobqh2KbbcxxOrKyw0m4xmk7pjybMk8Re/BVhtfg61bNluWlzBTNN
- tt1s0G1F3H3bJo6UJGlGbzjisD9i97DPzkGPK/s99npHzGYxCko1WkEw5rkizzSzeMje4ZFZRTyHdtNo
- 0sPAo9tu0WlHpWBKAkphpibp1KKEY3yCK03H5HGCUAhEbnP+ep8BPG8KUecU6o9D1J6nIP3EdVSOmACk
- gf5oyj0bEYkSXBQhdFZQQiDmOZBX34ETQMtnuJEidnq4jovOMwPdVY5Qiv4sZjDLmKYKlRTNP/UVQSBm
- KVpIbj+xwuef2OVN33snFy5vcWpzDdeSmePpnBOdDn/r332FD33X/bzi9CpH0wQtNGHo8Tc++j38g//4
- e3zsf/uP/PO//EHy3jZ7/SPuPHWCeZyWLc2gCaEkCct0QGtOBB7tK3vk2Zgre30u7/a4+/SGDfAwTxLu
- PH2Ce+86w6PnnqXphuWV6EjJKE6ZJBmdhv/Gf/KL/7LzZ3/mp2/a3IBbFgCuzhDEte5m7lv+9wImQKHR
- eY4UkrVWm3YUmWm501lZ2iku2OrJrz4DjShTjbx2RyEE6902J9dN6pBkGWmScTSZcjgYMppM2T0ccGWv
- R284ondkZt1LYabe+q7hE4qKxWA4QSDKzrLAd1nrdljptExHme/TaAQIzMWWpDk6o3S0YtfjovpQaRUs
- GpA2PeB5AsBxfkHUex4wKUQdKWD4AumYT60sI9Y4Bek47PSGvP6eVc684g6eSSUnx3NUfvUXKQSkWjML
- IsRpD+E6aG12Mw5cF0cKcgTjRNGfpuWKK5TGyLkpS7Se77LebXJ+f8xM+2DnBPpScJimRJ7gi4/v0gh8
- 1toRf3BlUCo6tQbXmfHj73wNT14e8Nf+xZf5x5/4Ti48e5lX3HUGx3HKreIL8ZDn6XK/haIs6DiSdjOi
- fzQG4NylHc5srprAaKsHjhC89r67efSZZ83qX3QzSsE8VUyTlG7Dvxs4BXzrBgBda7mpW+mAYhEHXNeO
- Oew144Gu7qq1JtOmmWe11WSl2SROU47GU4Yzs+NtIWC56gmorqurTkDXUYJ5uOs6bKx22FzrUugD0jRn
- aIVLOweGkLpy0OOgN2Bq5apZrsphF1Kai2M+T7g42ePZrSt4jpWeBgGOI4gaAaudNn7g29TDsOBpmhMX
- 8FSIkkcoRFGOTQkENWkzVxN70pb3hFwkCM1qL0HrsqyJAJkXpUJ7n2JegwSZK1KVg4r50Jvv4n/41JP4
- WXjta4GK12m3GgQuZLFmNBpDM8LRitBrMEk1h6M5QkDuB6gwRHuueQ9ZhkzmBNMMiWCaavqxZlVmzGZz
- CFx0ronHM37v/B4nV1tcPBiZClM9rUQznqf8wNtfyf/0S1/mN58+5M2nHbZ2e9x7zxniuApAeZ6Xsxbq
- m8O4jkO304KtPXzPZb8/5HA4ZnOlTZYbDipJM15+x2lW2k3iOMWxm8VIIEczTTK0wkdzJ3D2em7xR7WX
- pApwXfe2+el1Hl37f+GmF37d6gUMT2Anuwa+y+Zal24aMRibrb2L8dECcWxewNU5ZvWstZtti6pBCvZO
- qVmdO62I1W6bV9x5m52ekzOaztjvDdje63F595CD/hG9oxHD8dSkDdZZHWF6GKazmMlkVubxz23tIQS0
- ogbdTovAN0Rju2Vm6ZkmGQ02SxYYUZUjBY5b7bYjLWqoSoSLyOBaTUjAC6CExWCggccuXuGjr34V/+xL
- DbaGM7qBd3X+jhkAO50lvPOuVdbdmMPUYTia0ggD4iThzMYKruNwaRAT3X6SJIrMPg3F9+CECD/CyzLG
- wQTBhHmqEQHMZnMcERikkWm2+jNWWxG9cVwh0dqXOpwZ4c6r7znJr37tIt/14deytXWFV778DjtR2LHf
- vS7TgWKsuwkAkrWVbpky5WnO9l6fU2udMvPJVM5qp8VtJ9Z4+rltGq5juRXzmCQrNUAb17vO/zjsFlYB
- jnu+vs7xtW8y2Z+49n2v8UANFn5qfMfl5EqX1WaL4WzKaDoltixtSRjqxfNb/PV6SKHGaOhFPgHLPnSa
- EaudFve//C67YeiM0WTG4WDElb0e23sHXDnoMZrM7TZgKVIIO6rKKV9lMo0ZjEzQCH2XwPdwHIeoEbK+
- 0iEMfKQQ+L5nSp9Kk8wytBX5SGmQQtHv4Ehhd+upKgSiFqCP9zuUHECZElRVgHpFYG82ZX50wN/7/m/j
- x3/x91Eyx3PkVd9arhU603z89afI98/ieg6T6Yw875DkOeuRy313bPBbhwn3SB81jq+VR6KlpLe2jppp
- fM8zsu4sI0kdICdTgsE0ZRhnzNO8uobqzyUEoe9ycq3NFx/fZmukWHVnjEZTM+VX1OY02L4Nx3HKwaCu
- 69BqRQsy7P3+kMTOvCwaj8LA5Y7Tmzz97FaZnpnPGjI73BV0dNWb/GO0W14FuBoAvJjyob7m4dWvsDjp
- RVlk4rkOG50O3WaT0XTKYDw102DLC90+9TEUc12kcB2UUP9NaYXKlCkfYoZItKKQ2zbXeM29d6G1ZjKL
- OegfsXc4YLfXZ+9gwF7viN5gZGCnKPYxMFoCpTXzOEFrGE1mpq0VYboi200CzyUMTcNM4BunMG2wmpRi
- MxIsuWh2QHbdCiUUcxqpBYCSM6iTgPUKgyUUHeB3njrP+9/8AH//Q6/lr/3yY0x1Siswub0G4lTRmyb8
- lffdz7e15nz+/AzpOHieQ5KmJHnO4aDPe992L7/8H56g3RsvZm61TznXGpUoxOoKqxsd8t09lMpJ0hRH
- aKRwmaSa/iQhtMNJtCPBMROIzRyylCDO8KQkQ3CxH3PipGS/N2BzvWsI5wV0tIiYpDD7IwhMSiWlZDSd
- M57GrLQisrwqYW6sdJCOCbTFFSdqhLi+yT56ywOAfeeLv1+jxHPcrmIWXgAMlAv7VYHAqMDW2i1aUYOR
- 3VoryTIURaS/zknAIjQQx+91dXAQx0KDmb+3+JjAd7nrtk1efsdpNGZDzel0zsFgzGA4Mk5+0GP38Ijh
- eMx4OidJrby5PrsuzdnZ76HsqhS4HtKRBL7HardFt91ESrOZhReYfRoN0ZhBXFcyCiuBNsGhbJ92iqrK
- MU3AsYqERvPrX3mY9z3wSt7yF7+Tv/3ps/zusz0msdly/fbViP/lQw/wrjsE/+G3v0rUbjAYTLj79pPE
- 8xiF5txujw+88j7efKrN47tDOoF7XR5I54q7V5rc2VA8ZScCzeMEzxF0PA/f87l8MGb1xApxu432fbR0
- 7DWkEFlOkGWMmONKh8NZjue4jEYjVrtN27TGValQIejS6JqTG/RXDE+tBy6todVslPm/eU57HV11Ld0c
- u2UBQNQPXijRv4Zzm5z9GhDwerc8z6dpCEMD1dY6LTrNiHmccDQ1O+cU5NpV5w4LCEDX/6YX73ljKYR9
- jHXENMtt+c+MSlvttoDTNlcUzOOEg/6Q/d6A3cMBO/t99np9BqMpqZ3Gq6kIvTTLIBPM45T+0ciWI13a
- zYioEeA4DoFv+ATXde1EIKOZSLOcmTLaACmNYMl17O69jqjNVKicoQwMUpCqjE/97jd403138S9/+tt4
- cj9lf5LiO4LXnm5ysLfFv//CY0StkMFgTKsZAoo4yZFS0k/mHPX2+Dvvu48P/OOvkAuBJ6+GAVII9kcx
- f+7t98C0j+P7aJWTKk0cK1ZXfF52ssvnLx1xd2eVTNuypM4XvlzpeBysbKDWZ4BBQqYfICXLVJUO1YOe
- /antkBEzmdis5kXz0PHrLnA9owClWKQERmlQvaWr3uQfo938AHBDikBx7PgPEftqFYDq10VMfr1yYrEq
- m8GYZuVrNUKiMGAWxwzGE6ZxavPn4xddPTDUgsGx4sINpRDXeB/YvDJDV6VzeycpBbdtrnHn6RMorYmT
- lDhJjXBp75DtvUN2DgYMRmNG4ymzeWxRgizzfa1hMDLViqKCUUD+ZhTSbTfxPbOlVxSavoc8N44Zk1cQ
- uOQUnDI4VLMU7LIm4EtPnOPh85e568Qap1Y7TEZzPvX0PruDIe1Wg/F4hhTQinziOC45GdeRfO0PLvH9
- b1njL33PK/g7n3mK092g3KOvsP4k4f4TXX76gVV+40tPcNsdp42eABPEUBnveMPd/NLuM7SP5jhKH6d7
- zGcuYBTn5GsrtE6tgTZIKknMOLJy6pKw8u4CBdjrN02zkgcrrrtrXtXH0s1rXCHfogHALh83RgVe+176
- qoP6324kBVi88flCi659QxpdbuoQhQGNIGASxwwnM2ZxXMqJa+XbhXezeMQNowSoB47FM70m2XgMKUhp
- Ji43o4A7T28ghCRJU46GE/qjMfu9IVf2D9nePaA3HBPHlabdcSodARjp9NFwzGHPlKAboRm/7TgOjTBk
- pdPEsyQbUqIRJKmyOouqHOlIkzqYDTiMs0zncx6/eJlvPKsQ2pCPgecyGs1wHIduu0GaGlVkmWfnkkwp
- fv2rD/NX3vEmNqKAv/fZpzkYJ/iO+TziTHH3Rov/++Nv4OmnHiJzzGYncZzYOQ+a7cGQd9/3Mu75nZC9
- 3oTIc665RmnMAFQ3U9y70SQe7hC6juFa7DdQrPr5scqIFth9CDVaWj8oB+RcjVpE+X/BpdjfNaD1t2YA
- qGiM65s49vMF73iVE7xA4LjBP5TB5Bqvk1t5ZysIiAKDCIbTGdM4Lru8yud5XiKyOLoOSrCvW53CsT++
- ENmozfZUYBjmzMIFIQRrK2021rrcd/cZI19Nc4aTKXsHfXYPB5HwdOEAACAASURBVOwemg00DwdDprO5
- fV7jsK7rIKQgy5UpVQJyOGZn7wAhzUScTrtpOAbfoxlFOBYlGJIxs89n9QV1XkGY27I8Bw2B7xD6rpnW
- ky+qFIsW6dEs5TNf+Toff/MDvP/+7+TfPXSFJ66M0Vrzuju6fPRNpzj/zBM8dmmPe+8+xXQWgyj2lRDs
- Tma88rYxf/Htd/Lf/L+PEnarjrzjlmc5Z6KQN6w5PHplzgnPJU6S8pyKAHV81LtGG+nw8S+X613rlgS0
- fxRCXh+u/jHbNwEJeA1HsLbg4i+O83tRDypTgOvgNI0pU4FpPoqCwOxdP5kSJ4Z9N6Wz65OAVXC4Dkoo
- b6gulEVq5Hp8wuJjOP462syq02VAMP0F690Wm2tdXmen14wnM47GBiXsHfYZj2cMxhMO+kOm8zlxmqFy
- ZTsjTbMSArOp6HgK6HLsthmRHRqdQuCZrNb1kKLYbUdR7PRQpA6uIyEzpKgrqwlM9cnLBVzuj0f8m89/
- mVfefoo//+Y7CcJNUwEZHfGF3/1dLvX63HV6jTRJzWp9zEG/8vQFfvZNr+e3n7mNf//QFme6jasQpRCw
- N0r5C++8FzntoRyXYv/FqxqhjvEAWmvTx6Dr+w4c/0IXX6tAFOU3V10A35oI4IVNLPwwdp1PqUBON0gW
- VnddzLyfn464tvMfBwW5nYEfhWZbquncbokVx2auQNEsc/z1xbWCwbXsOhjgGKdQv13ra7/O9ZCCIaVA
- qYwkNRdgsxHQaTW449SJsq9Cac1wPGP3sM9eb/D/t/dmwXYc6ZnYl7WcU1Vnvyt4sRAEQRBEcwXJJtXd
- UrekVmvkmbAdCnvGM+F5GL86/DL2xMREOPzmFzvCo3CMQpZH6h5pFNa0NlOtrZtkUxTVG7vZbJLmToAE
- SALEcnG3c89WW/oha8nMyqxT9+Jegpc8P+LgVmXlVln5//n9f2b+iWs3NrC6vokbG30MhuPMow0zALIt
- swxBEAwGY1xf2wAhgFOrod1qoJac1OM6ddRqNRBiJP772ZQkpUxvzlcxMnuFmcxAmImzVpOYoKB49cIH
- eOXdD2AZBHEMTKIITs3GUq/Jdh4CSj8IgyjCD199Hf/3P74PiIBvvXwZrbqJusWmMYOYYm3bxz+8fwX/
- 3UMd/PGTL+PY8ZVE2FOIXp6g8MTE2iF1PZ42u0Ljy5g9Y/7UHkCyNJ9WAYAE+eSzn1oTnmLkVi4CmoL9
- izp7/rzwcZT2BGR2DZpY2Bsu2448DgJsDdkBFzFFwVgomHkKQo+7UyCFQk1kw6FQbx1SKBEMlNsuLZXV
- arrodZr43F23IwwjDEZjDEcT3Njo4/LVVVxJ1IdB4pE3DKJstZyVOAzxk+lISins5CBS02SHcDRcB62W
- B9Ng97bNnLWGUcz8Mqb2hMSgaJmcYDBIdgS6ZRPUCTtmfDLxhREZRFQnTMPA+auriOkr+N1/eh9+/+Q8
- /sOP3sel9THCiKLr2vgXP3cc/9MvHsW3nv0eap4LixjwJ37S/vk5EPyeCiBdMcm8CqVczEZ/jZNcBYrA
- bvxo7JL2UQDQ7KezfhbjF6PsSBVKEuhguFCu0nhHFc80UZMHqU/4es3Gom2j5TrYHAwx4nYgypnJokF1
- W2g1bSX4u0Lm+ROqE0Bi5oVJiZgi4JCC69TRcB0szXdx5s6joAAGownWEhvCtRubuLK6huvrG+gPRojC
- OEFGbOGVQQy2WCcMQQBMfB9rG1sAYX4UPLfOPDPVbHiuy7wtRQliiSiCkCIehTCM1IcCyRACm90wsqXM
- +T4FZtPgmcw0DLx96QpubG7jH33uFP75o4/htSsDDP0Idy15sCab+LOn/g7bYYDDyz0Mx2NBHcnsAERc
- EWmYBihlTkNI9h3z6UAVpSsriaKvHFgjIJALMnWfZE+IzFFlOBz5Y6U6XyppEhSg5nExP+6mTJjwOaeC
- wKnXUK/VMmPh2A8A0PzjlqKMEgtBJRVCzLySCiHHLFMhKJgDDKnUum3hyKEFHD+8nLhg8zH2fWxsDXD1
- +jqu3ljH6jpzv7Y9GsP3g8Q9WnrEdgK9wwBrWz4IkEB/E4Zhwq3X0PAcEIMJkPRsvzCKEUzY1mKm30Op
- PqSrGXk37iDMA8+Nfh9P/OAFdBseVuY6cGwb37+wgQ+ur8Nz61joNTAeT5Ce95CmT1UAfgEQQGDHJkZB
- hOFolB8GRLU9O2tc/vMQwr5JMggcTAGwE4dA+QII5fCsDdLmJ0QvIgAdqlCVLokPrj60EBfIBQGbPmQ2
- gq3hiI0InI4o1EX1DjoVRLqUa6xTIURhUNKYFVY2kvwyKZM5xwjDiDGWZaJle+g0Gzh+eBmGYWASBNjY
- 7GN9axvXb7ANUIPhGJuDIbb6AwRhlG3aYoZGZgmncYzt4Qj97SFgMKTlJPaDms2mJgkhbFcfIYhiIAxj
- jCZMTJmckdE02ZmFtmXBMPP1/KZBsDUcYHMwyNBDp+Wweo/9REfPBUCZq3fQGOubA4wnAUzDzBEpRZEp
- sm7AiX1Cks/z8egAt3wWIEc9MtvtogG08F4rDgoZsLafVjYtlVUA5QSBA6dWQ380xnA8ZodVIv/o8tnE
- WhOAPBoLj/gOtFOkINZBnmEQAcF0pMB03uQocu4RIQQLvQ6WF3q4+46j2cm+QRRjfaOP62sbbNts4rx1
- e3uESRDkm5WSsx5ozFQOEMAcj9EfDAAg8ZvgsBKJgbplg4LNKgQBm3lIkDYMEsI0Adtkex5MIxcQoGxv
- RZg4XeBXNIoCIN0FSTJ36AYxEIdR4vQlbVXK/UpIVgHy6AcTAVSh7H1VE+KFyOrgAilVhJxbdSpAHibp
- 0Vx+hXRUVy2SMR+lzONwp+Gi5ToYTXz0R2yvAVMhFXqfooa6qdJSm4LGCFjmjEXMS29TqGRsBCcnOJRA
- kY6eBuq2gZWlORy9bQHpPvn+9jDZNr2F1bUN3Njcwtb2EH4QIYhCUIr8ePiEcSYBc+1NwNYu2MkCH0IM
- OLUabMtgAik54i2KYkyS1XoGYcggXdJsGgzFWFa+ESrd8EPTkR/I3KPzR8vd2BhgMBwnh4qKA4/SBog8
- vywsQROJ2Pj0CgCR1D2t3BBYbrwTSeRkguIH4WW2Kj+VQFHUgoUlOJl9eJp0RoKG68Ct1zAYj7E1HCGK
- I6TuuvJ0EI12XN0K1SrR7XUWAXkWYTc2Bf3MowZCFOwJNCs7BM0O0SCEoNNuYK7bwrHblpI99hH6gzEz
- NG5tY3VtE5tbA2wOhpj4geBVOfWF6AcRM8oZFMPxKLNF1es11CwblDJHpJZpI0r8+wURBRLcQsBUNsti
- RkY7MTCaVr6FmgkBA0bMvEf1BwE2t8bJCUv5O1Ndh1K1eDZVlcU9qAKgAuwBULCAKHJJo4kBaRDVxslH
- 52I91J2eZP+rpmwKykTRJFCoOaF5mnQ5KCEEbc9lqsFwhOHET1xEc2UV2kQJD8UalbSjzm9B8VaHFHQ4
- owQlcJWqhBLA2igKKXP2mkVgbtd77SZOGQaCKMJwNMFoPMF6f4C1jS2sbfaxvjXAeOLDDwPEEfPJCML8
- JpoJwwbJwaHMWGgiMgNQEOa41bQSxx4URuJDYRLEoJMwWe/AeVpKtk4TgyCOgLEfIYgiwb2Y8MbpIKBq
- I86ewK8y1MKGPaR93AsgCzKRSPKCRRtAyQsrmEwal5SjYCHOFKJyp5aEDpXuyoQJzaLxjEURUcAyTcy1
- mmi4AfrDEUbp4hVlN+FKFS16Ym2EAbfEcMDnoGF0QuSvotL7S4yNXOZ8u2XfgyoSUalCSR9iJ/IAYWLx
- b7jMj8LifAeUrgCUstWZ/QE2+wOsbW6jPxglJwePMfH9rKj0DER2YAhDV/7ExwTM+WrNtmEmh7JayXqF
- KIoRRBGiiCKMKCY+FapPCD/luxOmldcBAMn5Lmk+BxMBTGuCnDHSEML9VaRWBk1X1iWwm13xnbu0shq9
- Le/EpKg6yJEV9QKQGctqloW5VhuTwEd/NIYfpO7M+bjVhBg/26hLU2IC0KoRBUF6EysbC6YfKkaftluS
- PzaOr7ZTq+HwkoOjhxaYB6TkbMF0h+T65jY2trbZ9OzEx3jiIwojWIaZuV4nhJ33EEZsVLYIQZRszndr
- 7Ci5IEEJBCQ5NThmeCXtghr5TTNFRG4hAv57E9EZwMEUADsmTS/KxEEpr6vTTgPx+jUBnHIhyaMi85Tn
- l+WkYRKaGQwpnFoNNcvCyPeZ41DeUKgZ9cV8JWitSaNCUtmVDikU4CtRXhZErgYpCCEVpyUL/UD6lul0
- JAsg2WErTr2GXruJOw4vA2BuufuDMba2B1jfGmBze4Ct7SFz+52c98emB4GYEBgUmeEwDCMQg6CWnCsZ
- xhGiiDn0iGOKMI5BY1ZtmkgFSgnzgyjxf4YgSGqXSdbFkClq1R7SJ0cAaF64pK9mAQXMoAYDUIXqup4g
- VDSgpFwyqMoUI8pJ4mQenJ2KXMNwMsH2eIIoigX7gCBgbgIlqNLtpbGRlZW08w7aR7jTgIFcsdA8TLei
- JyNv7pkRsE0Li4kX5zhx3uEHIbZHE2xubSdCYYjRZILx2M90+/ScB4OwqcI4Yn4ka5aRFElhgy1wYqdG
- sTpFEVM11EuB09dImV98TAGzmGjvaJ8FQKLAVSKiuKYaJtalo4UgnXEO0EDQQg3E5yVdtbSeqvn5QvHJ
- IEFjNmfdcBw49Rq2RxPRD4Fu1NeN+JDbYTdIoQJKgGowJ8IfVfnVjI3KzLnsiHxZKCtDaDxSAJu/d+o1
- uE4dy/MdEACTIGSnBI8m2BoM2RkO/QFG4wkiShO3YMxYiDhOpgJzR6o1YqFus+swjNBwLDQ8R/IKlIox
- IqA8QnivgAdWBdDg64SKvKdncWX/qDj4lgmQcuGiHQtLC2K6tz6abhBgpYiSi4LCJAY6DQ+ObTE35olT
- 0CxmldEbN48UKqEE8WWUweyRGiWwcrTVEXLRLV4qmgzK7QmsTJojhUQumMRAu+mh22pgBXPJ6cIxhqMx
- tgYj9AdDbA1GmEwCTALmiSmM49xBaDpNSNKzGZgXJv37JSpAMg2Yf9+DuheAosKmJgJ5JVyWWIilCq3w
- XCmDip0/n3tX5wsi5TFFL1FrDNOxTEENomnnpKjbNmptC8OJj8F4zM6dL7ENkEJRN4cUqsw8CGmIcCdQ
- 2TJnIrd1BZtCsWo6pEBKbuVymKGR3/dgGalQaGaHw6aGxvHEx9ZgjP6AuZkfjUPmwRkU6aIeNfczfT9b
- Xci/zz5PAQK3ehaAtywpEzBWKme+PLhgj5fy1qryU2o5LagIm/WqSwrv2ENdbYqSM9UfG04dddvGcDLh
- Rh1N1TTKtFroKl5lNzYFzarOEpRfihb4OwoqoRJtjbgrneATy63igSlFChEiRMksQd224Ng2mq6DhW6b
- oYiYYuwHWF3fwrmLlzEJw2x9gLK2EuPnq0MpcHBVgHIqUSMhc662f0nfVjkboJUxZXposR4q4aHMt4LR
- SzdtWFZaekcpO3uu3XAR1GtsjjsIxZFDkbvIl0VLk1y3YjSOEcskssxHSihQVjeJhOoQIVi9j0SuXxnj
- lYwmFWwKmacfRb9ruHVEUTNfFVhAa3ntZMYn4IXAgRcAZQox+0MIAVVOnlbPVsf8PJWIlSL0lDpRGWLJ
- 2TXXOcrHzmnWB0jtQQur5ShlkLTb8DCa+BiMJ4iSsxDFMopFKR2qKm6qGBsLIyctXLAkFQUQXzfWDlCS
- 9kQmqSwqZi7noq6RRjBQWRqUqRDJOYEgTHCpF3dx2SSPUxsATXKkB1cApK+wk/gyFUdCLbSWoKImuaKU
- 6YKjMF4rkqhPKdAT60vc2yh4UoUTqOLac+qo2Ra2x5N8xZskUPUwnSquuEoo0lRRIeS9DLtTIUrWcJYg
- QWWFgAJj768Kkf4hmb9IXVnp5h/eprMzVXX39LGoALqXIQTZqqesfQpMK7I8lYMVBZCK8ZTCpciLINz/
- jHFVwkA/MhAuHhWi6NUFcRzMQ1Svkx5J3fFcTGwbg2TbcWGnYZqjbsQv1IUTDiVpVNCJFDqyToWQYlVE
- CjLXa/tYmTpQNoIrvmuhNUsWMKVTe0pHMELEIvNneIHZHA4qAsgxgPLdmaLDLY5IDCEKBqyiRsgBBTnC
- gQJtjpXFLpe7yjigyVAVrbKhd4r1Kw2q2xYss4HheIJJGGRrB6Yf1qoqRj0SVkUKfDo+TdlCpKpIQU6z
- U6RQfFRUCfOytDXirtSZE4Gpy9RcKsQ68DaAso1A6XNKKUgSsbx7ig1dAhBQ/BRqzmd8K48IkvBQQn3k
- 9dV0KJXKoH4/IjFDnlJ7OjktaavkmWkQtDwHTshmC/ww1KIBlkxTO91orBuJUeD/LJ3WniBlLQ8XO52W
- LO6406EYqQoaqUGFsspUCFnwpaO/OLoXKVnclf5LZgQ+hhlAAJ+gpcCyCpBtiy6Li2mD9nSxooWO2mfV
- dH1hhQOhiVyf5po8EW865i9RA9gDIoTZtoW2ZWI8mWA48TM0IOfNh1VBCjue9itUWo0SZBKZrxpSKMi5
- kjRVkIKMEkS5w32Zko6Ube/VRuEERTIocO9xMBHANMrgPuf9JHumZP4SxUA5oCgYVctY6odqdSHvBLTE
- gaacRquaCEWqoYKAf6QydflRADRmewtcx4FlJbaB5BixYt5FYSDkV0Uag2udksbXoQQ5nax2lI36ygyk
- rImURhznuRw0vFr0xq5qyOQ7EyT7BpKYujyT/yTYD5DUNcmBFQBTdAAAyvZD/kHFzq0eaZJNVAqBUfQ3
- rDujrzC9w8XVCZm0hCxWqS0AkAWEKtt0M0i5ClFMrcqPcA0SxzEs00DbczH0fUz8QIkGCFACu9TswuBq
- MU2xw+tUCElUa5icFNKp0+inJcWbXU1LEv0nzrtWovJk/Y8dGJpv9JFz4Ed/bvBLtwQf2KXAVUhe98wF
- Z1TCVKn0FPhXEV8FSjVqnTpQWwcq5CMzRv5IDSfK1Q8iZFpd7SlWIGVSQtgZhzXTxHDiZ8dcqdQIVpBe
- /IpJbkKFAHYJ0wVcVFIYl6Ti1ORNT0tygQmqz9pIpRoR7pfj1+z/AyoAaCrJKsbTPKsSmA2+WpSq0Uu1
- zCVCdqh5QnhAtVY7KQOdxFDVuTxK0mM4VFPSI9OoFBS2ZaFtmhj7PsZBIKg7wivophFLlznuUIUoJKk2
- gmunJUtUj+JLTlcjdjUtmUZNbD/pgSI6ystIPQ2DrVKsJOlvjm7Z6cCEx1NljcPlV0bl7ZWCMQ7QaZGC
- XHL+RIc0RCBe1F80OWmUmuSq2qAmjEl8p9HxAROULJVbr8O2TAzHE+ZXv7Qc/oFWImq/105Rgroo9ahf
- OhJ/7Lslk29LEzWgRG2QcpMus/sDigCmEEMHUyBmEiiO7sqxSi9EBEblG7k4Yqs7r1RHBYPJ2rEOjWhw
- iILyEYPJEb3eIGAASooRsogctknlBKWwTAtN18Ro4sOPAs5yIiILbfPuIUpgZe0CKZSMxNWQgigYqhkb
- xXT8KM7uc+eewoIgBaWCIjUcSp6lDroAKMH3um8oUWUUIMdTMIvykSbebhBYQU4VBIZeCOnO2shclJU6
- GtCWkjyWkEISm/nFZ5tXrMDAaJIcd06K8VkdxHy1KKa42keZZi+Qgn70rogUSuwJwncovFLJmxDxL0Gx
- rbLHHPPLRA+uAChXAphxhIAojICFbNI0hRynMUTFB1pYzz9Mb8WRVM5IjUCpctVo8c1LMALXTgWmSf4r
- E2qKFNxIwxZkObYN02RCIPXTz8cHVIN3EUkpq69DCoCqIZOy9Oa9aouXshI0dct1NN333u0CJvbh01V9
- AMld/SrqLIqHFDHodhruJe2rEXCaISCDo9l3yJbLiJGguM3U3SJb8CpU8fsRcI+5OCIi0Z8glJeX6Xe6
- Tq/JQRdzytCYl8tHEZqKX3ykiYRieBaVUliGiabrYDwJ4IdhEkdaf6kdSnkG1AsGWX3S7gQtGxw005Jl
- K62qCocq05KAWjikQTmkN7LDSKcRExYEMQjSWSBycBEAo0oaLw+XqHAxLaXiupQbNcHVRrFCqinxMrbR
- xCsCT44hUwGmQBkaUCvkmacTmTwL0aGeJKFbr8EyDYz9ABGV1sDt5vxBnX6jqlueiHsgqUvaYsUnu1Ej
- bma3JOHam1/9X8b/BJAOGBXiH0wBMGXwB5BAHE5H0irvcsbaGDtj/qQWlewPeVYc0lD0E7mb8swspy+1
- DwDZCKiE/CgXQIRIpSnjEqlImteJsulCkxgY+b60u5AIWUiV1tRNp0aIwkTHKGX+Ij62aUmdCgFeZqQd
- mqRDOusFuqnAjPHT6xw9JHQwBUAV0q33Lx3L0/Yt8JFGJ+TS6Ky4hfLKoLjuIa9HlsqhIksr8c5Uoxkt
- 9G010xXVC62xUfDBz44xMwwCz6lj7Pvww6jQh4sCMhkJd7P3vqKxsfia1ZCC8K43aWxk6XQYTk5YJWMu
- LyoMoAdVAFAIr1GFkv6qM44V4qZPBEyrqociSmkarswq0iiJUNpJs9jcKKvNSVG1UkGUBhUzzg85kfNR
- iKPsJkce6TO3VoNphBgHoThUaxmV6B4UEin33is/DVdnnZDdBVLYjbGxWEfC/Z/C/3wloFFWLwDESEEC
- Se2HqfXloAqA3ZPIDNMUiTTe9DyrxFGWSlVxNNphRblBtQ81JXGqkn5fTg5D5HbL6lOWASDAA3nmom5Z
- MIiBkR8gPZWxfAVksXwWRWSGXbkF16QplZsfE1JIi8rWAfDCgc8ivU41gCoD3x7TLRcAieqTfxyBUys2
- ANHB2mofWSTNyKhNqB4C9a+Qd4YC8yTxdbA6f66Bm9OlSlKussolPu8YaokBWKaBhlPDJHGHXei02fvr
- BUNxLFSVKSbajU1BdZsF3+TMQzFZsSC2DDgVBiLMz+OkjE84IU94+HWAEcAU/k1tAIW2E4eramUpGU+d
- XqkOEDFNBZVVyqhkxE0ey7WRmWfqCDONwatJOKlc8ZRbZVKaQ2QKCoMQuPUaJgGbKlR7xpLerWQWQJ+K
- Fww7RwmAiBS0wkBMID3kEFFpsYmqperMZXsBpMZPVQCS7/M4oAJAoedWiS/f69wo6VhUhlkqeS5pxcr9
- 6apSZQu+3FlVNUo39UyjSvCyZOVgUiVkCIOIoawMRbmc2pDlK7cu13/5ZcR124ZBCCZBmKkEurrpRvly
- r718Eh1KEBOWIQXxslq5SqSgHO3Ti7T9c8ZXj/1cWgIQmiwZNgjj+IMuAGjyT/ucUnEppdxCmuFoJ1rR
- XmpQSlfapX1Ig3mVlVJY9PmiJF1EvM0FjBrvpCOTugJEql8qiNQCUBiZkO4sJIRkuwqlYrlbdWPJi5fE
- 2unSyKTvR1UWMJWublRdVjA0plpt5vFXKwISJcAAiKGMdzAFwHTKOZxwIYVOLDEPzwLTYDqBDi5qUpYw
- qlIeqRFqqeBR26G04Dt/XF0nuYlYVBtRpeCw6SoK2zRBCDtQM07XLpSOxOVIRpVmdyqEvtzdGBtLkUKe
- QPyb5qaDAZyQKOa5M1fzu6Fb5xKMUAhDV0JTvwund+dsU9LxlSqdyFHK0U6j66u1Zyj6WZmnO21tNdFV
- 7CcjASjUEi4eUb9vmQ8BHvcXmoNT0SgFLMOEUTMwCUJEcVQ2SBYdc3DqivBEK22l/EqgmN6moC6ourFR
- KkxRbrojsGSjDzITAeWdh6ZuwQEceASQ8nkJAuJHwtKVeUodForMNaxXBi10dxVHCtnoMXUsnqLzE+6i
- mjs+qlzBqmH7/H8JXRSEC+VDWQCvNqR1Sz0OOTUbfsAOzpRql5ehREGKOlZEWIKvv10gBdVOSXX99Llk
- OyyltpSO+5SI5jFJ+kdS8w6sAKDcT0GZswTKf8AiO0/jWZkJCmnKk0tPppSvzY/r3glDlX9ymn1zVUGy
- OBIYRptmGicXa14UmwpxkWSralmqigiKum2BECAIcyGg1YG1x3DpUIICW90kUtCihMJtmXBI2jTTANKh
- PUcAyhZIBsd0EVCax4FfCpzz/rSRTvpgVZWeaoO+Ng0HsSrr7EC10bjc9Vyl4VyJ75XolPKXRdGlVQmU
- VSD6chTMU/xc+ejFjINAEDLftqWLl1S1U2lD2YBJxIJl9Ub7QcUOUGUGolw4lKkO2aA+ldi8f75qUMrq
- YAqA0uE/i0JABVdUxeYq3/smPygd9oqUNnYhfTGP8ig5K5QMuEmasi6RM20xH8UIQjWjNncneqoShULx
- ncpWQKphtmYtE0ABy7RAECcHk2gyhmYkLWYrFiaoEdVG7Y9zajJb90PSwz704iAb8UmaMB949tsMeOtm
- AdK2SIyBesmds0N1aK5uaFVjajuwVvbnsEE1+mlhtX5gK5ZJizBXL1g4cVHaKMX8CFCYHhTqJ8B/Pjiv
- p/xMbmPLNABYCMIwL1NuW04ACXlJmVdRIwpNoJ1qrmZwpPpIJWoEq6t4OpCq4hBVwUxYMIpBYR7kswFL
- iSL/cJkw4J4JEYtJBaqgDmjH1mpBxYwJpjgiTaOlI7GeSYvvU6bjltdJDtZhoqzJs5dViBwt1E9iaNou
- e5Y8tkwDhmHDDwLhsxfrJb5AydJ9KVXJ0KDNQ0rDy4kqKgRQ3eDIjezaCCTHCBmWZBcHVADwGsBURSgf
- PQlk2Dpdr50qEIBpPUifH1WGspDy4Ty51HdIPqjU2kw0jEz1nV9yUlsYPan4X14PRaE6l9mA2K8FdUR6
- H4MQ1GwbfhCKKoQmaz1KKNZBtLyXMZpGrFc1OFZQIfij6QnJHX3oa8V6feYQJAk78EbAqsTvYBNIj3kL
- kSoAABCpe0/hN+FG639OV6YwmlQrlwgMq58MldGybgQl0BveaB5JIcUUapIsIDXqjNAeUuNQpEIgUQdU
- QlKF1pX8JwsHrn0rI4W83HJDrx4aqABAvvOvbPWfmLvBF1FECvsqAPY1c9bEui/CyXiFANYsjoIiZpYB
- Dzq4YqQen+hk3D8+D0U1NXHFNIXQdan/hgAAIABJREFUCuUWOog0kqnLIxrml4nkjSg1pJCbcEOFJMU3
- zRlGMFxJOVNFXdNohkHYDIGRF1BsFa59uKyI/ONaNbsi8k/fl3RlGlI6cTGPukKq+Fk5GRIo/VoZ8+ft
- yu5/49/91r7x6b5lPHUZo2bgL0Qr+YB8aUmWFWSuKiVXqR3nsJs0fNl6AaRXRStJRzHnEjmnfQPpgWzJ
- 1qIZIYKUCU2QgGnmTjJK61YyknJp9F+BFw6Vm05brj6PYg2qlpVLYj5+ekENthF7f+gWGgFZA+9omkPV
- mGU7s7gbJTIoZEmLcaUys89SanjIDVi6cosp9GXp1NDy5bZiitI24ewEOmVFpWqoZ1C48lSFJnUjhMC2
- CMKQ7R/Q1i0NLpk+1doUpIzEFX/qSJVnHlilinXJ6pkjkmlegdNFcYRrtHSpPAWMiOwfUL/lNgCxZTL2
- 0sYs2qPK01QqVshPwZiq5FJ6nQ93uRhKuPfgjKQqd1WCBsFfJolL7RgpwpKtgco7ZQ5CRKVoUI3YkvIv
- l8M+WSokCGzbQhBE+SYijV2HR4wEesNfmdFVN7nCCz5C+Cc7sSmI9oRcTUkZmghlCvlIoz7h+whgGJEi
- 0R7RrV0HQAiK8GaqZqu90X8s/aEaYrEqPFCxXkS2JlcQYkKlxBpWZtAC6QwERHunX0zEBxCBAUUJxhXJ
- wZaisM66uBDDts3MMFgw1BXAgcZwl8Uh2saTPTAJQ48E+0SBoCqpxFgISYUoUwOyUZ+zEaQXjDWM5Lcv
- esA+TwPqLdF5pLx9CGEjyG5XP8krRPNiOOjHlSsmVsE/9Z1SMNCCEqCppf5gD76cAnKogi74UCI9516u
- AK8LvVx9noEorzTikZNufFur1wzk5dqmhSCKCkhKrWsnRQnCQa1bCSpTRTVCymLHaoScUXY2oK54Ag45
- SMKgUJm9pVvmEISLWOyQZZCuPCs1CZxZiukqZKZidFrQT/RZ8cJIlBpV4aZuAUpp9fMVPyWnHk3PUIdP
- 9AgrEWglAohVj8AyTURRJCCpqlu9dehLCFVLzCTeztWIEpEhzRzoifC/RFBISpCBffQMfGttAAqdu8hI
- 1WG5qqlFGLoDZDEFYSsDNGmmd5oirC0vhtOWS8rUtpUWKYk1UyFcIhVa7iaNe8S9nO5MB4MQENNAGFPO
- M5G6UQpejzW6oRYliNEqIQUqvWA5ACBZDH5JsFJE8tOWWRqaxKWId4mIq9AnwAioIM1QVg6C1Y3EqaRQ
- 7ZbbWW5ipMpuogmXZxlnV8gjKXhqdDol/rQRm12Vj9osjsgR1XwbSnlyhkpCDFgGEMYRUyHVVSscYqIt
- SosShBrokULpYKQX/vnITnhZoKtlUdchKfvDInT/pgFurQAoUYv4OIpLACojTDluJ8ijTDmTuDha8OUm
- /xWniKbA3Oy/PJLuEBRtztwITMQnwh1RxM+DpI6veVVB35UvZOZMHxNNy5U60pQqQQCLMHVAKzAJ/65E
- GYVd7saeIJajybrUpsBj+3Q2QBk7URP4hU/CEWw0LlZiD2n/3YJXGuB294KE6+WV0T2RmalKnYrAXT27
- ph89C9HV/Qu6+QpReOnrKddalVthJCuxKeiRkAo/68diwZnoFBSU6sMwDYRRLEWrgFBuEimwOqq/fxWk
- wOIl/wpSXx2vkHl2Q9JZgH2hfXcLrofm/EKgfNSbMo5ryhKXsCirIZQtXyjianpUlc09aZ3kKLy+q3tR
- dfcWH+oNaqR4R6Ryi4nEdDrFVlPXnCfVyCUXWiUjsYpJKTt/wDIIophrMyHbXJeQMY4i68pIoVhHHVLQ
- qwA57E+WF5cNchlSSD+w0J8PphGwbBYg7ZBFowxB6cksUPZDaUgullOVNN+ck2Vlk3tlmeWjcdEVuqaN
- yqot9M5yJs3KFYdFbVVltSr7Rqr2yLIqFpyFJFJCtWhGfkeBqZM/hmECiBHF4jR4+bfixKhequuFw00K
- hvQJ+xnsiqDQJ4SyBejPV2T/lgEDt9oGsAvSoi7Fg0LH3zm2yPPJhjodoikvJQN0fD+rePBklQVOgBqS
- ctpk9qCqbKm2C3JKHKpqDwnycr70VbkZBmOimObMUKVugNwmMkLaPxUiH9aT3X6qRSq5EUP4TkxoZxmW
- ryO+Sfp4BACvjCJ/Sf0nnM6oVdX3AiguHTCrjMbT8YkqRqkqMiW+ciqZFvGNblTM4iVCbKqBM7lQjtpS
- ZHH+XJFfyaKDjP/5KcJCBiyhaRDQmOTTgyXz67xwKG8THVLgKkx4Pt2ZCkE45i/bU5DtWkyvQQDErOwY
- oAfSBjCF+AYRPmYBzt+MmNAkTC8LEFRdbrXRWMp8Wu1y5VldZlkOXNpKPhO5ktQiSipXq2dJ8blMdWVn
- 6wFLvOeUthrJCzENg6kCmhmIPAkPzUtGbb7cQiV4obQzpKAtTPNRi+AhEbb5UuB9o/01AqaITdE27Cw5
- cbloRlOHsvRJmY2hApGSW5rWrEwH5KJPMQLk3VjQT7RpStGJ1HMrtUIJkxbKlaC5HLNgCSH6mufOQ7Sw
- TGhj3UhMwdreMg1EkaQX72iZM59sOlIQBCaVq86VKzdJuvy3dOzPKfMIRFh53IKrAzoLAEAH9EWNQGIw
- ZQopQpZUM2IrQ3dIpHz0KESviBK0S3oBPY9rQtJgNb/KPZKW8bW6XM1LlbevhDVS3qnUJrR0uW5KZjIz
- kD0SVhlKAkhfbCWkoO1uUoBODCf8DJ1bsGz5L8lfoxhv1714Ku2zW/CSqpP0abHpdBKzfJAtiO0kdJco
- gVbYQaghLUqQMiNyCepX0LqzLo52Jbo931lFqMPFUZVSTCTWTde+EgJS7Z0XLhT5iHBEqItBIPoRSGNJ
- jS++6s6RghYlSAHZ+3KIJ7Puw4DsTEWVT751mP/C1AAO4EpA9dgvUTrtJ4hWPQYog1L6wU+tQqhZiIui
- M0ztYIRRxiuMIrsYefg4hRdXC149Es63UZcLEHXdQNRtkKONKgI4veMUDCo/EQWQYbC4sWp6UPMaOmMj
- BbRrK3aqQqTfKt8MZACkfEM/4cVDmi6FdvRAqwBTKJUSBf7fOYivnKIc01UTWln06pOMSjSxk81J0zLe
- ZX66Qba8nMJFhYRFVS8NFpccizhYMMBJQMkAAYghMKK8YUenVvGPGOOp1YidqhBKmC9mX5IhMrtBZggE
- jHgPuomObu25AEBRVZXCCgYnqr0R8ygpUhuRVuOFPL0GbpaghBKAqhkV9R23GLhzwSlG1aMvNXEjtpxV
- QatRqxCsr5cgDz4HhepiEII4pmpjo1hsQbzrAI92WrLsu8p9Idvhx0N6qZwsLh+fCQCS+NKgbDbwU4oA
- KlChc2lH8Okddyexd8lKSeKKKEHuq5SPp69B4YmigqU718ry0pRbrTb5iF0VTADQGhurlEvAFgqlqkBl
- A2xFpCB+L+ldKyCFtJYUailAkfiPVI5aBAQwps0w3gzt4zQgTX57l2WhHZKAQsfdIUrIv+MUuCrRblFC
- PkpKORDlJcS18mINZMSkz1r9Fjwj7KWxsborLdmmoHnXEqMsc+VtML+CFcvVIYWqKAHQIAVOFchEVIIC
- 1B2GSKN/miRte3owbQCU+2lpjyRbcUTR3hTSFlBFhTSqcqvKOe2IUnFuTo8SxNyLu9t0WXMMV9nTUMm4
- nDJSib5V5SCPYnKiF5xgENqAamZgZ+VW3Skp5sxrUST/m2B/7QCfCXB5kEikBSkc+r7ndOtWAmZ7oKeK
- iZ3nrbkp2hM0m3tIiQauQRdlskxvA+AflCzQreA2mwXqayGP2qrXqLJYhxQSq0dsfqt24Up7YGceKxvt
- VYKIWx3I50sIgRGjZOZBZ0+Q6qlDCpo2AYpIgQg/bnQvofxgEGGJnEEPIgKYTozx91O6ybQnNoBd2CCq
- lquMN2WaUF83fe6lW5q1FdTCkCmUQdn8XvLjr1/ApDggtJiAg98AMQhimu8Z0C1gKlZ9Z0iBpdCgJzkO
- yW70eRG1kNhv/thPARADJfrzx8n5N1kB7TvooQY0NzeNFPQAt6xuUpqCTUGD97UFy6NiPmpTZXyJWeT6
- qMpUrPevtMCKSq9QwaZQzE+HFCQUVWJTEDwBJ+qArjxDxfyEsI94gNcBjAE6jmncpJQWvp5hkOxj3Qph
- UHXDSGkemnCtYAAqCwdBpxQ6WokBrkLdhPrtwL+Bfg+E5h10r12lzMQwo1/FKevMfHmp3syczegXMN2c
- YJCyyHJR2T5IIa5Ued6YWNw/cEAPB6V0AxRXkOzekqleqwFg67rX+9sY+8G+VWUayQdK3nR+3K/8YWnM
- HaepmFuleJXyosIxoNPzo8WRUh2nvBb5KjsVYyUMJM/DlyEivpSSzMvfNS2XT064Kb7yFtJqQUxVPniH
- gxLgCoDXoygClZZrUkox322DEIJarYZXz13A6+cv7ldVdkzFE2Z3LxzkTqPlZanj8f/0GcqdNf+Vlpu/
- aPEdFfGU+VB1KdoyJbis+5cmIKSYs9gm3BN1E+Sr6gpCQWbUknflv33hG6neVVjYm9VjmnA0Ct8isysc
- TATwz/7Jr/uUkJ8EfoDJZCJBbmBleQH1mg3TMHDx8lU89+Kr+1WVPaX9QgqagYx1IJ0wKMuwPPeSPNQd
- XFdWsRR1iiojMUtdFAaqCpDCnTqiYRBNuVKtK9Sv8K4liUSBAC2nkVTaIe9TiiocPAQAAIZh/CgMAwz7
- fYFhoijC8nwXhw/NYzLxYZsWfvr6OWwNhvtZnT2nvUIJWX6anzyq8YdIVEMKkDprRcHACwPd+xVG3XT0
- Lo7UqhG7rDpEmTHbOktL0shIgT9uS/Ur1q+aCiE2rwYlJG1fqvoQAmIU60NAsvV0+0X7KgAAvELj+N1B
- vy8Yi6I4Rstz8cDpOxGGEZx6DRcuXcXf/viVfa7Ox0N7iRKAEnaVmU8nDAr103X+6USLGUyv9JTRt+qj
- PIpabdBnl7aIOmL56+TxdWqDrvpEfqB/Ie5xXlaiNh1MFQAA/tt/8utbBPjL8XCI8WiUOHdk5AchHjp9
- Egu9NsIwhlO38c3v/B1WN7b2s0ofO+2lPQFQjadcZxMGzAooAXKn5uumYRY5VD+sCvHLKq1GC+l7TGc8
- 4Q0FnV1qD6GE6faEMpQAoaxyAUKy/5WPBeFECBgaQDYHEh9II2BKxDC+6U/8eHtzE8TIGyGMIiwv9PDY
- g2cwmkxQs218eHUVv/EH/y/i/dz/+Amij0U4pB1TFgwKASHWTS0YeOGgB/mFDKQyxfrldZPK1DJpGaPy
- 7VEUDGkbCMJBzF1ZblmZQpso3hVGxuX6L5fmBYDQNP3+zgAAH4MA+Of/9L/6ASHke+s3biAMQqFzB2GE
- X3j0Pqwsz2M4mqDpufi7F17F7//Fd/e7Wp94uhVqxM2rEHk6dagiA0kg6OtWVoI2a+kZrwzsRIUQR+my
- cpUZcClUQ1vhvQx1XfaD9l0AAAAF/u1oe4DNtXUYppmFB2GIbruJX//ql2CbBGEUoeHV8R++9ST+5Knv
- fRxVOxB0S42NcpxC3RQjd0GFKEEKUibaKUmhbtJPgxTYiCzGTWcFxPZQqxACUlDWX4UUim1h8FJM80Gy
- so383bmtQAdXBQCA99977y9pHD9z/fJlBJOJYAsYj308eM+d+C+++iX4CUJw6zX8uz/8C/zRd577OKp3
- YGmvBEKWH4T+rjQ/lwkDsW5lSKFiflVQgpSJGimU16/0PSqgBAiPqrZQko4m+XOMTygSYZjumNk/+jgE
- gPG//M//Opz4k/9xNByOr330EYghFjv2ffzi4w/iS2fvxdb2EKZpwq3X8Ft//Nf4rT/6K/QP2PTgraK9
- RAn5Pml9HrpRfTpSkO0JFfKrYk+QMmEDeHG1ooxQ9Lo9/64VUAIp1jsVHspPQQEQykZ9/j0TWxll3G/s
- pwQwp0e5KUo5nfzlt5746B/95/9lzZ9Mvuw2GnA9N5saTAeaUyeOYm2zj/c++Aj1mg3LsvDy2+/hBy+/
- ge3RCL12C52mt89V/nTRboWCyCPT2FuRvmIKiX92lt8UhMLvJSByHMLH19e2zKaQ56cSDsAkjHB1YwtR
- TEGIAS9Z+JaSaRgYTib4cHWdqf28kKMUGG4DUTgAwe8+/eS310qaZ9e0nwLAkK8Hw8Hzn7v3vl+ZjIaH
- 23NzsCwrEwIxpaiZJh64+wQmQYhzH1wGIQQNx8HWcISfvPoWfvjym3jprXex0R/Atk049Rps6xPv1ewT
- R1VtCrIMyJhAvIGOebR5pTEVI1tVVEEU+xBUbyAs0CkprJpNYTpSSMkgBH4Q4upGHyGNYRgErkYAXFpd
- lxBNYqcY9YEoGIOQrz/95LdvKBv2Jmk/BUDaLOl2xtp7754fPv6FL5yr1+r/TRzFVndhTugEMWXHP913
- 6g70Oi1curqKje0BLIPAc1yMJj4uXbuBn755Dt99/iX87I3zuHD5KvrDITzHQdNz9vF1Pv10s4JBEA5V
- BIOcyVR25kN1QkhNhQVMJapEFcEgCwe5HQxC4IcRrmxsIYpjGEQjAHyfCQAk+wGQCizKBEAYjEDI7x40
- AWBwf9OfCcD57lNPnv/5L//SJQP4tTiOzWa7LXSymFJEcYw7Dh/Cg/fcCc+tY3V9E/3hCABQr1lwajZM
- 08LqxiZePf8+fvrGOXz/pdfxwmvvYHN7AFC227Bes/fp9T5btBP1QcVExYA8rjIx0QZw26R16dQCYaqY
- qGJwlDKRsIFYHiGYBCGubmwhjGMYhgHXViEAH5dTAWAkBwEbhO20HB5MAaBi/lQAWADcJ7/9188/+vnH
- rxCKX4ui0Gh3uzAM0b97GLElwnefOIp7T92BpfkubNPAxA8wHE/g+wGDVYkaMPEDXFvbwItvnMOzP30F
- P3vzPN6++CE2t4dw6jW0PPfmjGIzAqBHCXLbFsZzFUog+jFVl4G8QIhIbFqE57LBMQXZiiIUmezI4Mih
- hFQFuLKxhZBSmITAUQiA0djH5RsbSKcAQQBiGDBAQIdboEEwAsg3nn7y26t78PkKtB8CgHB/SVJGKgBS
- IdB85uknX7r/wbOXbNP85WDiW81OW7AJAAwNhGGEhlvHHUduw+dOHsf9p+/E7SvLaLc8gBD4foDRxAel
- FLZtwanXYFkmNra2cf7DK3jlnQv4/ktv4IXX38F7l69ifWsbANBsuMLHmNHNU1WkIPO16kYpFJQZyLHL
- 6icKhh0jBVmFKKkbIQSTMMSVjX6mAqgEwHCSqAAG334GQCniwVaKAL5+UAWAyf1Nrw0ANgD3uWef+dmx
- 24+/0fAaXxgPhk2n4cFx3YKXmThmggAAnLqN2xbncObO23HvyeO4+8RRHDm0CKdWy4RBEEQghKBes2Gb
- FqI4xtrWNt55/zJ+/NrbeP7Vt/DyW+/hvQ+vIIpjeK4DJ3FQMqO9oapIAShDCpAYbjpaKC7F1QuHm0EK
- RMpALtcA4AdsFiCkgGlArQL4Pi6trcMgzLU5SeEEKOiwDwR+IgC+c6AEQAr7iXSfCoL0uvHj53/4Vt2p
- /2h5+dAjo8FwgRACr9GEaRlKKzGlFFEUIwwjWKaJbruJI4cWcc+JY/jcyeO4fWUZc90WTNNAEETwgwBB
- xARCzbbh1G3ElOL6+hbevXSF2Q9+9gbeuXgZ6/1txJSi5bmwzP2eIf3s0m6QQjFAzaRlmewGKZTggdJy
- RQQQwSAGHNtS2wBubIh+AQkzKsaDTSAIJiDkG08/+Z3rpZXeJe2XAKDIBQA/8qt+3huvvXr13fPvPH34
- yJHtYOyfmIxGDdO0YNdqsGwbhqajZMIg8TpUq1lYmuvh5LEVnL7jGE6fOIZTdxzBfLcN27IQBCEmEx9R
- FMO2TDg1G5ZpIYxiXFpdw8tvv4sX33oXL755Du9duoogilFL1ApdHWZ0c7QrlAAZKehQQkWksAuUMA0p
- MBtAxBkBSUEAGIaB0STAR2sbyTvxdaKggz5o4CfTgAdLAKSkMwjyPwCor65eHz77zNM/XF+78be9btfw
- R+Njo+HACSYT0DiGZbOFQYZhFFYSpkQp8zUQRhEMw0DDdTDfaeHYyhLO3Hk77jp+BIeXFuC5ddCYYuwH
- 8IMQMSgsi60roJRic3uID66u4sW3zuOH/9+bOPf+ZVxd20AQRmg3PNjWDB3sN+1k8ZKOySsjBQ1K2B1S
- yOs/SY2ApQIgMQIm95l9IrEBHGQBkP41uHv+xzmKBwUzDtY/eP/i+jPffepv19bW/rbpNbb88Xixv7nZ
- 7m9skuH2NoIwZI1lmrBtO239AlHKjo6Okl9MKdx6DYcWe7jz6AruPn4Ed96+goVeBzXbhh+EmPgBUy0M
- E/WaBduyQClwdW0Dr7/3AV49dxEvvnke7166gvX+EBM/gGUywTGj/aU9n33Q2RSkDHRIQRYOMkpg6wDC
- ZB0AVaoAhkESBLDJ0qTb5QmLE29vIQ78MUC+/t2n9kcA7BeuVY30VvLjry3pOY8KfABhq91a+K//8T+7
- /+jRYw91e3MPNprNs3XHcbxGA412C16rBa/RgG3bWWeI47jU1Xf6gQyDgBgGaEyxuT3A6vomPrq+jiur
- N7C+tY3xJAAhgGmamU0gpjFiCoBSGIaB+U4LR5cXccfKEk7dfhgri3Oz2YVPEFVx+V6IoXHdXppTeg5J
- 6saHEGwNR3jpvQ8xCQOYhoG2U4dtGtkKZss0sLY1wE/fuZAIj6TfGAQkjuFf+QDxoL8Fw/jiv/lX/3Jf
- nGbu1zraWBMWJmWGXHjK9DGKAqPW3+pvf/13fvsZAM8YhtH+yi9/9ciXv/yLv9rp9r7g1J0TtXq9W3cc
- uI0Gmu02Gu0W6o4D27YzFCB3AkopIkoRxQDAZhdaDRe9dhMnj61g4gfoD0e4dGUVH62u4cZGH9vDUaJa
- ENimCdM0QQjB5mCI1bfP45V33kPTc9BtNXDy6ApOrCzj8NI8FnudPW3YGe2MeISgEwb8KEgLARyslw8G
- UWSSHrpSRYXI0mUqRA5ouXqreGnPaD8tW+kwyI/sqtFedc8jAflklBjAGID3K//gPzt5+7HbDy0sLN65
- uLT0ea/ROOu4bttrNOE2Gmi0Wmi2W7BrtcwPQRxFU9BB8vEMAtMwAVD0ByNs9LexuT3E9bVNXFvbwPZw
- jDAMYRgElmXBNAgoJYgpUzlAKXqdFlYW53D80BLuOnYYt813Z6sTP4G0K5RQCBTPWMoRwAeYBCFMw0DL
- qRURQH+An75zEYRwJwQlNgD/8kWEg/4WOYAIgCdZgqX3PKPLo79OCKT3HoD4qW//9esAXknC/+PZRx45
- 9PjP/fy9h5YPPdbpds64XuOU4zqO12qh2emg0WjA8bzMdkA5dMDvTKSgQMRmGADAc+toNTwcBVMvxn6A
- ta0+Vtc2cG1tE6sbmxiNfQBMXWBLlU0Mxz7eeO9DvHXhEp598TV0mh5OHD6E229bxNHlBRya6+5dK89o
- 17QrlFAITEf+/Ji0NEQ7V5iVLz4maWBO+6ZT7vfZgClz8/cGmArAM7QFNbPrBICgJqT5v/jCC5dffOGF
- CwCecBxn4Vd+9deOnb7nzEOLS8uPe553v+O6C67XMGr1OtyGh3a3C9fzYNo2LNNETCniKCq8SBTFmTAg
- AGzLxMrCHI4uLyAMI/QHI6xu9XH9xjpubPTRH44wCQIQENRtG4bJfMJsbg/wkzfexvOvvYVus4HluS6O
- HFrAyvwcluc6mGu3ZjMMt5jKZhxS4aCMkQRmx4dlxkZeHSBFKJEcsFJYjBTvK/KXq72vJG8L1sH7qs/K
- wvnyUpsDAFi3H79j4Zd++Wv3Hjly9KFur/tgo9G436rVnLrjwGu10GrlBkXDNNnhlNxPR4QQmIYBYrAT
- acMwwmZ/gGtrm7i2voH1zW0Mk6XKpkFgmiYMg7DVjXEMgwAGMVCv2Tg038PR5XkcW17EkaUFtGa7Gz/R
- xAuE4lmKBP3hCD+78AH8gNmOmrUabCO3JDAVYIifnb+YGaaz0Z9SjC9fRLi9tUUM4+f/zb/6l/viM//j
- VAFUaCD9mz6XmbgqEtCFpejAuHjhvbVv/O5vPw3g2wYxur/0K187fu+99585dNttj7mud79dqy05Tt1z
- Gw00Oh002214nodavQ7LshDHMWKFVKaUIoyi1JYIAmCu28LiXBd3R4cxGvvY2B7g+voWbqxvYmswgh+w
- cxAtg8AyLZiJXvjBtVW8d/kq6raNTtPDQqeNO1aWcXR5HgvdNtzZdOMnini0kF6Jg0U1QyC/0SgJ2KMa
- TqeP05uGrBKowqsIADl8J8KhBsCJaew//eS3X3/6yW+/CuBP2p1O96tf/dqJlcNHji8uLz/QbncedF33
- tON68JpNNDtttDodeI0GTNPMJLRyhgG5ykAIgefW0fAcHFlaQBgxdLDRH2C9v43BcIz+YIhREIBQwDQN
- 2PVaNnpsbg9x/tIVEINgea6Lo8vzOLI4j6PLC+g2G7v6CDPaXxKEQqYW0FJRwJ5xJ2gLZgMqG8H3lD5u
- dzoqNCA/N1AUFtNUA/66TG3gn6Xvbmxtbm7/2Z/+8YsAfgzgicOHj3QfOvvIsdNnPvfQwvz8416zedpt
- NA65npfMLLTRaDbhuC4s285mFtg59dy8MaWIItEt1VyniYVeG1FMEUURRhMfNza2sLa1jY3+AIPxGFEY
- gRADtmVmq8NWN7Zw5cY6XrYvwHPqmG+3cPttiziyNI/lXneGDg4wEUqR+gHkZADkq/2gW+VPq4qFg0cE
- OnSQ/q1qNygTFtnCpEuXPty6dOnDV/7yL554EcA3Hnjw7LGHH3309MrKkQc63e4jruuedl3PabRbaLXb
- 8DoduK4L27az9QEqlYECCKMYiOLM6NN0HbQ8F3ccPoSJH2B7OMJafxur61voD9lqQxpTmKYBt85mLyZ+
- gA+v3cDFq9dgGiaWeh0sddtYWZzHfKeF+U4LDadeoYln9Img1A9AugyY2xS0vz6Bb50AkEmHDFRCQEYF
- KjuCKt6qVB+HAAAYKElEQVRObAfpvQMAL7/04ocvv/TiuwCerNVq7cce/8KhRz7/2GMLCwuf9xrNU27D
- O25bNhzXQ7PTRqfbhdtsol6vZ8JANiayS7YgKSXLNDDXbWG+28IdK8uY+D42tgZY3x5gsz/A9miMMIxA
- DDbdaBsWCAhWN/q4uraBNy5ehm2acJ06Di/O4djyPJZ6Hcx32rDMfUORM7pZUk0DciFxHH9qVIBpJCMD
- A/mUoSpuGSpI/1axIVQRDh4A+L4//vvnnn3375979k0Av3fy1N0rDz/8yMnjd9x539z8/OOu45yxbNtz
- Gw2r0Wyi2W6j1enCbXiwLAvEMBBHkdKgGFOKOPF7QAiBU6thZamOw8sL8IMAg9EYm9tDrG9toz8cYewH
- iGKGJmq2zdaSE2DoT/DW+x/ijYsfwHMc9FoNLPbaOLq4gNsWemh7rvYDzGjvqYx7ma7PTQOm1gJOIqj6
- yl7RJ00AyCSjgSrxZRvCXs8sAKzdHADGubffunbu7bcuA/gegG889tgXVk7cddexI0eO3NPt9h5sNJtn
- XNdd8ppNtJLZhUarBcfzYBAiTDVSyX5AAcQRBRDDNAx0W010W00cO7SISRBiazDERn+ArW2mKkzCEGHE
- 4lqWBYMQRFGMq2ubuLK2gTfe+xD1eg0r83NYme9iea6LxV4btZln5X2jqRp8slZAmDFIjMwJGVEUfWYQ
- gI5i6S8gwnydqiCrAunfMlQgx1GFy4IlnbCPn3/+B+8///wPLgB4GoD36GOPrdx77/2njx69/bFmq3XW
- dd0jbrPZdBsNdDodtHo9uJ4Hu1aDOQ0dcIuUbMvEYq+NpbkOgjBCGEYY+T62tplQGIwmCKIwsx+YhgFC
- CKIownsfXcX5Sx/BqdfQ9jwsdts4vDSHlfkeWq4jnNw0o/2nlPGJZAFMb6MoygzWUtKbhgYHRQCoSDed
- yF/LAkP+uxuVIb1P207+OOmzGoD4J88///5Pnn/+AoBvA/B+9df+4alTd5++b35h8Wy73T7rOM4hr9lE
- o91Gq51PN2Y+DxJkUDAocjMMBmHuz5y6jblWA/HyIkYTH/3REP3tEbaGI4x8n21mIgSWacCwLIAC69sD
- rPW38faH7DCW5W6bIYNuG52Gh07TmzlD2Wci4rwfN2HI/gZBIPdHoNjfd0UHWQCoaNo0YxpHpx6k11Vm
- FtL85WXNKvSQLnWOv/M3f/XKd/7mr14A8M37H3ho6b777z957Pgdj7ZarbNuo3Hcc725RrOJVrcLL9m7
- 4LguavU6EwSKzUyq1Ypu3UbD7WG510UQRRiNJ9gajLA1HGM4niAIAua2iRCYlslmomPmGemDazdQsy3U
- bRtNr46VhTncNt/DXKs5m13YFek3AxDpca4GJBEoEPi+PNjwffimBMGnTQCkpDIm8sIhhCgEZMGxW/UA
- 0O9rSO8zdPDKyz+78srLP7sM4BkAzhe/9AvH773v/gcPHbrt4Uarea9l2Ycc1216zSbanS7a3Q6anQ6b
- XUgQQhzHoFNUBtMw0EpGc0qBcRBgOJqgPxyhPxxj7PsIk6lJ0zBgm2wqyg8C3NgMcH29j5fPv4+252K+
- 1cRir43luQ6WOu2ZulCJNNN5mUucdCVgPh3IXSAIBAGg67O7EgSfVgEgk6qx+Gdl9gOVUChDCPLOxrI0
- 6a8GAN//3nPnvv+9594E8MTS0nJ75ciR9kNnHzlz220rj7bb7bOe1zjuNLxas9VCq9tFu9OB12yiVq8L
- KxN1CCF96bplwe3YmGs3EcZxsv5gjO3RCMPJBH4QIU6O3jJMA5bFuudwPEF/OMb711dRsyy0PQ9Lc20s
- 97qYbzXRbsxmF4pUYSmwdEE4IyAFDN8P0oEjFQBlDK5bcaukz4oASEk1q6BrrKrGRN31TgRAGpYtRrp2
- 7erWtWtXt1568acXAHyr4TUWvvq1f3Di2O233ze/uHjW8xoPuq671Ey2OqcIoeY4sBKrvm7/AkMHuf3A
- q9fQcOpYRgeTIEQQhhj7AQbjMYYjH+MwQJz4tq9ZBoxkQ8vGYIAb/T7evHgZTddBp+FhvtvC4fke5tpN
- 2J95z8o7sJ2kZgBuEVCyFBhB4NfABolUAAAMxeoGs8pC4LMmAFRUJghUCGCnG5n466pCgg+rAXAGw8H2
- nz/xpy8AeAHAH66sHO7+0q/86v2HDx9+rN3u3Os1Gqcc1/MarSY6c3MJOmjBSXT2mFLB/0FK8hLmmmWi
- bltoug7m201EMcVoMsH2eILhZILxJMjOaCAGQd2yQQiYwJis46O1Tbz1/kdouA6Wui0stlvotZtoec5M
- IKgo0f+zbcCcQ5A0QhgEqdpYgwj3eSHA734FKgqBmQDISbdTsYqErcL8qufTbAvys2zB/+XLlzb+4Pe+
- /jSAb1u2Pfflr/zikRMnT50+tLz8WKPRfMRteEuNRtNqtFpo93ro9HrZ3gWDW6pcOISFUmE/g0GQLVeO
- KYUfhBgHAQajCTuiLQoRxRQggG2YMAwTBMBwPMH5SyOcu3QNbr0Gr26j7blY6rWx2Gmj6dY/82cvpJuJ
- DdG9cD4HwJYCG34QpMzPC4DUjhVy97yKMEMAN0GqdQc70bt0TM8/2y064O9rAGphEAy/+9STr3/3qSdf
- B/DE4uLS3C999WtnVg4ffqjb7d5bd9wjXqNxrN3tGs12B57nJrscO8zzMVC6u5EmQoEAqNsW6jUbnUQg
- jIIA47GP0cTHyA/YGQ0ACDFgWWxfRBhG2AgCbA6G+HB1DaZpotvwMNdpYKHdwkK7Be+zvJlJsa2Y9wkY
- hiGPAFKGT5kfENUCQG0kVNJMAOycVIuPyuLtBB3cjHDIfB9cv35t65t/+AfPgc0utO86dap94uTJlbvu
- Ov3o/Pz8I16jccrzGkteo4FWr4tubx5NzpmqDh3wwiClRq2GZr3OznGMIoz9kKkKfgg/ZIuaKCgs0wQx
- ct8469sDrG718a55DW69jk7Dw2KniYVOCy3HQc3+bHXNdCaQyCoAhRGFkexFWwX3Y+QOdw3pmZY+W628
- 97TTdQdp3N0IBfm+EjoA4L/z9tur77z99rXv4K9fBPDvT919euXzj/3cmeVDhx7q9eYecVz3tOt5VrPd
- QafbQbvXQ7vbZXsXCEmWJKudqfIqg2WaaLkm2h4TCJMggh+E8MMQ48S4GEUUMSgIIahZbDPTxA9w1d/A
- lfUNGIaBtuug1/Sw0GHo4NO+9iBlfNEdWa4SxHGUIgDdLADvbZvvC1P750wA7A3plijzz2UjIjR/99qI
- WAh/+603r7z91pvvA3hybm6+++DZs0dOnT7z0Pzc/CONZuOU1/COe40m2p0OOnPzzDtSowHbriGO01Ed
- AhJgt6lBkd3XbQtuzQYFRRwzJ6vjIGA/P0QYUVAaJ4diGJlnnP5ojM3hCB/cWEfdstFy61hotzDfbqLp
- OnA/ZZ6VC4ebSPeUUh4B6KYBddPP0MQHMBMA+0EqYaCTwFWNibsxIurSpz8PANbWbgyfefqp1595+qlX
- AfzHlcNHlr7wxS+ePnrs+MPdbu+s4zhnXM/zWp0O2t0uMyh2u8zVumUBlDk2UaGD9PwFgI1ylmWiZZlo
- eQ6iKIYfRpiEISYBUxeiKAY1AMMwYCYOMoIowo3+ANe3tmEYBpr1Gjynli1K6jUbqH/S1YWy2UDpWSoE
- YWTPjJjG6TebJgDSv6r+puyDn/CWO/CkMiamxhsVIpi2AIn/q9qDsFsbQrZ68fKlD9f+5I+++SyA5wB4
- Zx95dOXBhx6+f3Fx4dFGo3Gi7npHWq32XLvbRac3x1YnttjZCxQATY5hS/cwpJQihhQhGIYBt2bArbHT
- muOYYhyE8CMmDIIoygCGQQxYJgBCMPR9DHwf17e2ceHaDdQtixkUWw3MtRpoeQ7M9ISdA0LpkmxhKpBm
- /oVBKRW+UUIqdKf6zWwAnzCShYKMAKZNR6Yf1sd0dWG3wiHd3Ri++MJPLrz4wk/OAfgT0zS7Zx95dOnk
- ybtO3nbb4Yc73c4j7U7nWLPd9hzPQ7PVRm9uHl6riVqtBsMwEcWR0tV6pi4kZBoETYeZLaIEVfhRhHHA
- hEEUx0DMbAcmpy8HUYSrm1v4aGMTdctCw6kn6KCBXtODwx0Zd0toStEEIvPnZxNyGwRoQfgDIu9OM0jP
- bACfYKo6vbhXNoRS+4Dm2gGAKIrGP3n+R+/+5PkfnQPb7uz8wle+cvLMmfse7c3NPdhstU87jrPSaLXQ
- neuh05tDq9NGo9mCYZqM6XXLlZF71DUAmJaFmmWhUWfowI8iBGGMII4QxjHimAkQArZ/wUp8K2wOR9gc
- DHHpxjps00Sn4WC+2USn6aHjuZ/McxslA2DuCYwCQByxQyn47wIUUWXZ95zZAA4IleltOlUBqC4A+Ouq
- aoIczkPR8Llnn331uWeffRGA87l77z909+l7jh87dvvD7U77C57nHXObzXaz2US7N4e5hQU0Wy22XNk0
- EUUadADRvTYhBI5tw7WZh90oZr9UVQhToQLASoyJABBRihv9AVb7A9gWM0i2XQe9hoduw2MnOH1sAkEP
- BdIlv/lMAAFoDBpFoKDheDzm0d5OaKYCHHCqgg74ax06qIIUdqtCpNZpvPbqK5dfe/WVD8G8I/32l37h
- KyfuuuvUfQuLi/e3Wq37Xdc90Ug2MnV6c+h0u2i222zvQnJUm+5kZ15lMAmBaRmoJacoRVGMIE7QQRgj
- SuISArYyMUEHgzFb0nx5bSOZsnTg1ZhBses5aLrOvqgLpTkSgBipW7B8JWBMY8RBAErp8MqVjzZQ5FX5
- e/DhlWkmAA4W7XQ14rS/ZcJhmgDQGSGzxSrfe+7ZN7/33LMvAXBuv/343H0PPHDixImTP+e4znGv0Tze
- bLWPtdptp7cwj+7cPJqtFlzPg2XbbGZBN90ohZnJASsOTMQ1tgkqiGKENEELlOYMRvLNuRuDIda2ByDr
- G6iZJtyajY7nYb7VQMt14OzBdGM1cSL6CyCGgXB7iHAyxvZg+Oqbr792GXpeVU0589czBPAppmnrD9I4
- smCYhhaq3Mv56YRJEwAuXrywcfHihRcA/ChJO/e1X/21k0eOHv3c4tLy4612+8F2p9Nttjvozs2ht7CQ
- rD2wYSYLkiKNuzReZSBgaoBlmmBnvMaIkmPYAprYDig7y9MgBlINIIpjbI3G2ByO8f7qGtw6Uxc6rotu
- 00PLdXasLmSYhegFAc3OI2cWDUIIiGFitL4OxDHev3jhu5RSH0Ve5ZlbJQSm7gOAItMZHVySR37VJiZd
- 3JuxG1QNA8TlrOMnv/M36WEsf3znnSfnHjz7yL0rK4cf7fZ69zZbrZOu53qNZhPd+Xl05ubQarPzF/iV
- iUp1AcgQQqYuUIOlozRBB0wwxDQRHsnsQkp+EOLaZAvXNvqwTAOObaPXbGCu6aHpOpX2LmwMhuzYOEDp
- FIiAqS+glC2TJgSGaSEcjTHZWIMf+Ks/+N7fvwTRE5DqJz+TaWYE/AyRypDIh+9m3cFeCAVVnBrYDEN8
- /vy51fPnzz0N4K8BtL/8lV88ceLkXfctLi094rre/Y7rHmq120an20V3nqkMbnLU+zR0IO5uJHBsE6Am
- W6FIgTCmCOIoEQjp7AI7yJUkyYd+gO3VdXywuganZsOr19H1GDpoK7Y6r20P8N7VVeZYJTn40yREmPoE
- ASZhyI4OI8wtm2GYGN64gtif4MaNtacvXnjvMtiirWnqX1VhINDM2+Nnh2Sml8P567KwvWB8XVgaHoOt
- c4gB1OYXFrpf/NKXTx8+cvjhbrd7ttFsnXFd12u12+jOzaMzP88OY/G8zJiocqSqoswnH2WFsRmGGGHy
- o+lcI3J/fenCJQAwDAKvbqPlurBNE4YB+GGEG1vbCKKIeXqmgGOZcG1TMGeYhoF3r93A+mAEyzBhWCbC
- 8RDXX3sFvj8Z/tmffPNfJMfd89uA01+Y/Hzur8+Fp79SYTATAJ9tUim1ZUIgvd5vdCDXI+3wPoDuF770
- 8yt3njx5ptebv6derx/vdLunm632QrvbQW9+Ab35eTSaTdQcJ4HZanSgolQgUMoYPaLMfpBOPVJQpFMM
- adyY0mz1IwsjMImRbeozDYJGzRaYzSAEQRThrY9WEcUxDNOEQQhW33oNo401XLx48Xf+r9/8P38TzIbC
- j+wyg8tCQGZ+ectw8X1nNCMUVQA+XL4u+6tjYpU9AIr40+7Tzp09P3HixKFHH//Cg0uLSw+1O517G83W
- 6U6vZ3Xn59Gbm0On10Oj2cwcqaboQOVMlSeeOSjACYMYYWI/AHeqb6rmUy6RaRB4tlWA/7Zp4trWNt5f
- 3YBtWzAsC5sfXsTm++9he7D94r/93/+3/2E4HMQQ1/+XCYAdj/7yO85oRjyVoQPddVVkABQFQBVBoHsW
- AhgDMObnF+buvueelTvvvOuBxaWlxzvd7plGs3mo3e1hbn4+c7fuNhqo1WqgcazdzCSToC4k6CCKYwSJ
- 7YCPRwiBbbC1CgZEn8AGIYgpxdtXbmAShrAsC4NrH2Hjwnn4QbD2V9964r//0Q9/cA6JfQQi86fqkQoB
- 6Jh/JgBmdNO0U3VBx7By2E7tBGUoAxAZBUePHTvyyKOfP7W0fOiBXm/urOt5ZxqNhpMuRurNzaE7P5+7
- WqfItjxPI851f2Y8TMONREVQiRXbNHDxxiZW+0PU63X0r17C2vm3QSn1f/zj5//1E3/6x88AaEOv909j
- /kqjP/8OM5rRTkilLlRBB7prPmwvbAdKdFCr1dufu/e+Qw8+9NCjvV7vEa/RPOU1GscbzRa6vS56C4vo
- 9Lrwmsw7Er8ycRpCkBlJF9syDVzbGuDyRh+mYaJ/9RI2338PoDHeOXfu//jd3/6tbwDoQs38vC1EJwRk
- vX8mAGa071TFbsBf71Rl0KkOqjhleQMco9y2snLo7NlHTt62snJPo9E80Wy1Hmy120danY7VnZvH/NIi
- Or051Ov1zNV6mKxQ3CkZhMA0DFzfHuLS5gDRZIStDy5gdOMawjDaeuedt3/j977+O38O7pxJqJm/bNSv
- DP1TmgmAGe0X6YTCTmwHfNh+qAspMxkALM/z2o//3JdO3nHijod68/MPtlrt0612e6nT66E3N5+4W+8y
- dECZ34PUR6KMENLZgHS3YkhjXN8e4cr6Joar1zG48iGC4RCj8fjNH/7g+//rU9/5m5fALP4putIxf5nO
- Xxn6C/Wc0Yz2kaoaE28GHcj3O0EUcv1SBqvdd98DR+4+c8/pQ4due7jVap9ttdvH2p2O1+3NobuwgO7c
- HHO1blkghpEd7ZX584xj+FGEzeEQ19e3sLF6HeMb1+BvbSKKY//66vX/9P/8/u/9+2vXrm5DXOwzTe/X
- jfyVoX9KMwEwo4+TptkO+PsqqIC/3olw0OXBX/PMZwDwvvDFL504edfdDywuLT7SbLXvb7aaS612F41W
- E5ZtJwKAJK7QYvhBxI5aG48QDAag/oTtShwOX3jpZy/+5l9+64kXIPr7B6oZ/qrA/pkAmNEnnqahg/Re
- Fhg7tR2ohIhqGlKVD/83NSg6Zz5376GTd506ceTI0Ydb7fbZer1+xDTNOUKIkW3rJWz1IAX145iuDgaD
- F955+62n/upbf/7CxJ8MUdT3+esqAkAF+3dkoJgJgBl9kmg3xsSbsR/sJA4fLjNe7f4HHzpy8q5Txz3P
- bZqmaQHEoJTGURj6Gxsbq8//6AfnVq9fX03S17h8gOnMrxIEN838wEwAzOiTS1VtB/z1NCEw7b6KrWCa
- uqCC4Klff0N6VjbylwkBncFvJgBm9Kml3aAD+e9ubAhVUYaqLrHietqoD4jMrWL4PWF+YCYAZnQwqSo6
- qCoM+LCbUQ/keqiYUzXq89e6BUBlkH9XzA/MBMCMPh2UwnAVE04L2wlCKLuX806pysgv31f98fntimYC
- YEafJpIFAR8OlAuG3aIDXR5ljJ/+rSoMAPUc/00xPzATADP69NNu1IWd2g905aRUZfTXPS8THDdNMwEw
- o88alRkT+fvdCAYdVUUBO/m7JzQTADP6LFNVdJBeVzH8yVN9kO6nGQZ18VV53jTNBMCMZpRTmTGvqmFR
- RTtlbl38PaeZAJjRjIrEj+LT1hvI1zraCYOn5e4b46c0EwAzmlE1qmo70NE0KL/vzK6imQCY0Yx2Rjp0
- ID9P48jEp7slTD+jGc1o70m3UAiopiLMaEYzmtGMZjSjGc1oRjOa0YxmNKMZzWhGM5rRjGY0oxnNaEYz
- mtGMZjSjGc1oRjOa0e7o/weShWoRQ/D8BAAAAABJRU5ErkJggigAAAAwAAAAYAAAAAEAIAAAAAAAgCUA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAACAAAABAAAAAgAAAAMAAAADAAAAAoAAAAGAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAIAAAACAAAABgAAAAwAAAAQAAAAFgAAAB4GBQYoCgkKKgEBASAAAAAaAAAAEAAAAAYAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAIAAAAEAAAACAAAAA4AAAAUAAAAGgMDAyYtLCs6aGZiXJaTjI2tqaG5q6edwYeDeo8qKShAAAAA
- JgAAABQAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AgAAAAQAAAAGAAAADAAAABAAAAAWAAAAIB8eHTBYVlNOioeBequon63BvrTX0M3A89nUxv/c18f/3NjJ
- /87JuP2bloi7JSQjRAAAACYAAAAQAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AgAAAAYAAAAKAAAADgAAABQAAAAcEhISKklIRUR/fHZqo6CYnby4r83Nyb3r1tLE/dvWx//d2cn/4t7P
- /+nm2//w7ub/4+DS/9zXx//DvKX9e3dtjQAAADIAAAAeAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAA
- BAAAAAgAAAAMAAAAEAAAABYHBwciPDo5OnNxbF6cmZGNt7Sqv8nFuuXUz8L52NPE/9rVxP/e2cn/5eLV
- /+7s4//29fD//Pz6////////////6+je/9vWx//Iwaj/mZSEvQQEBjgAAAAgAAAACAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAA
- BgAAAAoAAAAOAAAAFAEBARwrKikwZ2VhUpOQiXyxrqWxxsK329HMwPXV0MH/1tDA/9jSwf/e2cr/6OXa
- //Lx6v/6+ff//v7+////////////////////////////6+je/9vWx//Hv6b/nZeHvwoKDCwAAAAWAAAA
- BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAEAAAA
- CAAAAAwAAAAQAAAAGBoaGShaWFVGiYaAbquooKHBvrTPzsq+79PNv/3SzLv/0su6/9bQv//g28//7eri
- //f18v/9/fz/////////////////////////////////////////////////6+je/9vWx//FvKP/o52L
- tRQVGRQAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAGAAAA
- CgAAAA4AAAAUDQwMIEpIRTqAfXhipKGakb26scPMyLzp0cy++8/JuP/NxbP/zse1/9fRwv/l4df/8vDr
- //v6+f//////////////////////////////////////////////////////////////////////6+je
- /9rWx//DuqH/pqCNrz5BUQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAA
- DAAAABADAwMaODY1LnVyblSempSDubats8nGut/Pyr35zce3/8jArv/Gvqv/zMW0/9vWyv/r6eL/9/b0
- //7+/v//////////////////////////////////////////////////////////////////////////
- ////////////6+je/9rWxv/AuJ7/pp+Mr11geQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- BAAAABAICAgeWlhVPpWSjHK0samlx8O5087KvfPMxrb/xb2q/8C3o//Cuab/z8m6/+Pf1v/z8e3//Pz7
- ////////////////////////////////////////////////////////////////////////////////
- /////v/+/v7//v7+//7+/f/9/v3/6ebc/9rVxv+/tpz/pJ2LrVxhfQQAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAACDk3NiSppp6NzMi948zGt/3Du6j/ubCb/7iumf/Duqn/2NLH/+zp5P/5+Pb////+
- ///////////////////////////////////////////////////////////////////////+/v7//v7+
- //7+/f/+/f3//f39//39/P/8/Pz//Pz7//z8+//7/Pv/5+Ta/9rVxf+9tJr/o5yJrV9kggQAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAASEVFCL+7so3Pybv7saaQ/7Sqlv/Kw7X/49/X//Tz8P/9/f3/////
- ///////////////////////////////////////////////////////////////+//7+/v/+/v7//v79
- //39/f/9/fz//fz8//z8+//8+/v/+/v6//v7+f/6+vn/+vr4//r5+P/6+fj/5uPX/9nUxf+7spf/opuI
- rWFpiAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvLexQNLNwO+toYv/083C//v7+v//////////
- ///////////////////////////////////////////////////////+/v7//v7+//7+/f/+/v3//f38
- //39/P/9/Pz//Pz7//z8+//7+/r/+/v6//v7+f/7+vn/+vr4//n59//5+Pb/+Pj2//j39f/49/X/5OHV
- /9nUxP+5sJX/oZqHq2VtjgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAycW8i8W9rP+9tKP//v7+
- //////////////////////////////////////////7//v7+//7+/v/+/v7//v79//39/f/9/f3//f38
- //38+//8/Pv//Pz7//v7+v/7+/r/+/r5//r6+P/6+vj/+fn3//n59//5+Pb/+Pf1//f29P/39vP/9/Xz
- //b18v/29fL/4t7S/9jTxP+3rZP/oZiFq2dxkwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4cncEy8e+
- rb+2o//TzcL////////////////////////////+/v7//v7+//7+/f/9/f3//f39//39/P/9/fz//fz7
- //z8+//8/Pv//Pv6//v7+v/7+/n/+/r5//r6+P/6+fj/+vn3//n49v/5+Pb/+Pj1//j39P/39vP/9vXy
- //X08f/19PD/9PTw//Tz7//08+//4NzQ/9jSw/+2q5H/n5eFqWh0nQIAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAACBe38Ey8e+r7+2o//UzsP////////+/v/+/v7//v7+//7+/f/+/f3//f38//39/P/9/fz//Pz8
- //z8+//8+/v/+/v6//v7+f/7+vn/+vr4//r6+P/6+ff/+fn3//n49v/4+Pb/+Pj1//j39P/39vT/9/bz
- //b28v/09PD/9PPv//Pz7v/z8u7/8vLt//Lx7f/y8e3/39rN/9fSwv+0qY//npaDp2d1qQIAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAACDfYEEzMi/r7+2o//UzsP///////39/f/9/f3//f38//39/P/9/fz//Pz7
- //z8+//8+/r/+/v6//v7+f/7+vn/+vr4//r6+P/6+ff/+fn3//n49v/5+Pb/+Pf1//j39P/39/T/9/fz
- //b28//29fL/9fXx//Pz7v/y8ez/8vHs//Hw7P/x8Ov/8e/q//Dv6v/w7+r/3djL/9fRwv+yp43/npWC
- pWR5vAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACFfoIEzci/r7+2o//TzcL///////39/P/8/Pv//Pz7
- //z8+//8+/r//Pv6//v7+f/7+vn/+vr5//r6+P/6+fj/+fn3//n49v/5+Pb/+Pj1//j39f/39/T/9/b0
- //f28//29fL/9vXy//X08f/19PD/8/Lt//Hv6v/w7+r/8O/p/+/u6f/v7uj/7+3n/+7t5//u7ef/29bI
- /9bRwf+wpYr/nZSBowAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACGgIQEzci/r7+2ov/TzcH//v/+
- //z8+//8/Pv//Pz6//v7+v/7+/n/+/r5//v6+P/6+vj/+vn3//n59//5+Pb/+fj2//j39f/49/X/9/f0
- //f28//39vP/9vXy//b18f/19PH/9fTw//Tz7//y8Oz/7+7o/+/u5//u7ef/7u3m/+7s5v/t7OX/7ezk
- /+3r5P/s6+X/2dTG/9bQwP+uo4j/nJOAoQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACJgoYEzcnA
- r7+2ov/TzMH//v79//z7+v/7+/r/+/r5//v6+f/7+vj/+vn4//n59//5+ff/+fj2//j49f/4+PX/9/f0
- //f39P/39vP/9vby//b18v/29fH/9fTw//T07//08+//8/Lu//Dv6v/u7Ob/7ezl/+3r5f/s6+T/7Ovj
- /+zq4//r6uL/6+nh/+vp4f/q6eH/19HD/9XPwP+soYb/m5J+nwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAACLhIYEzsnAr7+1ov/SzMD//f79//v7+f/7+vn/+vr4//r6+P/6+ff/+fn3//n49v/4+Pb/+Pj1
- //j39P/39/T/9/bz//b28v/29fL/9fXx//X08P/18/D/9PPv//Py7v/z8u3/8O7o/+zq5P/s6uP/6+ri
- /+vp4v/q6eH/6ujh/+ro4P/p6N//6eff/+nn3//o597/1c/A/9TPv/+rn4P/mpB9nQAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAACMhogEzsrAr7+2ov/SzL///f38//v6+f/6+vj/+vn4//r59//5+fb/+fj2
- //j49f/49/X/9/f0//f28//39vP/9vby//b18f/19PH/9fTw//Tz7//08+//8/Lu//Lx7P/u7OX/6unh
- /+ro4P/q6OD/6ejf/+nn3//p597/6Ofd/+jm3f/o5t3/5+bc/+fl2//n5dz/0829/9TOvv+pnYL/mZB8
- nQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACPh4oEz8rBr7+2ov/Sy7///f37//r6+P/6+ff/+fn3
- //n49v/4+Pb/+Pf1//j39P/39/T/9/bz//b28v/29fL/9fXx//X08P/09PD/9PPv//Py7v/z8u3/8O/q
- /+vq4v/p59//6efe/+jm3f/o5t3/5+bd/+fl3P/n5dv/5+Xb/+bk2//m5Nr/5ePZ/+Xj2f/l49n/0cu6
- /9POvf+nm3//mI97mwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRiYwEz8vBr761ov/Ry77//Pz7
- //r59//5+ff/+fj2//n49v/49/X/+Pf0//f39P/39vP/9vXy//b18f/19fH/9fTw//Tz7//08+7/8/Lu
- //Lx7P/u7eb/6eff/+fl3P/n5dz/5+Xb/+bk2//m5Nr/5uTa/+Xj2f/l49n/5eLY/+Ti2P/k4df/4+HW
- /+Ph1v/j4Nb/zsm4/9PNvf+lmX3/mI56mQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRi48Ez8vC
- r761ov/Ry77//Pz7//n59//5+Pb/+fj2//j49f/49/T/9/fz//f28//29fL/9vXx//X08f/19PD/9PPv
- //Tz7v/z8u7/8fDq/+vq4v/n5dv/5uTa/+bk2v/l49n/5ePZ/+Ti2P/k4tf/5OLX/+Th1//j4db/4+HV
- /+Lg1f/i4NT/4t/U/+Hf0//h39P/zca1/9LMvP+kl3v/l4x6mQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAACTjZEE0MzCr761of/Ryr7//Pz6//n59v/5+Pb/+Pj1//j39P/39/T/9/bz//b28v/29fL/9fTx
- //X08P/08+//9PPv//Py7f/u7Ob/5+Xc/+Xj2P/k4tj/5OLX/+Th1//j4db/4+HW/+Lg1f/i4NX/4uDU
- /+Lf1P/h39P/4d7S/+He0v/h3tL/4d7S/+De0v/g3dH/ysSy/9HMu/+ilXn/lox4lwAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAACVj5ME0MzDr761of/Ryr3/+/z6//n49v/5+PX/+Pj1//j39P/39vP/9vby
- //b18v/19fH/9fTw//T07//08+7/7+/p/+jn3v/k4tf/4+HW/+Pg1v/i4NX/4uDV/+Lf1P/h39T/4d/T
- /+He0v/h3tL/4d7S/+He0v/g3tL/393Q/9zZzP/X08T/z8q6/8a/rf++tqH/tqyU/9HKuv+gk3f/lYt3
- lQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACXj5QE0czDr761of/Ryr3/+/v6//n49v/4+PX/+Pf1
- //f39P/39vP/9vXy//b18f/19PH/9fTw//Hw6//q6OD/5OHX/+Lg1P/i39T/4d/T/+Hf0//h3tP/4d7S
- /+He0v/h3tP/4d7S/9/d0P/c2cz/1dHD/8zGtf/Buab/t66Y/7Cljf+qn4b/qZ2C/6qeg/+pm4D/qZp+
- /8/It/+fkXX/lIp3lQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZkZYE0c3Dr761of/Qyr3/+/v6
- //n49v/4+PX/+Pf0//f38//39vP/9vXy//b18f/y8ez/6+nh/+Ph1//h3tP/4d7S/+De0v/h3tL/4d7S
- /+He0v/g3dH/3NnM/9XRw//KxLP/vLSg/6+ljv+nm4L/opV7/6KVe/+mmoH/qp+E/7Gnjf+8qon/vbCT
- /7+5of/BuqL/sKKH/8/It/+dj3P/lIl1kwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbk5cE0c3E
- r760of/Qyb3/+/v6//n49v/4+PX/9/f0//f29P/29vP/8/Lt/+vp4f/j4db/4N7S/+De0v/h3tL/4N3R
- /93azf/W0sP/y8W0/720of+uo43/pJd+/52QdP+cjnL/oJN4/6qdgv+uooj/tKyT/8Guiv/FpXH/xbqf
- /8u3jf/GkDT/yKFc/9fRuf/d2cL/vLCX/8/It/+bjXH/k4h1kQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAACdlZkE0s3Er760oP/Qybz/+/v6//n49v/4+PX/+Pf0//Ty7v/r6uL/5OLX/+Dd0f/d2s3/19PE
- /8zGtf++taH/rqSN/6OXff+cj3P/m41w/5+Sdv+mmn//raSK/7WtlP+8tZ3/xLmb/8idVf/Fn17/y8Cl
- /8qhWP/EjSv/zraI/9C3jv/In1r/wp5i/+njzf/x7dn/xbmh/8/It/+Wh2r/k4h1jwAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAACfl5sE087Fr720oP/Qybz//f38//r59//z8+7/5+Xc/9rWyf/Nx7b/v7ai
- /7Cljf+jlnv/nI5y/5qMb/+dkXT/pZp+/62jif+1rZT/vLWd/8K8pP/Hwar/zcev/9HMtf/W0rz/0r2W
- /8eYRP/ClUj/2Mqt/82xh//DoW7/08Gg/+HVv//LtJf/ybia/+Hbx//Vzrj/x72o/8W9qf+Kelv/lox8
- cgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAChmZ0E087Fr720oP/JwbL/4t7V/8fAr/+xp5D/opV7
- /5uNcP+Zi27/nZBz/6SZfv+tpIn/tq6V/722nv/DvaX/yMKr/83HsP/SzbX/19K7/9zXwf/h3Mb/5uLM
- /+vm0f/v7Nf/4dW8/8uxj//EqoX/5+DM/9rPu//KuqH/1c24/9XNvP/Ivqv/wbej/7uxnf/Bt6T/0cu6
- /5uNcf+Jel/loJmRMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjm58E087Fr8C3pP+YiWz/n5F2
- /6OXfP+toor/tayV/7uznP+/uKH/xL6m/8nDrP/NyLH/0s22/9jTvP/d2MH/4t3H/+fizf/r59L/7+vW
- //Hu2f/z79v/8u/b//Ds2v/t6Nf/5eDR/9LHtf/Nw7D/zca0/8e+rf/BuKf/v7Wj/8C3pv/Gvq3/y8Oz
- /83Gtv/Iwa//nZB0/4NzVfmWjHx2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjm58E0czD
- r9bRwv/Mx7X/0s69/9jUw//a1sX/29fF/9vXxP/d2MT/39rE/+LeyP/n483/6+fS/+/r1v/y7tr/9PDc
- //Tw3v/z797/7+vb/+nk1f/h3M3/2dLD/9DIuP/Iv67/w7qp/8S7qv/Gvq3/ysOy/83Gtv/MxbT/xr6s
- /7uxnf+toYr/n5J4/5SFav+Jel71h3he2ZaNfHCvra4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAACjm58E0MzCr+Dc0P/r6N7/6ufb/+3q3v/v7N//8O3g//Lv4P/z8N//9PHf//Xx3//18uH/9PDi
- //Ht4P/s59v/5ODT/9vVyP/Ryrv/ysKy/8a+rf/Gvq7/ysOy/83Gt//Nxrb/ycGx/7+2o/+wpY//oJN5
- /5GCZ/+IeFv7hXVa7YV1XNWIemOzjoFti5OId2KbkoZAqKOfHMvP2gIAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAACjm58E0MvCr+Xi1v/5+PH/+vjv//r48P/7+fD/+vjv//n37f/18+n/7+zh
- /+bh1v/b1cj/0su8/8zEtf/KwrL/y8Oz/83Gtv/Ox7f/zMW1/8W8qv+4rpn/qJyE/5mKb/+NfWH9h3Za
- 84RzWeGFdl3DiXtmn46Cb3SWi3xMopqRLrGurBbR1d4GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkm6AEzce9r+Xi1v/5+PP//Pv4//r59f/18+//7uvl
- /+Xg2P/c18v/1c/B/9HKu//PyLj/zsi3/8nCsP+/tqL/sKWP/6GTev+UhWn/jHxg+Yd3W+mHd17Ri3xl
- r4+CboeWinleoJeKOq+poyDIx8sM+v3/AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwbmug9fSxf/q597/7uzl
- /+rn3//j39X/29fK/9LMvP/Gvqz/uK6Z/6mchP+bjXL/koNn/Yx7X/GKel/bjX5lwZCCbJuXindwoJWG
- SqykmyrAvLsU4ubuBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAurOr
- Hrqxorm+taL9vbSg/7Cljv+hlHr/mIht/5CAZPeNfGHljn5lzZKEba2XinWFoJSEWquilja7tbAc19fb
- CgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAALSspBalmYhslohxq4+AZrWWiHKZn5OAbqmfkUa4sKgmz8vMEPDx+AQAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9Pb+BPL1/gYAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8A
- AP///////wAA//////APAAD/////AAcAAP////gAAwAA////gAABAAD///wAAAEAAP//wAAAAQAA//4A
- AAABAAD/4AAAAAMAAP8AAAAABwAA+AAAAAAHAADwAAAAAAcAAPAAAAAABwAA8AAAAAAHAADwAAAAAAcA
- APAAAAAABwAA4AAAAAAHAADgAAAAAAcAAOAAAAAABwAA4AAAAAAPAADgAAAAAA8AAOAAAAAADwAA4AAA
- AAAPAADgAAAAAA8AAOAAAAAADwAA4AAAAAAPAADgAAAAAA8AAOAAAAAADwAA4AAAAAAPAADgAAAAAA8A
- AOAAAAAADwAA4AAAAAAPAADgAAAAAA8AAOAAAAAADwAA4AAAAAAPAADgAAAAAB8AAOAAAAAAHwAA4AAA
- AAA/AADgAAAAB/8AAOAAAAD//wAA8AAAP///AADwAA////8AAPgB/////wAA/n//////AAD///////8A
- AP///////wAA////////AAAoAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABAAAAAgAAAAGAAAA
- BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAGAAAADgcHBxpDQj80bWtm
- UlVTTkIHBwceAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABAAAAAoAAAEULy4tKm1rZkyYlY18tbGn
- r8nFuNvRzcDzxL+x54B8cYEAAAAmAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAGAAAADh4eHSBgX1tAkI2GbK+roZ/Dv7LP0c2/
- 793Yy/3m4tb/7+3k//Hv5//e2cn/uLGd4z48OE4AAAAWAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABAAAAAoQEBAYVFJQNIeFf1yppZyRvrmuwcvGuOfV0cL739vO
- /+nm3P/z8ev/+vr3//7+/f//////+vn3/97ay/++t6D1YV5WWAAAABAAAAACAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAIAAAAGBgYHEkNCQSh/fXhMo6CYfri0qLPFwLPdzsm699bRw//h3ND/7Ori
- //b18f/9/Pv////////////////////////////6+ff/3tnK/722n/OFgHRAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAACAAAABAAAAAwxMTAednRwQJ2ak261sKajwLuu08fBsvHOyLj/19HE/+Tf1v/w7uj/+vn3
- //7+/v////////////////////////////////////////////r59//d2cr/u7Oc8ZyWiDQAAAAAAAAA
- AAAAAAAAAAAAAAAAAgcHBxCAfnlIsKyjkby3qsXBu6vpxb2s/czFtf/Y08f/6OXd//X08f/9/fz/////
- ///////////////////////////////////////+/v7//v7+//7+/f/9/f3/+Pf0/9zXyP+5sZnxm5WH
- NAAAAAAAAAAAAAAAAAAAAAAAAAAAsK2lVMG7rOXAt6X/zMW2/93Yz//u7Of/+vr4////////////////
- ///////////////////////+/v7//v7+//7+/v/9/f3//f38//z8+//7+/r/+/v5//v6+f/19O//29bG
- /7eulvGalIY0AAAAAAAAAAAAAAAAAAAAALu3sxLIwrTFwrqp//Lw7f/+/v7/////////////////////
- /////////////v7+//7+/v/+/v3//f39//39/P/8/Pv//Pv6//v7+f/7+vn/+vn4//n49v/49/X/+Pf1
- //Lx7P/Z1MT/tKyU75qThTIAAAAAAAAAAAAAAAAAAAAAxcG7MMO7q+3e2dD//////////////////v7+
- //7+/v/+/v3//f39//39/P/8/Pz//Pz7//z8+//7+/r/+/r5//r6+P/6+ff/+fn2//j49f/39vT/9vXy
- //X18f/19PH/7+3n/9jSwv+yqZHvmZKEMgAAAAAAAAAAAAAAAAAAAADGwrs2w7yr8eHd1f///////v7+
- //7+/f/9/f3//fz8//z8+//8/Pr/+/v6//v7+f/6+vj/+vn4//n59//5+Pb/+Pj1//f39P/39vP/9vXy
- //Tz7//z8u7/8vHt//Lx7f/s6uP/1tDA/7Cmj++YkYMwAAAAAAAAAAAAAAAAAAAAAMbDvDbDvKvx4dzU
- /////v/9/Pz//Pz7//z8+//7+/r/+/v5//v6+f/6+fj/+vn3//n49v/4+PX/+Pf0//f28//29vL/9vXx
- //X08P/y8ez/8fDq//Dv6f/w7un/7+7o/+nn3//Uz77/rqSM7ZiRgi4AAAAAAAAAAAAAAAAAAAAAyMS9
- NsO8q/Hg29P//v79//v7+v/7+/n/+/r5//r6+P/6+ff/+fn2//n49v/4+PX/9/f0//f28//29fL/9fXx
- //X08P/z8u7/8O/p/+7t5//u7Ob/7ezl/+3r5P/s6+T/5+Tb/9PNvP+soontl4+BLgAAAAAAAAAAAAAA
- AAAAAADJxL42w7yr8eDb0v/9/fz/+/r5//r6+P/6+ff/+fn3//n49v/4+PX/9/f0//f28//29fL/9fTx
- //T08P/08+//8vHs/+7t5v/s6uP/7Ori/+vp4f/q6eH/6ujg/+no4P/j4db/0cu6/6qfhuuWj4AsAAAA
- AAAAAAAAAAAAAAAAAMrGvzbEvKvx39rR//z8+//6+vj/+fn3//n49v/4+PX/9/f0//f28//29fL/9fXx
- //X08P/08+//8/Lu//Hv6v/s6uP/6ujg/+nn3//p597/6Obd/+jm3f/n5dz/5+Xc/+De0v/Pybj/qJ2E
- 65aOfyoAAAAAAAAAAAAAAAAAAAAAy8fANsS8q/He2tD//Pv6//n59//5+Pb/+Pf1//j39P/39vP/9vXy
- //X18f/09PD/9PPv//Py7f/u7eb/6eff/+fm3P/n5dz/5uXb/+bk2v/l49n/5ePY/+Ti2P/k4tf/3drO
- /83Htf+lmoHrlY1+KgAAAAAAAAAAAAAAAAAAAADMyMA2xLyr8d7Z0P/7+/n/+fj2//j39f/39/T/9/bz
- //b18v/19fH/9fTw//Tz7//x8Or/6+nh/+bk2v/l49n/5ePZ/+Ti2P/k4df/4+HW/+Lg1f/i4NX/4uDU
- /+Lf1f/b2Mv/zMWz/6SYf+mVjX4qAAAAAAAAAAAAAAAAAAAAAMzIwTbEvKvx3tnP//v7+f/4+PX/+Pf0
- //f28//29fL/9fXx//X08P/z8u3/7evk/+bk2v/j4db/4+HW/+Lg1f/i4NX/4uDU/+Lg1P/h39P/393R
- /9zZzP/W0sP/z8m4/8S8qP/Gvqv/opZ96ZSMfSgAAAAAAAAAAAAAAAAAAAAAzcnCNsS8q/Hd2c//+/r4
- //j39f/39/T/9/bz//b18v/08+//7u3n/+bk2//i4NX/4t/U/+Lg1P/i39P/4N3R/9vXyv/TzsD/ysSz
- /7+4pf+3rpn/sqiQ/7Gmjf+xp43/raGG/8C2of+glHvnlIt8KAAAAAAAAAAAAAAAAAAAAADOysM2xLyr
- 8d3Zz//7+vj/+Pf1//f39P/29fH/8O7p/+jm3f/i4NT/393R/9vYy//Uz8D/yMKx/7yzoP+xp5H/qp+G
- /6qcgf+rn4P/tKOC/7ulff/BsY3/xJ1a/87Bof/Nxq7/w7mk/56ReOeUi3wmAAAAAAAAAAAAAAAAAAAA
- AM/LxDbEvKvx3tnP//z8+//49/T/7+7o/+Lf1f/V0MH/ycKx/721oP+xp5D/qZ6E/6ebgf+pnoT/sKaN
- /7mxmP/CuqH/xqJj/8eocP/MsH3/x59Z/9XAnP/Homn/3c+x/97Xwv/FvKf/l4pv45aNgCIAAAAAAAAA
- AAAAAAAAAAAA0czFNsO7qvHRyr3/2tXK/8K7qf+yqJH/qZ2E/6abgP+pnoP/sKeM/7mxmP/DvKT/zMav
- /9XQuf/c2MH/49/J/+bgyf/Ps4f/zraO/9rMtP/KuJv/1s25/8i7pv/Iv6v/y8Kv/7Gmjv+MfmS5paGe
- DAAAAAAAAAAAAAAAAAAAAADQy8Q2yMGx8a6jjP+0q5P/urKb/8C5ov/Gv6j/zciw/9bRuv/d2cL/5ODK
- /+rm0f/u6tb/7+vY/+3p1//o49L/4NvK/9HHtv/LwrD/zMSz/8e/rv/Du6n/wLel/7qwnf+rn4j/jX5j
- 3ZOIdkIAAAAAAAAAAAAAAAAAAAAAAAAAAMvFvTbb18rx4+HU/+fk1//q59r/7OnZ/+7r2f/w7Nn/8e3b
- /+/r2//r5tf/5eDR/9zWyP/Uzr//zse3/8nCsf/Du6n/vbSg/7Splf+pnYb9oJN78ZmMdN2Thm69j4Fq
- mYx+aHCVi3ssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyMO7NuHd0vH5+PH/+vny//n38P/08un/7One
- /+Ld0P/X0cP/0cq6/8rCsv/Cuqf/ua+b/7ClkP+mmoP5nI5255OFbMuOgGerinxlg4h6ZFqKfWk2koh6
- HKKdmgoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAua8m1tHE4+7r4//u7OX/49/V
- /9TOwP/Gvav/t62Y/6ygiv2jl3/vm4112ZSGbbuPgGiVjn9oapCDbkaUiHgonpSKEMbGzAIAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALexswK8tKZoua+d
- 3aygifOhk3rlmoxzyZaHbqWUhW5+k4VvVpeKdjSglogYubSyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AKmgnQKfk4MgmIp1OJ+Tgiavp54O2trfAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAP////////8H///4A///gAH//AAA/8AAAP4AAAPgAAADwAAAA+AAAAPAAAADwAAA
- A8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAfAAAAPwAAA
- f8AAD//AA///4H//////////////KAAAABgAAAAwAAAAAQAgAAAAAABgCQAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAwrKikeLiwr
- HgAAAAwAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAABh0dHBZhX1o0kI2FYLCsoZfEwbXHvLirx3FtY2AAAAAUAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDg4ODlVUUSiIhX5QqKWahb+7r7nRzcDj4N3R
- +ezp4f/08uz/4d3P/62nlMcXFhUuAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAgQIR0dF
- HIF+eECinpRyuLOnq8jDttfX0sb15OHX//Du5//5+PT//v79///////+/v3/49/S/7ewm9E+PDgiAAAA
- AgAAAAAAAAAAAAAAAAAAAAQ5OTkUe3l0Mp2ZkGKxrKCZv7qsy8zHue3a1cn95+Tc//Py7f/7+/n////+
- ///////////////////////+/v3/4t7R/7mynMuFgXcOAAAAAAAAAAAAAAAAWVhWFqail3S4saO9wrus
- 5c7Iuvvc2M3/6+ji//f28//+/f3////////////////////////////+/v7//v79//39/P/7+/r/4NzP
- /7evmcmMh30OAAAAAAAAAAAAAAAAwbuvcsW9rvvf29H/8O7q//v6+f///////////////////////v7+
- //7+/v/9/f3//f38//z8+//7+/r/+vr5//n59//49/T/3tnL/7SslcmLhnwOAAAAAAAAAADDwsEKxL2u
- weHd1f////////////7+/v/+/v7//v79//39/f/9/fz//Pz7//v7+v/7+vn/+vr4//n59//4+PX/9/bz
- //b18f/08+//29bI/7KpksmLhnwMAAAAAAAAAADFwb4OxL2uy+fk3v///////v39//39/P/8/Pv//Pz6
- //v7+v/6+vn/+vn3//n49v/49/X/9/f0//b28v/08+//8/Lt//Lx7P/w7+n/2dPE/7Cmj8eKhXsMAAAA
- AAAAAADGxMAOxL6uy+fj3P/+/v3//Pz6//v7+v/7+vn/+vr4//n59//4+PX/9/f0//f28//29fL/9fTw
- //Lx7P/v7uj/7+7n/+7t5v/s6uP/1tDB/62jjMWKhHoMAAAAAAAAAADIxcIOxb6uy+bi2//8/Pv/+/r4
- //r59//5+Pb/+Pj1//f39P/39vP/9vXx//X08P/08u7/8O7p/+zr5P/s6uP/6+ni/+rp4f/o5t7/0829
- /6qgicOJgnkKAAAAAAAAAADKyMQOxb6uy+Xh2f/7+/r/+fn3//j49v/49/T/9/bz//b18v/19PD/9PPv
- //Lx7P/t7OX/6ujg/+nn3v/o5t3/5+Xc/+bk2//k4tj/0Mq5/6idhsOJgnkKAAAAAAAAAADMycYOxb6u
- y+Tg2P/7+vn/+fj2//j39P/39vP/9vXx//X08P/08+7/8O/p/+no3//m5Nv/5ePa/+Xj2f/k4tj/5OHX
- /+Ph1v/h39T/zce2/6abg8GJgnkKAAAAAAAAAADOysgOxb6uy+Tg2P/6+vj/+Pf1//f28//29fL/9fTw
- //Lx7P/r6uL/5ePZ/+Ph1//j4db/4+HW/+Lg1P/g3dH/3NnM/9bSxP/Nx7b/xLyo/6SYgb+JgnoIAAAA
- AAAAAADPzMkOxb6vy+Pg2P/6+vf/+Pf0//f28//08+//7ezl/+bk2v/i4NX/4N3R/9vXyv/Tzr//ycOy
- /8C5pv+6sJr/tqyT/7eoif+2rJL/u7CZ/6KWfr+JgnoIAAAAAAAAAADRzswOxr6vy+Tg2P/7+/n/9vXy
- /+zr5P/f3NH/08/A/8jCsP++tqL/tauV/7Cmjv+wp47/tqF5/7umfv/Bo2z/ybGF/8mma//c07r/xbym
- /52Reb2MhX4IAAAAAAAAAADU0c8Oxb2ty9XPw//Y08f/w7up/7Wslf+vpY3/sKaN/7atk/+/t57/y8Ss
- /9bQuf/f2sX/0rmO/9C5j//PuZb/0sSp/8q8ov/QyLT/uK6X/5GEa5kAAAAAAAAAAAAAAADPy8cOy8W2
- y761of/Cu6b/x8Cq/83HsP/X0rv/4dzG/+jkz//r59T/6uXT/+bhz//f2cj/0ci3/8nArv/Du6n/vLKf
- /7Wrl/2soYvxlYhvv4+DcCwAAAAAAAAAAAAAAADAubMO3trPy/Du5P/08uj/9PHm//Dt3//q5db/4t3O
- /9rUxP/PyLj/xbyq/7qwnf+wpZD3qJyG5Z+TfMuXinKnk4ZugY+CbFiMf2k0kIV2EgAAAAAAAAAAAAAA
- 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
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/AppContext.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/AppContext.cs
deleted file mode 100644
index 89fbbc7d..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/AppContext.cs
+++ /dev/null
@@ -1,57 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace WebsitePanel.Installer.Common
-{
- internal class AppContext
- {
- private ApplicationForm appForm;
- private ScopeNode scopeNode;
-
- public ApplicationForm AppForm
- {
- get { return appForm; }
- set { appForm = value; }
- }
-
- public ScopeNode ScopeNode
- {
- get { return scopeNode; }
- set { scopeNode = value; }
- }
-
- public string CurrentPath
- {
- get { return FileUtils.GetCurrentDirectory(); }
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/ProgressManager.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/ProgressManager.cs
deleted file mode 100644
index c03f3e98..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/ProgressManager.cs
+++ /dev/null
@@ -1,66 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Windows.Forms;
-using System.Collections.Generic;
-using System.Text;
-
-namespace WebsitePanel.Installer.Common
-{
- internal class ProgressManager
- {
- private Form form;
- private ToolStripStatusLabel label;
- private Cursor cursor;
-
- public ProgressManager(Form form, ToolStripStatusLabel label)
- {
- this.form = form;
- this.label = label;
- }
-
- public void StartProgress(string title)
- {
- cursor = form.Cursor;
- form.Cursor = Cursors.WaitCursor;
- label.Text = title;
- if (label.Owner != null)
- label.Owner.Refresh();
- }
-
- public void FinishProgress()
- {
- form.Cursor = cursor;
- label.Text = "Ready";
- if ( label.Owner != null )
- label.Owner.Refresh();
- }
- }
-
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/ScopeNode.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/ScopeNode.cs
deleted file mode 100644
index c0a1f98a..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/ScopeNode.cs
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Drawing;
-using System.Windows.Forms;
-using System.Collections.Generic;
-using System.Text;
-using WebsitePanel.Installer.Controls;
-
-namespace WebsitePanel.Installer.Common
-{
- internal enum NodeType
- {
- Servers,
- Server,
- Components,
- Component,
- Module,
- Settings,
- Service
- };
-
- internal class ScopeNode : TreeNode
- {
- private bool populated;
- private Icon largeIcon;
- private Icon smallIcon;
- private ResultViewControl resultView;
- private NodeType nodeType;
- private object dataObject;
-
- public ScopeNode()
- {
- }
-
- public bool Populated
- {
- get { return populated; }
- set { populated = value; }
- }
-
- public Icon LargeIcon
- {
- get { return largeIcon; }
- set { largeIcon = value; }
- }
-
- public Icon SmallIcon
- {
- get { return smallIcon; }
- set { smallIcon = value; }
- }
-
- public ResultViewControl ResultView
- {
- get { return resultView; }
- set { resultView = value; }
- }
-
- public NodeType NodeType
- {
- get { return nodeType; }
- set { nodeType = value; }
- }
-
- public object DataObject
- {
- get { return dataObject; }
- set { dataObject = value; }
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/User32.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/User32.cs
deleted file mode 100644
index ffef6e32..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/User32.cs
+++ /dev/null
@@ -1,54 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Runtime.InteropServices;
-
-namespace WebsitePanel.Installer.Common
-{
- internal sealed class User32
- {
- ///
- /// Win32 API Constants for ShowWindowAsync()
- ///
- internal const int SW_HIDE = 0;
- internal const int SW_SHOWNORMAL = 1;
- internal const int SW_SHOWMINIMIZED = 2;
- internal const int SW_SHOWMAXIMIZED = 3;
- internal const int SW_SHOWNOACTIVATE = 4;
- internal const int SW_RESTORE = 9;
- internal const int SW_SHOWDEFAULT = 10;
-
- [DllImport("user32.dll")]
- internal static extern bool SetForegroundWindow(IntPtr hWnd);
- [DllImport("user32.dll")]
- internal static extern bool IsIconic(IntPtr hWnd);
- [DllImport("user32.dll")]
- internal static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/Utils.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/Utils.cs
deleted file mode 100644
index d94f9863..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Common/Utils.cs
+++ /dev/null
@@ -1,65 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.IO;
-using System.Windows.Forms;
-using System.Configuration;
-using System.Collections;
-using System.Collections.Generic;
-using System.Text;
-using System.Diagnostics;
-using System.DirectoryServices;
-using System.DirectoryServices.ActiveDirectory;
-
-using System.Security.Principal;
-using System.Security;
-using System.Security.Permissions;
-using System.Runtime.InteropServices;
-using System.Threading;
-using WebsitePanel.Installer.Core;
-
-namespace WebsitePanel.Installer.Common
-{
- public static class UiUtils
- {
- public static void ShowRunningInstance()
- {
- Process currentProcess = Process.GetCurrentProcess();
- foreach (Process process in Process.GetProcessesByName(currentProcess.ProcessName))
- {
- if (process.Id != currentProcess.Id)
- {
- //set focus
- User32.SetForegroundWindow(process.MainWindowHandle);
- break;
- }
- }
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentControl.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentControl.Designer.cs
deleted file mode 100644
index 323cce2f..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentControl.Designer.cs
+++ /dev/null
@@ -1,213 +0,0 @@
-namespace WebsitePanel.Installer.Controls
-{
- partial class ComponentControl
- {
- ///
- /// 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 Component 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(ComponentControl));
- this.grpInfo = new System.Windows.Forms.GroupBox();
- this.txtVersion = new System.Windows.Forms.TextBox();
- this.lblVersion = new System.Windows.Forms.Label();
- this.txtComponent = new System.Windows.Forms.TextBox();
- this.lblComponent = new System.Windows.Forms.Label();
- this.txtApplication = new System.Windows.Forms.TextBox();
- this.lblApplication = new System.Windows.Forms.Label();
- this.grpDescription = new System.Windows.Forms.GroupBox();
- this.lblDescription = new System.Windows.Forms.Label();
- this.btnCheckUpdate = new System.Windows.Forms.Button();
- this.btnSettings = new System.Windows.Forms.Button();
- this.btnRemove = new System.Windows.Forms.Button();
- this.grpInfo.SuspendLayout();
- this.grpDescription.SuspendLayout();
- this.SuspendLayout();
- //
- // grpInfo
- //
- this.grpInfo.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.grpInfo.Controls.Add(this.txtVersion);
- this.grpInfo.Controls.Add(this.lblVersion);
- this.grpInfo.Controls.Add(this.txtComponent);
- this.grpInfo.Controls.Add(this.lblComponent);
- this.grpInfo.Controls.Add(this.txtApplication);
- this.grpInfo.Controls.Add(this.lblApplication);
- this.grpInfo.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.grpInfo.Location = new System.Drawing.Point(14, 43);
- this.grpInfo.Name = "grpInfo";
- this.grpInfo.Size = new System.Drawing.Size(379, 122);
- this.grpInfo.TabIndex = 3;
- this.grpInfo.TabStop = false;
- this.grpInfo.Text = "Summary";
- //
- // txtVersion
- //
- this.txtVersion.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtVersion.Location = new System.Drawing.Point(122, 82);
- this.txtVersion.Name = "txtVersion";
- this.txtVersion.ReadOnly = true;
- this.txtVersion.Size = new System.Drawing.Size(234, 21);
- this.txtVersion.TabIndex = 5;
- //
- // lblVersion
- //
- this.lblVersion.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblVersion.Location = new System.Drawing.Point(16, 82);
- this.lblVersion.Name = "lblVersion";
- this.lblVersion.Size = new System.Drawing.Size(100, 21);
- this.lblVersion.TabIndex = 4;
- this.lblVersion.Text = "Version";
- //
- // txtComponent
- //
- this.txtComponent.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtComponent.Location = new System.Drawing.Point(122, 55);
- this.txtComponent.Name = "txtComponent";
- this.txtComponent.ReadOnly = true;
- this.txtComponent.Size = new System.Drawing.Size(234, 21);
- this.txtComponent.TabIndex = 3;
- //
- // lblComponent
- //
- this.lblComponent.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblComponent.Location = new System.Drawing.Point(16, 55);
- this.lblComponent.Name = "lblComponent";
- this.lblComponent.Size = new System.Drawing.Size(100, 21);
- this.lblComponent.TabIndex = 2;
- this.lblComponent.Text = "Component";
- //
- // txtApplication
- //
- this.txtApplication.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtApplication.Location = new System.Drawing.Point(122, 28);
- this.txtApplication.Name = "txtApplication";
- this.txtApplication.ReadOnly = true;
- this.txtApplication.Size = new System.Drawing.Size(234, 21);
- this.txtApplication.TabIndex = 1;
- //
- // lblApplication
- //
- this.lblApplication.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblApplication.Location = new System.Drawing.Point(16, 28);
- this.lblApplication.Name = "lblApplication";
- this.lblApplication.Size = new System.Drawing.Size(100, 21);
- this.lblApplication.TabIndex = 0;
- this.lblApplication.Text = "Application";
- //
- // grpDescription
- //
- this.grpDescription.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.grpDescription.Controls.Add(this.lblDescription);
- this.grpDescription.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.grpDescription.Location = new System.Drawing.Point(14, 171);
- this.grpDescription.Name = "grpDescription";
- this.grpDescription.Size = new System.Drawing.Size(379, 117);
- this.grpDescription.TabIndex = 4;
- this.grpDescription.TabStop = false;
- this.grpDescription.Text = "Description";
- //
- // lblDescription
- //
- this.lblDescription.Dock = System.Windows.Forms.DockStyle.Fill;
- this.lblDescription.Location = new System.Drawing.Point(3, 17);
- this.lblDescription.Name = "lblDescription";
- this.lblDescription.Size = new System.Drawing.Size(373, 97);
- this.lblDescription.TabIndex = 0;
- //
- // btnCheckUpdate
- //
- this.btnCheckUpdate.Image = ((System.Drawing.Image)(resources.GetObject("btnCheckUpdate.Image")));
- this.btnCheckUpdate.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnCheckUpdate.Location = new System.Drawing.Point(14, 9);
- this.btnCheckUpdate.Name = "btnCheckUpdate";
- this.btnCheckUpdate.Size = new System.Drawing.Size(128, 28);
- this.btnCheckUpdate.TabIndex = 0;
- this.btnCheckUpdate.Text = " &Check For Updates";
- this.btnCheckUpdate.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
- this.btnCheckUpdate.UseVisualStyleBackColor = true;
- this.btnCheckUpdate.Click += new System.EventHandler(this.OnCheckUpdateClick);
- //
- // btnSettings
- //
- this.btnSettings.Image = ((System.Drawing.Image)(resources.GetObject("btnSettings.Image")));
- this.btnSettings.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnSettings.Location = new System.Drawing.Point(262, 9);
- this.btnSettings.Name = "btnSettings";
- this.btnSettings.Size = new System.Drawing.Size(108, 28);
- this.btnSettings.TabIndex = 2;
- this.btnSettings.Text = "&Settings";
- this.btnSettings.UseVisualStyleBackColor = true;
- this.btnSettings.Click += new System.EventHandler(this.OnSettingsClick);
- //
- // btnRemove
- //
- this.btnRemove.Image = ((System.Drawing.Image)(resources.GetObject("btnRemove.Image")));
- this.btnRemove.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnRemove.Location = new System.Drawing.Point(148, 9);
- this.btnRemove.Name = "btnRemove";
- this.btnRemove.Size = new System.Drawing.Size(108, 28);
- this.btnRemove.TabIndex = 1;
- this.btnRemove.Text = "&Uninstall";
- this.btnRemove.Click += new System.EventHandler(this.OnRemoveClick);
- //
- // ComponentControl
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.grpDescription);
- this.Controls.Add(this.grpInfo);
- this.Controls.Add(this.btnCheckUpdate);
- this.Controls.Add(this.btnSettings);
- this.Controls.Add(this.btnRemove);
- this.Name = "ComponentControl";
- this.Size = new System.Drawing.Size(406, 327);
- this.grpInfo.ResumeLayout(false);
- this.grpInfo.PerformLayout();
- this.grpDescription.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.Button btnRemove;
- private System.Windows.Forms.Button btnSettings;
- private System.Windows.Forms.Button btnCheckUpdate;
- private System.Windows.Forms.GroupBox grpInfo;
- private System.Windows.Forms.TextBox txtVersion;
- private System.Windows.Forms.Label lblVersion;
- private System.Windows.Forms.TextBox txtComponent;
- private System.Windows.Forms.Label lblComponent;
- private System.Windows.Forms.TextBox txtApplication;
- private System.Windows.Forms.Label lblApplication;
- private System.Windows.Forms.GroupBox grpDescription;
- private System.Windows.Forms.Label lblDescription;
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentControl.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentControl.cs
deleted file mode 100644
index 2420e91a..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentControl.cs
+++ /dev/null
@@ -1,393 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Threading;
-using System.IO;
-using System.Collections;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Drawing;
-using System.Data;
-using System.Text;
-using System.Windows.Forms;
-
-using WebsitePanel.Installer.Common;
-using WebsitePanel.Installer.Services;
-using WebsitePanel.Installer.Core;
-using WebsitePanel.Installer.Configuration;
-
-namespace WebsitePanel.Installer.Controls
-{
- ///
- /// Component control
- ///
- internal partial class ComponentControl : ResultViewControl
- {
- delegate void ReloadApplicationCallback();
-
- ///
- /// Initializes a new instance of the ComponentControl class.
- ///
- public ComponentControl()
- {
- InitializeComponent();
- }
-
- ///
- /// Shows control
- ///
- ///
- public override void ShowControl(AppContext context)
- {
- base.ShowControl(context);
- if (!IsInitialized)
- {
- ComponentConfigElement element = context.ScopeNode.Tag as ComponentConfigElement;
- if (element != null)
- {
- txtApplication.Text = element.GetStringSetting("ApplicationName");
- txtComponent.Text = element.GetStringSetting("ComponentName");
- txtVersion.Text = element.GetStringSetting("Release");
- lblDescription.Text = element.GetStringSetting("ComponentDescription");
-
- string installer = element.GetStringSetting("Installer");
- string path = element.GetStringSetting("InstallerPath");
- string type = element.GetStringSetting("InstallerType");
- if ( string.IsNullOrEmpty(installer) ||
- string.IsNullOrEmpty(path) ||
- string.IsNullOrEmpty(type))
- {
- btnRemove.Enabled = false;
- btnSettings.Enabled = false;
- }
- }
- IsInitialized = true;
- }
- }
-
- ///
- /// Action on Remove button click
- ///
- ///
- ///
- private void OnRemoveClick(object sender, EventArgs e)
- {
- UninstallComponent();
- }
-
- ///
- /// Action on Settings button click
- ///
- ///
- ///
- private void OnSettingsClick(object sender, EventArgs e)
- {
- SetupComponent();
- }
-
- ///
- /// Action on Check For Update button click
- ///
- ///
- ///
- private void OnCheckUpdateClick(object sender, EventArgs e)
- {
- //start check in the separate thread
- AppContext.AppForm.StartAsyncProgress("Connecting...", true);
- ThreadStart threadDelegate = new ThreadStart(CheckForUpdate);
- Thread newThread = new Thread(threadDelegate);
- newThread.Start();
- }
-
- ///
- /// Checks for component update
- ///
- private void CheckForUpdate()
- {
- Log.WriteStart("Checking for component update");
- ComponentConfigElement element = AppContext.ScopeNode.Tag as ComponentConfigElement;
-
- string componentName = element.GetStringSetting("ComponentName");
- string componentCode = element.GetStringSetting("ComponentCode");
- string release = element.GetStringSetting("Release");
-
- // call web service
- DataSet ds;
- try
- {
- Log.WriteInfo(string.Format("Checking {0} {1}", componentName, release));
- //
- var webService = ServiceProviderProxy.GetInstallerWebService();
- ds = webService.GetComponentUpdate(componentCode, release);
- //
- Log.WriteEnd("Component update checked");
- AppContext.AppForm.FinishProgress();
- }
- catch (Exception ex)
- {
- Log.WriteError("Service error", ex);
- AppContext.AppForm.FinishProgress();
- AppContext.AppForm.ShowServerError();
- return;
- }
-
- string appName = AppContext.AppForm.Text;
- if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
- {
- DataRow row = ds.Tables[0].Rows[0];
- string newVersion = row["Version"].ToString();
- Log.WriteInfo(string.Format("Version {0} is available for download", newVersion));
-
- string message = string.Format("{0} {1} is available now.\nWould you like to install new version?", componentName, newVersion);
- if (MessageBox.Show(AppContext.AppForm, message, appName, MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
- {
- string fileToDownload = row["UpgradeFilePath"].ToString();
- string installerPath = row["InstallerPath"].ToString();
- string installerType = row["InstallerType"].ToString();
- UpdateComponent(fileToDownload, installerPath, installerType, newVersion);
- }
- }
- else
- {
- string message = string.Format("Current version of {0} is up to date.", componentName);
- Log.WriteInfo(message);
- AppContext.AppForm.ShowInfo(message);
- }
- }
-
- delegate void UpdateComponentCallback(string fileName, string path, string type, string version);
-
- ///
- /// Runs component update
- ///
- ///
- ///
- ///
- private void UpdateComponent(string fileName, string path, string type, string version)
- {
- // InvokeRequired required compares the thread ID of the
- // calling thread to the thread ID of the creating thread.
- // If these threads are different, it returns true.
- if (this.InvokeRequired)
- {
- UpdateComponentCallback callBack = new UpdateComponentCallback(UpdateComponent);
- Invoke(callBack, new object[] { fileName, path, type, version });
- }
- else
- {
- Log.WriteStart("Updating component");
-
- ComponentConfigElement element = AppContext.ScopeNode.Tag as ComponentConfigElement;
- string componentId = element.ID;
- string componentName = element.GetStringSetting("ComponentName");
-
- try
- {
- Log.WriteInfo(string.Format("Updating {0}", componentName));
- //download installer
- Loader form = new Loader(this.AppContext, fileName);
- DialogResult result = form.ShowDialog(this);
- if (result == DialogResult.OK)
- {
- //run installer
- string tmpFolder = FileUtils.GetTempDirectory();
- string installerPath = Path.Combine(tmpFolder, path);
- Update();
- string method = "Update";
- Log.WriteStart(string.Format("Running installer {0}.{1} from {2}", type, method, path));
- Hashtable args = new Hashtable();
- args["ComponentId"] = componentId;
- args["ShellVersion"] = AppContext.AppForm.Version;
- args["BaseDirectory"] = FileUtils.GetCurrentDirectory();
- args["UpdateVersion"] = version;
- args["Installer"] = Path.GetFileName(fileName);
- args["InstallerType"] = type;
- args["InstallerPath"] = path;
- args["InstallerFolder"] = tmpFolder;
- args["IISVersion"] = Global.IISVersion;
- args["ParentForm"] = FindForm();
-
- result = (DialogResult)AssemblyLoader.Execute(installerPath, type, method, new object[] { args });
- Log.WriteInfo(string.Format("Installer returned {0}", result));
- Log.WriteEnd("Installer finished");
- Update();
- if (result == DialogResult.OK)
- {
- ReloadApplication();
- }
- FileUtils.DeleteTempDirectory();
- }
- Log.WriteEnd("Update completed");
- }
- catch (Exception ex)
- {
- Log.WriteError("Installer error", ex);
- AppContext.AppForm.ShowError(ex);
- }
- }
- }
-
- ///
- /// Uninstalls component
- ///
- private void UninstallComponent()
- {
- Log.WriteStart("Uninstalling component");
-
- ComponentConfigElement element = AppContext.ScopeNode.Tag as ComponentConfigElement;
- string installer = element.GetStringSetting(Global.Parameters.Installer);
- string path = element.GetStringSetting(Global.Parameters.InstallerPath);
- string type = element.GetStringSetting(Global.Parameters.InstallerType);
- string componentId = element.ID;
- string componentCode = element.GetStringSetting(Global.Parameters.ComponentCode);
- string componentName = element.GetStringSetting(Global.Parameters.ComponentName);
- string release = element.GetStringSetting(Global.Parameters.Release);
-
- try
- {
- Log.WriteInfo(string.Format("Uninstalling {0}", componentName));
- //download installer
- Loader form = new Loader(this.AppContext, installer, componentCode, release);
- DialogResult result = form.ShowDialog(this);
- if (result == DialogResult.OK)
- {
- //run installer
- string tmpFolder = FileUtils.GetTempDirectory();
- path = Path.Combine(tmpFolder, path);
- Update();
- string method = "Uninstall";
- //
- Log.WriteStart(string.Format("Running installer {0}.{1} from {2}", type, method, path));
- //
- var args = new Hashtable
- {
- { Global.Parameters.ComponentId, componentId },
- { Global.Parameters.ComponentCode, componentCode },
- { Global.Parameters.ShellVersion, AppContext.AppForm.Version },
- { Global.Parameters.BaseDirectory, FileUtils.GetCurrentDirectory() },
- { Global.Parameters.IISVersion, Global.IISVersion },
- { Global.Parameters.ParentForm, FindForm() },
- };
- //
- result = (DialogResult)AssemblyLoader.Execute(path, type, method, new object[] { args });
- //
- Log.WriteInfo(string.Format("Installer returned {0}", result));
- Log.WriteEnd("Installer finished");
- Update();
- ReloadApplication();
- FileUtils.DeleteTempDirectory();
-
- }
- Log.WriteEnd("Uninstall completed");
- }
- catch (Exception ex)
- {
- Log.WriteError("Installer error", ex);
- AppContext.AppForm.ShowError(ex);
- }
- }
-
- ///
- /// Setup component
- ///
- private void SetupComponent()
- {
- Log.WriteStart("Starting component setup");
-
- var element = AppContext.ScopeNode.Tag as ComponentConfigElement;
-
- string installer = element.GetStringSetting("Installer");
- string path = element.GetStringSetting("InstallerPath");
- string type = element.GetStringSetting("InstallerType");
- string componentId = element.ID;
- string componentCode = element.GetStringSetting("ComponentCode");
- string componentName = element.GetStringSetting("ComponentName");
- string release = element.GetStringSetting("Release");
-
- try
- {
- Log.WriteInfo(string.Format("Setup {0} {1}", componentName, release));
- //download installer
- Loader form = new Loader(this.AppContext, installer, componentCode, release);
- DialogResult result = form.ShowDialog(this);
- if (result == DialogResult.OK)
- {
- string tmpFolder = Path.Combine(AppContext.CurrentPath, "Tmp");
- path = Path.Combine(tmpFolder, path);
- Update();
- string method = "Setup";
- Log.WriteStart(string.Format("Running installer {0}.{1} from {2}", type, method, path));
- Hashtable args = new Hashtable();
- args["ComponentId"] = componentId;
- args["ShellVersion"] = AppContext.AppForm.Version;
- args["BaseDirectory"] = FileUtils.GetCurrentDirectory();
- args["IISVersion"] = Global.IISVersion;
- args["ParentForm"] = FindForm();
- args[Global.Parameters.ShellMode] = Global.VisualInstallerShell;
- //
- result = (DialogResult)AssemblyLoader.Execute(path, type, method, new object[] { args });
- //
- Log.WriteInfo(string.Format("Installer returned {0}", result));
- Log.WriteEnd("Installer finished");
-
- if (result == DialogResult.OK)
- {
- ReloadApplication();
- }
- FileUtils.DeleteTempDirectory();
- }
- Log.WriteEnd("Component setup completed");
- }
- catch (Exception ex)
- {
- Log.WriteError("Installer error", ex);
- this.AppContext.AppForm.ShowError(ex);
- }
- }
-
- ///
- /// Thread safe application reload
- ///
- private void ReloadApplication()
- {
- // InvokeRequired required compares the thread ID of the
- // calling thread to the thread ID of the creating thread.
- // If these threads are different, it returns true.
- if (this.InvokeRequired)
- {
- ReloadApplicationCallback callback = new ReloadApplicationCallback(ReloadApplication);
- Invoke(callback, null);
- }
- else
- {
- AppContext.AppForm.ReloadApplication();
- }
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentControl.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentControl.resx
deleted file mode 100644
index 9e393425..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentControl.resx
+++ /dev/null
@@ -1,172 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAA05JREFUOE+Vk2tI
- k2EYhtMF/Qqi0haVaaP80jbnnIecNQ+bh5k5yxpump+Zh2EnSbODqalBcxrNkppJTd1Sl3kIKrTylMM0
- MyxL1LKWqQyMEjpQpnefKwLzVy88f16e++J+3vd+LBb8cxi8TP5KxhrhklXLfWm0hXafP34dGB963/zh
- /Wjr9M+pJ1T754nBQsyRLd9wkFbbOW7pE6dRBCqKv0fps5H2IB/7dfUIPdsCmaoHwqR7RtczZDXV60jV
- wjmAnZmdFgHJN25xSuNBNmQi7Xot8l5qIL7cjnDNE8SUvYD4VBsiztZN27kUKikAiyrLv5DNkmvniSsS
- eL5g49FEIyan+nHXMIR9dc9AthgRWzWA3Wc6kFJ9HduOX5he5XT6KAVYZgasdk73ts9JmnHslCJ2WIY3
- 3wz4OmPEgNEE5esxRLWPgtQPQlrQDaUpGrkmARwj8set7JMFZoCdKEttqWZhbeU28Hvk0EwWYNQ0CaW2
- A2SPCTsajYjQ9iMs24CMES+kjPHgmnMEa7l5p8yADWT2CHtXOVhRWngm6BB0qBInLjZB2vcJIQYTAmuG
- IS56hpDjBuRN+CF6iI1Nl/zgKChrMgNsYlN/uElugyVvAjv/OTzL+sG/MQx+zVvwda8gLOqD6HQ3BPKH
- COhdB+dGa1ir3OHgUzViBtAlKWNMUgVuZD2YUj2YkTqwZKVwjqkAL6UJ/uldECS1w0PagPXFMrDO7QVn
- jxoMbskfB2xVEeFWj00CPThherj37YR4MA7y1ydBVpfAV94Cr6g28KJbwU9sxtaEeniSNVjDVGT9duCQ
- EUS43QaxpQLrykVY3CwGrzsBW3oTETJwAJE31fBNNkCY2ozwC72I1vfDJ6Htk5X9EZEZQP3nYlt28VXC
- ow6EpBAWaiZod9zB6AiHy9N4cJ/GgPtyO/XA5Yi4RiXycCdsXQuyKR39b5AoGpPB0TUQHrWwleVihU4I
- u8Yw2Dz0hU1HAFy6EsFPq4T3/nY4h1ZpKbHrnCTOZpuCODFcrhQ7eNVi6TERrDWBoN/ngaPNhb/yPoJy
- W6ftvdUFf8SL/l3C2VFos/Gkb0wPXr31aCndP/4dsUfxhfAqfczgnFdYE6nBs7bnLdI80n9e/AKxCsOV
- gSO8kwAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAYZJREFUOE+lU8tK
- AlEYdhf0FNUbtKo3aNcL1APUIwTtctHOCtQSallkG3cSBUUXEBkhKTWNbmIkrmbOnJkzOpev/wyOzGiQ
- 5Bk+Bob5bv/PicUmPYm9NCZBTJIf6x9/Ym1j1/8n/JZcX6ColP6FgQBCxwM9ngfXdWE7DjbLTawX32BZ
- FoQpYBgGOOfQdd2v7if4VYDIh402Fi4qSFRaEMKCaZokQGSug+lsVCDs/vClYvZUweplDZYQMIUkk7vO
- wRgJaNqoQIdbYKILx3GxfFLCTOoOtY5K7jK6OYjOGIM2LOBRj5WjWyzuXGE7V8DUVh7Jmxdyp+gDdx26
- TyaoajSBHFwmX8AcEafj51hKXoNx0ydn9s+QSUtkcSCRykKNCJC9FHhuNKC8fmM+nsPxfdXvbtDgOJfd
- qXc/uqZqUYFgbc16C5+NJp7KVSjv7X73/toCMnWX7pEEnkt7p8HZto1urwerSzuXkzcl2fB3HrgH5IjA
- RHdBXkZawAiGv491acNCYxHopx/g8N5q3Wv/UAAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAmpJREFUOE99kl1P
- 01AYx4eJmhj9Bt557f0u/QTe7UN4ZbiRK++8MyaGEEwUEgnIS8db5F26dQy2udVuK7jRlm5gC6wr29qN
- zZa15E9bZYEAO8k/5zwn5/97nnOe0wPAd3VkeClg2+c+y5Ft2z7TNHx22/L13OvxPXxw3/fo8RPZ//zZ
- z47HBbgK04I/uJYgIukCqKwMipURSu9jKc5hlmIRJDOYDqUxF2akFSpOXPo8swdgCgE6VwBfaoE7bmFb
- biJdrGFhM4eR7wl8mQ7j63wEVHIbCWbHsfzzdQCxvBIoljTwioHfR0YHQNJ7mKOyWI6mkWR5lCo6eEn9
- cBOQK/sPlIYk6zZ2yxbyyn+V28g7KlYtqKcWGoYN4bAauAFwN5zSiYOKiYTYwq5iQqxY4NS2p+O6jZPG
- Gep/LQhy5XZA/k+NCO1o6P3MORJA7xteZrcqWbOgG+eo1I27AYygEExBxyqr4dUAB5KteVmVhoWTpmM+
- bUNrmtiT1Nsr+JWXiPmUCqnaxv6JgfezMpJiE9WGidrpGZqmjaNqq9PCa11wgyx/SCynVcQFp4qsjpdv
- WbwbP/DuXXcer22dQy5rdwNciHjcAMUU8bqfxoteGiMLGeR4ESW1CsuyIUrl7oA8JyCyGUNoi8HaBgtq
- I4rxySBi8QQ0XQe7K3YHjI59A0mSyGYzYBgGyRSNjWjUizmOw+JqqDtgYnLKA8RjW0ilUlhfX8fo2Bg+
- DQ5ieHgYM/OL3QGLPzb9ZDhCcPxenOd5DA0Noa/vDT72DxBTwZlr5htduPye7ryyRj5dWl4JEMR0YHxi
- stP3q2fc9QWwyhndJ+hSfwAAAABJRU5ErkJggg==
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentsControl.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentsControl.Designer.cs
deleted file mode 100644
index 407a0c63..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentsControl.Designer.cs
+++ /dev/null
@@ -1,156 +0,0 @@
-namespace WebsitePanel.Installer.Controls
-{
- partial class ComponentsControl
- {
- ///
- /// 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 Component 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(ComponentsControl));
- this.grpDescription = new System.Windows.Forms.GroupBox();
- this.lblDescription = new System.Windows.Forms.Label();
- this.grdComponents = new System.Windows.Forms.DataGridView();
- this.colName = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.colVersion = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.colLink = new System.Windows.Forms.DataGridViewLinkColumn();
- this.btnLoadComponents = new System.Windows.Forms.Button();
- this.grpDescription.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.grdComponents)).BeginInit();
- this.SuspendLayout();
- //
- // grpDescription
- //
- this.grpDescription.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.grpDescription.Controls.Add(this.lblDescription);
- this.grpDescription.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.grpDescription.Location = new System.Drawing.Point(14, 198);
- this.grpDescription.Name = "grpDescription";
- this.grpDescription.Size = new System.Drawing.Size(379, 117);
- this.grpDescription.TabIndex = 2;
- this.grpDescription.TabStop = false;
- this.grpDescription.Text = "Description";
- //
- // lblDescription
- //
- this.lblDescription.Dock = System.Windows.Forms.DockStyle.Fill;
- this.lblDescription.Location = new System.Drawing.Point(3, 17);
- this.lblDescription.Name = "lblDescription";
- this.lblDescription.Size = new System.Drawing.Size(373, 97);
- this.lblDescription.TabIndex = 0;
- //
- // grdComponents
- //
- this.grdComponents.AllowUserToAddRows = false;
- this.grdComponents.AllowUserToDeleteRows = false;
- this.grdComponents.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
- | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.grdComponents.BackgroundColor = System.Drawing.SystemColors.Window;
- this.grdComponents.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
- this.grdComponents.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
- this.colName,
- this.colVersion,
- this.colLink});
- this.grdComponents.Location = new System.Drawing.Point(14, 43);
- this.grdComponents.MultiSelect = false;
- this.grdComponents.Name = "grdComponents";
- this.grdComponents.ReadOnly = true;
- this.grdComponents.RowHeadersWidth = 21;
- this.grdComponents.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
- this.grdComponents.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
- this.grdComponents.Size = new System.Drawing.Size(379, 149);
- this.grdComponents.TabIndex = 1;
- this.grdComponents.RowEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.OnRowEnter);
- this.grdComponents.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.OnInstallLinkClick);
- //
- // colName
- //
- this.colName.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
- this.colName.DataPropertyName = "Component";
- this.colName.HeaderText = "Component Name";
- this.colName.Name = "colName";
- this.colName.ReadOnly = true;
- //
- // colVersion
- //
- this.colVersion.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
- this.colVersion.DataPropertyName = "Version";
- this.colVersion.HeaderText = "Version";
- this.colVersion.Name = "colVersion";
- this.colVersion.ReadOnly = true;
- this.colVersion.Width = 67;
- //
- // colLink
- //
- this.colLink.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader;
- this.colLink.DataPropertyName = "Id";
- this.colLink.HeaderText = "";
- this.colLink.Name = "colLink";
- this.colLink.ReadOnly = true;
- this.colLink.Resizable = System.Windows.Forms.DataGridViewTriState.False;
- this.colLink.Text = "Install";
- this.colLink.TrackVisitedState = false;
- this.colLink.UseColumnTextForLinkValue = true;
- this.colLink.Width = 5;
- //
- // btnLoadComponents
- //
- this.btnLoadComponents.Image = ((System.Drawing.Image)(resources.GetObject("btnLoadComponents.Image")));
- this.btnLoadComponents.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnLoadComponents.Location = new System.Drawing.Point(14, 9);
- this.btnLoadComponents.Name = "btnLoadComponents";
- this.btnLoadComponents.Size = new System.Drawing.Size(170, 28);
- this.btnLoadComponents.TabIndex = 0;
- this.btnLoadComponents.Text = " &View Available Components";
- this.btnLoadComponents.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
- this.btnLoadComponents.Click += new System.EventHandler(this.OnLoadComponentsClick);
- //
- // ComponentsControl
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.btnLoadComponents);
- this.Controls.Add(this.grpDescription);
- this.Controls.Add(this.grdComponents);
- this.Name = "ComponentsControl";
- this.Size = new System.Drawing.Size(406, 327);
- this.grpDescription.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.grdComponents)).EndInit();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.GroupBox grpDescription;
- private System.Windows.Forms.Label lblDescription;
- private System.Windows.Forms.DataGridView grdComponents;
- private System.Windows.Forms.Button btnLoadComponents;
- private System.Windows.Forms.DataGridViewTextBoxColumn colName;
- private System.Windows.Forms.DataGridViewTextBoxColumn colVersion;
- private System.Windows.Forms.DataGridViewLinkColumn colLink;
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentsControl.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentsControl.cs
deleted file mode 100644
index 2cfb8907..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentsControl.cs
+++ /dev/null
@@ -1,317 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.IO;
-using System.Threading;
-using System.Reflection;
-using System.Collections;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Drawing;
-using System.Data;
-using System.Text;
-using System.Windows.Forms;
-
-using WebsitePanel.Installer.Common;
-using WebsitePanel.Installer.Services;
-using WebsitePanel.Installer.Core;
-using WebsitePanel.Installer.Configuration;
-
-namespace WebsitePanel.Installer.Controls
-{
- ///
- /// Components control
- ///
- internal partial class ComponentsControl : ResultViewControl
- {
- delegate void SetGridDataSourceCallback(object dataSource, string dataMember);
-
- private string componentCode = null;
- private string componentVersion = null;
- private string componentSettingsXml = null;
-
- public ComponentsControl()
- {
- InitializeComponent();
- grdComponents.AutoGenerateColumns = false;
- }
-
- ///
- /// Action on click Install link
- ///
- ///
- ///
- private void OnInstallLinkClick(object sender, DataGridViewCellEventArgs e)
- {
- if (e.ColumnIndex == grdComponents.Columns.IndexOf(colLink))
- {
- DataRowView row = grdComponents.Rows[e.RowIndex].DataBoundItem as DataRowView;
- if (row != null)
- {
- StartInstaller(row);
- StartLoadingComponents();
- }
- }
- }
-
- private void StartInstaller(DataRowView row)
- {
- string applicationName = Utils.GetDbString(row[Global.Parameters.ApplicationName]);
- string componentName = Utils.GetDbString(row[Global.Parameters.ComponentName]);
- string componentCode = Utils.GetDbString(row[Global.Parameters.ComponentCode]);
- string componentDescription = Utils.GetDbString(row[Global.Parameters.ComponentDescription]);
- string component = Utils.GetDbString(row[Global.Parameters.Component]);
- string version = Utils.GetDbString(row[Global.Parameters.Version]);
- string fileName = row[Global.Parameters.FullFilePath].ToString();
- string installerPath = Utils.GetDbString(row[Global.Parameters.InstallerPath]);
- string installerType = Utils.GetDbString(row[Global.Parameters.InstallerType]);
-
- if (CheckForInstalledComponent(componentCode))
- {
- AppContext.AppForm.ShowWarning(Global.Messages.ComponentIsAlreadyInstalled);
- return;
- }
- try
- {
- // download installer
- Loader form = new Loader(this.AppContext, fileName);
- DialogResult result = form.ShowDialog(this);
-
- if (result == DialogResult.OK)
- {
- string tmpFolder = FileUtils.GetTempDirectory();
- string path = Path.Combine(tmpFolder, installerPath);
- Update();
- string method = "Install";
- Log.WriteStart(string.Format("Running installer {0}.{1} from {2}", installerType, method, path));
-
- //prepare installer args
- Hashtable args = new Hashtable();
-
- args[Global.Parameters.ComponentName] = componentName;
- args[Global.Parameters.ApplicationName] = applicationName;
- args[Global.Parameters.ComponentCode] = componentCode;
- args[Global.Parameters.ComponentDescription] = componentDescription;
- args[Global.Parameters.Version] = version;
- args[Global.Parameters.InstallerFolder] = tmpFolder;
- args[Global.Parameters.InstallerPath] = installerPath;
- args[Global.Parameters.InstallerType] = installerType;
- args[Global.Parameters.Installer] = Path.GetFileName(fileName);
- args[Global.Parameters.ShellVersion] = AssemblyLoader.GetShellVersion();
- args[Global.Parameters.BaseDirectory] = FileUtils.GetCurrentDirectory();
- args[Global.Parameters.ShellMode] = Global.VisualInstallerShell;
- args[Global.Parameters.IISVersion] = Global.IISVersion;
- args[Global.Parameters.SetupXml] = this.componentSettingsXml;
- args[Global.Parameters.ParentForm] = FindForm();
-
- //run installer
- DialogResult res = (DialogResult)AssemblyLoader.Execute(path, installerType, method, new object[] { args });
- Log.WriteInfo(string.Format("Installer returned {0}", res));
- Log.WriteEnd("Installer finished");
- Update();
- if (res == DialogResult.OK)
- {
- AppContext.AppForm.ReloadApplication();
- }
- FileUtils.DeleteTempDirectory();
- }
- }
- catch (Exception ex)
- {
- Log.WriteError("Installer error", ex);
- AppContext.AppForm.ShowError(ex);
- }
- finally
- {
- this.componentSettingsXml = null;
- this.componentCode = null;
- }
-
- }
-
- private bool CheckForInstalledComponent(string componentCode)
- {
- bool ret = false;
- List installedComponents = new List();
- foreach (ComponentConfigElement componentConfig in AppConfigManager.AppConfiguration.Components)
- {
- string code = componentConfig.Settings["ComponentCode"].Value;
- installedComponents.Add(code);
- if (code == componentCode)
- {
- ret = true;
- break;
- }
- }
- if (componentCode == "standalone")
- {
- if (installedComponents.Contains("server") ||
- installedComponents.Contains("enterprise server") ||
- installedComponents.Contains("portal"))
- ret = true;
- }
- return ret;
- }
-
- ///
- /// Displays component description when entering grid row
- ///
- ///
- ///
- private void OnRowEnter(object sender, DataGridViewCellEventArgs e)
- {
- DataRowView row = grdComponents.Rows[e.RowIndex].DataBoundItem as DataRowView;
- if (row != null)
- {
- lblDescription.Text = Utils.GetDbString(row["ComponentDescription"]);
- }
- }
-
- ///
- /// Start new thread to load components
- ///
- ///
- ///
- private void OnLoadComponentsClick(object sender, EventArgs e)
- {
- StartLoadingComponents();
- }
-
- private void StartLoadingComponents()
- {
- //load list of available components in the separate thread
- AppContext.AppForm.StartAsyncProgress("Connecting...", true);
- ThreadStart threadDelegate = new ThreadStart(LoadComponents);
- Thread newThread = new Thread(threadDelegate);
- newThread.Start();
- }
-
- ///
- /// Loads list of available components via web service
- ///
- private void LoadComponents()
- {
- try
- {
- Log.WriteStart("Loading list of available components");
- lblDescription.Text = string.Empty;
- //load components via web service
- var webService = ServiceProviderProxy.GetInstallerWebService();
- DataSet dsComponents = webService.GetAvailableComponents();
- //remove already installed components
- foreach (DataRow row in dsComponents.Tables[0].Rows)
- {
- string componentCode = Utils.GetDbString(row["ComponentCode"]);
- if (CheckForInstalledComponent(componentCode))
- {
- row.Delete();
- }
- }
- dsComponents.AcceptChanges();
- Log.WriteEnd("Available components loaded");
- SetGridDataSource(dsComponents, dsComponents.Tables[0].TableName);
- AppContext.AppForm.FinishProgress();
- }
- catch (Exception ex)
- {
- Log.WriteError("Web service error", ex);
- AppContext.AppForm.FinishProgress();
- AppContext.AppForm.ShowServerError();
- }
- }
-
- ///
- /// Thread safe grid binding.
- ///
- /// Data source
- /// Data member
- private void SetGridDataSource(object dataSource, string dataMember)
- {
- // InvokeRequired required compares the thread ID of the
- // calling thread to the thread ID of the creating thread.
- // If these threads are different, it returns true.
- if (this.grdComponents.InvokeRequired)
- {
- SetGridDataSourceCallback callBack = new SetGridDataSourceCallback(SetGridDataSource);
- this.grdComponents.Invoke(callBack, new object[] { dataSource, dataMember });
- }
- else
- {
- this.grdComponents.DataSource = dataSource;
- this.grdComponents.DataMember = dataMember;
- }
- }
-
- ///
- /// Installs component during unattended setup
- ///
- ///
- internal void InstallComponent(string componentCode, string componentVersion, string settingsXml)
- {
- //load list of available components in the separate thread
- this.componentCode = componentCode;
- this.componentVersion = componentVersion;
- this.componentSettingsXml = settingsXml;
- AppContext.AppForm.StartAsyncProgress("Connecting...", true);
- ThreadStart threadDelegate = new ThreadStart(Install);
- Thread newThread = new Thread(threadDelegate);
- newThread.Start();
- }
-
- ///
- /// Loads list of available components via web service and install specified component
- /// during unattended setup
- ///
- private void Install()
- {
- LoadComponents();
- foreach (DataGridViewRow gridRow in grdComponents.Rows)
- {
- DataRowView row = gridRow.DataBoundItem as DataRowView;
- if (row != null)
- {
- string code = Utils.GetDbString(row["ComponentCode"]);
- string version = Utils.GetDbString(row["Version"]);
- if (code == componentCode)
- {
- //check component version if specified
- if (!string.IsNullOrEmpty(componentVersion))
- {
- if (version != componentVersion)
- continue;
- }
- StartInstaller(row);
- AppContext.AppForm.ProceedUnattendedSetup();
- break;
- }
- }
- }
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentsControl.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentsControl.resx
deleted file mode 100644
index 207ce9e2..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ComponentsControl.resx
+++ /dev/null
@@ -1,140 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
- True
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAj9JREFUOE+lk11I
- U2EYx9vCiBS6GKyP+UWY0yYlZkYRM0Oi3IUEUlAG3QRFN1ERFTnNhWs2q7WtqTQLwhhBSp8YRQxcEslg
- 82KHzWidrbXNWTowc2du/953NFN4u4gOPJwPzu/3/s/7PEcEYNl/HVSQreTMaKHD9x5ddiOaHh1FXa8K
- ylv7cHlQAzfPTQvxkSN6u4W8/odZgBORfsng2Es0Pm+G2q+FNmDEFU6PVq4TJz6cQ+2dBrj8HpTf3MYW
- cKHxKQpf9d+AauAQpK0bsFazEcfspzKiNu56RlKsU7AFF560odlxEtsNe9A1ZMJYwAtfmEd+uzyTKlvr
- NCVswQHrYSh79mPA+QLJ+bRCmE/nRmPf4Q56l0gkLUVsQU1PHc4/VlO4kpRISKZFNudTFGkrUKAtA12Z
- wqsvytiCLaadGP3kRmTiWw7d5VA4lh/8Gs35Ep5YGYrEVpB7MR+MrPF+5NkCsiJ+115yXp4Q0ruCoajo
- ZyIlnp1LiX6QmplN5aqHdWxBlbUWmy07UHa7eqq4syIu65Cje+QB5oSUhCYikvru4XsoN/2ljVutSugC
- 5kzLSvSVcPIe+jkgCQpoChfvQ8PDJqxvKWUn2GSuWRBQidxQDednD5nAcfQ6+jNTSVt5/P5ptoDERum1
- qiU9p1AWpLBMLcfdtza2oLBDgWeu15CRwVkMZQeIwtpXRsSmk7uZ/4LlTR/IRuEd58QlWztU5oPIOytF
- 3hkp6g2NMA31YTKeXBWaFMRMweKH/3L9C8malnY23w2wAAAAAElFTkSuQmCC
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/LineBox.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/LineBox.Designer.cs
deleted file mode 100644
index db6fe2aa..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/LineBox.Designer.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-namespace WebsitePanel.Installer
-{
- partial class LineBox
- {
- ///
- /// 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 Component Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- components = new System.ComponentModel.Container();
- }
-
- #endregion
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/LineBox.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/LineBox.cs
deleted file mode 100644
index d9b581b4..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/LineBox.cs
+++ /dev/null
@@ -1,95 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System.ComponentModel;
-using System.Drawing;
-using System.Windows.Forms;
-
-namespace WebsitePanel.Installer
-{
- ///
- /// 3D line box.
- ///
- internal partial class LineBox : Control
- {
- ///
- /// Initializes a new instance of the LineBox class.
- ///
- public LineBox() : base()
- {
- SetStyle(ControlStyles.UserPaint, true);
- SetStyle(ControlStyles.FixedHeight, true);
- SetStyle(ControlStyles.DoubleBuffer, true);
- SetStyle(ControlStyles.ResizeRedraw, true);
- SetStyle(ControlStyles.StandardClick, false);
- SetStyle(ControlStyles.Selectable, false);
- this.TabStop = false;
- }
-
- ///
- /// Raises the Paint event.
- ///
- /// A PaintEventArgs that contains the event data.
- protected override void OnPaint(PaintEventArgs e)
- {
- Graphics graphics = e.Graphics;
- Rectangle rectangle = this.ClientRectangle;
- Pen lightPen = new Pen(ControlPaint.Light(this.BackColor, 1));
- Pen darkPen = new Pen(ControlPaint.Dark(this.BackColor, 0));
- graphics.DrawLine(darkPen, rectangle.X, rectangle.Y, rectangle.X+rectangle.Width, rectangle.Y);
- graphics.DrawLine(lightPen, rectangle.X, rectangle.Y+1, rectangle.X+rectangle.Width, rectangle.Y+1);
- base.OnPaint(e);
- }
-
- ///
- /// Gets the default size of the control.
- ///
- protected override Size DefaultSize
- {
- get
- {
- return new Size(10, 2);
- }
- }
-
-
- ///
- /// Performs the work of setting the specified bounds of this control.
- ///
- /// The new Left property value of the control.
- /// The new Right property value of the control.
- /// The new Width property value of the control.
- /// The new Height property value of the control.
- /// A bitwise combination of the BoundsSpecified values.
- [EditorBrowsable(EditorBrowsableState.Advanced)]
- protected override void SetBoundsCore(int x, int y, int width, int height, BoundsSpecified specified)
- {
- base.SetBoundsCore(x, y, width, 2, specified);
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/Loader.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/Loader.Designer.cs
deleted file mode 100644
index a0f17fa9..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/Loader.Designer.cs
+++ /dev/null
@@ -1,112 +0,0 @@
-namespace WebsitePanel.Installer.Controls
-{
- partial class Loader
- {
- ///
- /// 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()
- {
- this.grpFiles = new System.Windows.Forms.GroupBox();
- this.lblValue = new System.Windows.Forms.Label();
- this.progressBar = new System.Windows.Forms.ProgressBar();
- this.lblProcess = new System.Windows.Forms.Label();
- this.btnCancel = new System.Windows.Forms.Button();
- this.grpFiles.SuspendLayout();
- this.SuspendLayout();
- //
- // grpFiles
- //
- this.grpFiles.Controls.Add(this.lblValue);
- this.grpFiles.Controls.Add(this.progressBar);
- this.grpFiles.Controls.Add(this.lblProcess);
- this.grpFiles.Location = new System.Drawing.Point(12, 9);
- this.grpFiles.Name = "grpFiles";
- this.grpFiles.Size = new System.Drawing.Size(448, 88);
- this.grpFiles.TabIndex = 4;
- this.grpFiles.TabStop = false;
- //
- // lblValue
- //
- this.lblValue.Location = new System.Drawing.Point(294, 24);
- this.lblValue.Name = "lblValue";
- this.lblValue.Size = new System.Drawing.Size(138, 16);
- this.lblValue.TabIndex = 2;
- this.lblValue.TextAlign = System.Drawing.ContentAlignment.TopRight;
- //
- // progressBar
- //
- this.progressBar.Location = new System.Drawing.Point(16, 40);
- this.progressBar.Name = "progressBar";
- this.progressBar.Size = new System.Drawing.Size(416, 23);
- this.progressBar.Step = 1;
- this.progressBar.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
- this.progressBar.TabIndex = 1;
- //
- // lblProcess
- //
- this.lblProcess.Location = new System.Drawing.Point(16, 24);
- this.lblProcess.Name = "lblProcess";
- this.lblProcess.Size = new System.Drawing.Size(272, 16);
- this.lblProcess.TabIndex = 0;
- //
- // btnCancel
- //
- this.btnCancel.Location = new System.Drawing.Point(385, 112);
- this.btnCancel.Name = "btnCancel";
- this.btnCancel.Size = new System.Drawing.Size(75, 23);
- this.btnCancel.TabIndex = 5;
- this.btnCancel.Text = "&Cancel";
- this.btnCancel.UseVisualStyleBackColor = true;
- this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
- //
- // Loader
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(473, 148);
- this.Controls.Add(this.btnCancel);
- this.Controls.Add(this.grpFiles);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "Loader";
- this.ShowInTaskbar = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- this.Text = "WebsitePanel Installer";
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.OnLoaderFormClosing);
- this.grpFiles.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.GroupBox grpFiles;
- private System.Windows.Forms.ProgressBar progressBar;
- private System.Windows.Forms.Label lblProcess;
- private System.Windows.Forms.Button btnCancel;
- private System.Windows.Forms.Label lblValue;
- }
-}
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/Loader.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/Loader.cs
deleted file mode 100644
index 81eeab02..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/Loader.cs
+++ /dev/null
@@ -1,156 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.IO;
-using System.Threading;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Text;
-using System.Windows.Forms;
-using Ionic.Zip;
-
-using WebsitePanel.Installer.Services;
-using WebsitePanel.Installer.Common;
-
-namespace WebsitePanel.Installer.Controls
-{
- public delegate void OperationProgressDelegate(int percentage);
-
- ///
- /// Loader form.
- ///
- internal partial class Loader : Form
- {
- private AppContext appContext;
- private Core.Loader appLoader;
-
- public Loader()
- {
- InitializeComponent();
- DialogResult = DialogResult.Cancel;
- }
-
- public Loader(AppContext context, string remoteFile)
- : this()
- {
- this.appContext = context;
- //
- appLoader = new Core.Loader(remoteFile);
- //
- Start();
- }
-
- public Loader(AppContext context, string localFile, string componentCode, string version)
- : this()
- {
- this.appContext = context;
- //
- appLoader = new Core.Loader(localFile, componentCode, version);
- //
- Start();
- }
-
- private void Start()
- {
- //
- appLoader.OperationFailed += new EventHandler>(appLoader_OperationFailed);
- appLoader.ProgressChanged += new EventHandler>(appLoader_ProgressChanged);
- appLoader.StatusChanged += new EventHandler>(appLoader_StatusChanged);
- appLoader.OperationCompleted += new EventHandler(appLoader_OperationCompleted);
- //
- appLoader.LoadAppDistributive();
- }
-
- void appLoader_OperationCompleted(object sender, EventArgs e)
- {
- DialogResult = DialogResult.OK;
- Close();
- }
-
- void appLoader_StatusChanged(object sender, Core.LoaderEventArgs e)
- {
- lblProcess.Text = e.StatusMessage;
- lblValue.Text = e.EventData;
- // Adjust Cancel button availability for an operation being performed
- if (btnCancel.Enabled != e.Cancellable)
- {
- btnCancel.Enabled = e.Cancellable;
- }
- // This check allows to avoid extra form redrawing operations
- if (ControlBox != e.Cancellable)
- {
- ControlBox = e.Cancellable;
- }
- }
-
- void appLoader_ProgressChanged(object sender, Core.LoaderEventArgs e)
- {
- progressBar.Value = e.EventData;
- // Adjust Cancel button availability for an operation being performed
- if (btnCancel.Enabled != e.Cancellable)
- {
- btnCancel.Enabled = e.Cancellable;
- }
- // This check allows to avoid extra form redrawing operations
- if (ControlBox != e.Cancellable)
- {
- ControlBox = e.Cancellable;
- }
- }
-
- void appLoader_OperationFailed(object sender, Core.LoaderEventArgs e)
- {
- appContext.AppForm.ShowError(e.EventData);
- //
- DialogResult = DialogResult.Abort;
- Close();
- }
-
- private void btnCancel_Click(object sender, EventArgs e)
- {
- Log.WriteInfo("Execution was canceled by user");
- Close();
- }
-
- private void OnLoaderFormClosing(object sender, FormClosingEventArgs e)
- {
- if (this.DialogResult == DialogResult.Cancel)
- {
- appLoader.AbortOperation();
- }
- // Remove event handlers
- appLoader.OperationFailed -= new EventHandler>(appLoader_OperationFailed);
- appLoader.ProgressChanged -= new EventHandler>(appLoader_ProgressChanged);
- appLoader.StatusChanged -= new EventHandler>(appLoader_StatusChanged);
- appLoader.OperationCompleted -= new EventHandler(appLoader_OperationCompleted);
- }
- }
-}
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/Loader.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/Loader.resx
deleted file mode 100644
index ff31a6db..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/Loader.resx
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ProgressIcon.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ProgressIcon.cs
deleted file mode 100644
index 99bd9de9..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ProgressIcon.cs
+++ /dev/null
@@ -1,248 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Drawing;
-using System.Data;
-using System.Windows.Forms;
-using System.Threading;
-
-namespace WebsitePanel.Installer.Controls
-{
- ///
- /// Animated Icon.
- ///
- [ToolboxItem(true)]
- public class ProgressIcon : System.Windows.Forms.UserControl
- {
- private Thread thread = null;
- private int currentFrame = 0;
- private int delayInterval = 50;
- private int pause = 0;
- private int loopCount = 0;
- private int currentLoop = 0;
- private int firstFrame = 0;
- private int lastFrame = 13;
- private ImageList images;
- private IContainer components;
-
- /// Initializes a new instance of the AnimatedIcon class.
- ///
- public ProgressIcon()
- {
- CheckForIllegalCrossThreadCalls = false;
- InitializeComponent();
-
- this.SetStyle(ControlStyles.UserPaint, true);
- this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
- this.SetStyle(ControlStyles.DoubleBuffer, true);
- this.SetStyle(ControlStyles.ResizeRedraw, true);
- }
-
- #region Dispose
- /// Clean up any resources being used.
- /// to release both managed
- /// and unmanaged resources; to release
- /// only unmanaged resources.
- protected override void Dispose( bool disposing )
- {
- if( disposing )
- {
- if( components != null )
- components.Dispose();
-
- if( thread != null )
- thread.Abort();
- }
- base.Dispose( disposing );
- }
- #endregion
-
- #region Component 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.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ProgressIcon));
- this.images = new System.Windows.Forms.ImageList(this.components);
- this.SuspendLayout();
- //
- // images
- //
- this.images.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("images.ImageStream")));
- this.images.TransparentColor = System.Drawing.Color.Transparent;
- this.images.Images.SetKeyName(0, "ProgressImage00.bmp");
- this.images.Images.SetKeyName(1, "ProgressImage01.bmp");
- this.images.Images.SetKeyName(2, "ProgressImage02.bmp");
- this.images.Images.SetKeyName(3, "ProgressImage03.bmp");
- this.images.Images.SetKeyName(4, "ProgressImage04.bmp");
- this.images.Images.SetKeyName(5, "ProgressImage05.bmp");
- this.images.Images.SetKeyName(6, "ProgressImage06.bmp");
- this.images.Images.SetKeyName(7, "ProgressImage07.bmp");
- this.images.Images.SetKeyName(8, "ProgressImage08.bmp");
- this.images.Images.SetKeyName(9, "ProgressImage09.bmp");
- this.images.Images.SetKeyName(10, "ProgressImage10.bmp");
- this.images.Images.SetKeyName(11, "ProgressImage11.bmp");
- this.images.Images.SetKeyName(12, "ProgressImage12.bmp");
- //
- // ProgressIcon
- //
- this.Name = "ProgressIcon";
- this.Size = new System.Drawing.Size(30, 30);
- this.ResumeLayout(false);
-
- }
- #endregion
-
- /// Starts animation from the beginning.
- ///
- public void StartAnimation()
- {
- StopAnimation();
- CheckRange(); // Check the first and the last frames
-
- thread = new Thread( new ThreadStart( threadFunc ) );
- thread.IsBackground = true;
- thread.Start();
- }
-
- /// Stops animation not changing current frame number.
- ///
- public void StopAnimation()
- {
- if( thread != null )
- {
- thread.Abort();
- thread = null;
- }
- currentLoop = 0;
- }
-
- /// Displays the specified frame.
- /// An index of the image stored in the .
- public void ShowFrame2(int frame)
- {
- StopAnimation();
-
- if( frame >= 0 && frame < images.Images.Count )
- currentFrame = frame;
- else
- currentFrame = 0;
-
- Refresh();
- }
-
- /// Occurs when the control is redrawn.
- /// A that contains
- /// the event data.
- /// The OnPaint method draws current image from
- /// the if exists.
- protected override void OnPaint(PaintEventArgs e)
- {
- // Draw a crossed rectangle if there is no frame to display
-
- if( images == null ||
- currentFrame < 0 ||
- currentFrame >= images.Images.Count )
- {
- if( this.Size.Width == 0 || this.Size.Height == 0 )
- return;
-
- Pen pen = new Pen( SystemColors.ControlText );
- e.Graphics.DrawRectangle( pen, 0, 0, this.Size.Width-1, this.Size.Height-1 );
- e.Graphics.DrawLine( pen, 0, 0, this.Size.Width, this.Size.Height );
- e.Graphics.DrawLine( pen, 0, this.Size.Height-1, this.Size.Width-1, 0 );
- pen.Dispose();
- }
- else
- {
- // Draw the current frame
-
- e.Graphics.DrawImage( images.Images[currentFrame], 0, 0, this.Size.Width, this.Size.Height );
- }
- }
-
- /// The method to be invoked when the thread begins executing.
- ///
- private void threadFunc()
- {
- bool wasPause = false;
- currentFrame = firstFrame;
-
- while( thread != null && thread.IsAlive )
- {
- Refresh(); // Redraw the current frame
- wasPause = false;
-
- if( images != null )
- {
- currentFrame++;
- if( currentFrame > lastFrame ||
- currentFrame >= images.Images.Count )
- {
- if( pause > 0 ) // Sleep after every loop
- {
- Thread.Sleep( pause );
- wasPause = true;
- }
-
- currentFrame = firstFrame;
- if( loopCount != 0 ) // 0 is infinitive loop
- {
- currentLoop++;
- }
- }
-
- if( loopCount != 0 && currentLoop >= loopCount )
- {
- StopAnimation(); // The loop is completed
- }
- }
- if( !wasPause ) // That prevents summation (pause + delayInterval)
- Thread.Sleep( delayInterval );
- }
- }
-
- /// Check if the last frame is no less than the first one.
- /// Otherwise, swap them.
- private void CheckRange()
- {
- if( lastFrame < firstFrame )
- {
- int tmp = firstFrame;
- firstFrame = lastFrame;
- lastFrame = tmp;
- }
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ProgressIcon.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ProgressIcon.resx
deleted file mode 100644
index bd3b1f7d..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ProgressIcon.resx
+++ /dev/null
@@ -1,855 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
- 17, 17
-
-
-
- AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
- LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
- ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADc
- qQAAAk1TRnQBSQFMAgEBDQEAAQ4BAAEEAQABHgEAAR4BAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAF4
- AwABeAMAAQEBAAEgBgAB4RIAIP8D/gH/A/4B/wP5Af8D8QH/A+kB/wPiAf8D7AH/A/EB/wPiAf8D4gH/
- A+wB/wP5Af8D/gH/A/4h//8AaQAY/wP+Af8D/gH/AfUB9AH1Af8D4gH/A9kB/wPZAf8D2QH/A9YB/wPp
- Af8D7AH/A9YB/wPZAf8D2QH/A9kB/wPiAf8D8QH/A/4B/wP+Gf//AGkAFP8D/gH/AfUB9AH1Af8B9QH0
- AfUB/wPsAf8D1gH/A9kB/wPZAf8D2QH/A9kB/wPpAf8D7AH/A9kB/wPZAf8D2QH/A9kB/wPWAf8D4gH/
- AfUB9AH1Af8B9QH0AfUB/wP+Ff//AGkAEP8D/gH/A/EB/wPZAf8D3AH/A/kB/wPiAf8D2QH/A9kB/wPZ
- Af8D2QH/A+kB/wPsAf8D2QH/A9kB/wPZAf8D2QH/A9wB/wH1AfQB9QH/A+IB/wPZAf8D7AH/A/4R//8A
- aQAM/wP+Af8D7AH/A9kB/wPZAf8D2QH/A+wB/wPxAf8D2QH/A9kB/wPZAf8D1gH/A+kB/wPsAf8D1gH/
- A9kB/wPZAf8D2QH/A+wB/wPxAf8D2QH/A9kB/wPZAf8D6QH/A/4N//8AaQAI/wP+Af8D8QH/A9kB/wPZ
- Af8D2QH/A9kB/wPZAf8B9QH0AfUB/wPiAf8D1gH/A9wB/wPiAf8D8QH/AfUB9AH1Af8D4gH/A9wB/wPZ
- Af8D3AH/A/kB/wPcAf8D2QH/A9kB/wPZAf8D2QH/A+wB/wP+Cf//AGkABP8D/gH/A/kB/wPZAf8D2QH/
- A9kB/wPZAf8D2QH/A9kB/wPiAf8D+QH/A/EB/wP+Af8D/gH/A/4B/wP+Af8D/gH/A/4B/wPxAf8B9QH0
- AfUB/wPpAf8D1gH/A9kB/wPZAf8D2QH/A9kB/wPZAf8B9QH0AfUB/wP+Bf//AGkABP8D/gH/A/kB/wPp
- Af8D2QH/A9kB/wPZAf8D2QH/A9kB/wPsAf8D/gH/A/4Z/wP+Af8D/gH/A+wB/wPZAf8D2QH/A9kB/wPZ
- Af8D2QH/A+IB/wP5Af8D/gX//wBpAAP+Af8D8QH/A+IB/wH1AfQB9QH/AfUB9AH1Af8D4gH/A9kB/wPZ
- Af8D8QH/A/4p/wP+Af8D8QH/A9kB/wPZAf8D4gH/AfUB9AH1Af8B9QH0AfUB/wPiAf8D8QH/A/4B//8A
- aQAD/gH/A+IB/wPWAf8D2QH/A+IB/wH1AfQB9QH/A/EB/wPsAf8D/jH/A/4B/wPsAf8D8QH/A/kB/wPp
- Af8D2QH/A9YB/wPiAf8D/gH//wBpAAP5Af8D3AH/A9kB/wPZAf8D2QH/A9kB/wPsAf8D/jn/A/4B/wPx
- Af8D3AH/A9kB/wPZAf8D2QH/A9kB/wP5Af//AGkAA/EB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A+wB/wP+
- Of8D/gH/A+wB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A+wB//8AaQAD6QH/A9kB/wPZAf8D2QH/A9kB/wPZ
- Af8D+UH/A/kB/wPcAf8D2QH/A9kB/wPZAf8D2QH/A+IB//8AaQAD4gH/A9kB/wPZAf8D2QH/A9kB/wPi
- Af8D/kH/A/4B/wPiAf8D2QH/A9kB/wPZAf8D2QH/A+IB//8AaQAB9QH0AfUB/wPxAf8D8QH/A/EB/wPx
- Af8B9QH0AfUB/wP+Qf8D/gH/AfUB9AH1Af8D8QH/A/EB/wPxAf8D8QH/AfUB9AH1Af//AGkAA+kB/wPi
- Af8D4gH/A+IB/wPiAf8D7AH/A/5B/wP+Af8D7AH/A+IB/wPiAf8D4gH/A+IB/wPpAf//AGkAA+IB/wPW
- Af8D2QH/A9kB/wPWAf8D3AH/A/5B/wP+Af8D4gH/A9YB/wPZAf8D2QH/A9YB/wPiAf//AGkAA+kB/wPZ
- Af8D2QH/A9kB/wPZAf8D2QH/A/lB/wP5Af8D3AH/A9kB/wPZAf8D2QH/A9kB/wPiAf//AGkAA/EB/wPZ
- Af8D2QH/A9kB/wPZAf8D1gH/A+wB/wP+Of8D/gH/A+wB/wPWAf8D2QH/A9kB/wPZAf8D2QH/A+wB//8A
- aQAD+QH/A9wB/wPZAf8D2QH/A9kB/wHoAeQB6AH/AfUB9AH1Af8B+QH8Afk5/wP+Af8D+QH/A+kB/wPZ
- Af8D2QH/A9kB/wPZAf8D+QH//wBpAAP+Af8D4gH/A9YB/wHhAd4B4QH/AfgB8gH3Af8B6gH4AesB/wF8
- Ad4BgQH/AYUB2gGKAf8D/jH/A/4B/wPpAf8D4gH/AfUB9AH1Af8B9QH0AfUB/wPiAf8D1gH/A+IB/wP+
- Af//AGkAA/4B/wH1AfQB9QH/AfAB6wHvAf8B8AH5AfEB/wG8AfsBwQH/AYkB+gGRAf8BagHoAXQB/wE1
- AcUBPgH/AZsB4gGgAf8D/in/A/4B/wPxAf8D2QH/A9kB/wPZAf8D6QH/A/kB/wPxAf8B9QH0AfUB/wP+
- Af//AGkABP8D/gH/AeAB+AHiAf8BkgH7AZkB/wGDAfkBjAH/AYMB+QGMAf8BiQH6AZEB/wFqAegBdAH/
- ATUBxQE+Af8BjwHdAZQB/wP+Af8D/hn/A/4B/wP+Af8D7AH/A9kB/wPZAf8D2QH/A9kB/wPZAf8D2QH/
- A/EB/wP+Bf//AGkABP8D/gH/AeoB+AHrAf8BkgH7AZkB/wGDAfkBjAH/AYkB+gGRAf8BiQH6AZEB/wGJ
- AfoBkQH/AWoB6AF0Af8BoQHqAaYB/wGqAdIBqwH/AYIBvQGDAf8B2wHsAdsB/wH5AfwB+QH/A/4B/wP+
- Af8D/gH/A/kB/wPsAf8D7AH/A/EB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A9kB/wP5Af8D/gX//wBpAAj/
- A/4B/wHYAfoB2wH/AYkB+gGRAf8BiQH6AZEB/wGJAfoBkQH/AYMB+QGMAf8BmgH5AaEB/wHmAfsB6AH/
- AUIBogFEAf8BDwGGAREB/wEhAYwBIwH/ATQBlQE2Af8BkgHJAZMB/wH4AfIB+AH/A9wB/wPZAf8D2QH/
- A9kB/wP5Af8D4gH/A9kB/wPZAf8D2QH/A9kB/wPxAf8D/gn//wBpAAz/A/4B/wHRAfoB1AH/AYkB+gGR
- Af8BgwH5AYwB/wGDAfkBjAH/AdgB+gHbAf8BmQHLAZkB/wEyAaMBNAH/ATsBqQE9Af8BMgGjATQB/wEc
- AZABHgH/AXwBwgF9Af8B9AHwAfQB/wPWAf8D2QH/A9kB/wPZAf8D4gH/AfUB9AH1Af8D2QH/A9kB/wPZ
- Af8D7AH/A/4N//8AaQAQ/wP+Af8B2AH6AdsB/wGSAfsBmQH/AaoB/AGxAf8B0gHqAdIB/wFDAasBRQH/
- ATsBqQE9Af8BOwGpAT0B/wE7AakBPQH/ATIBowE0Af8BiQHIAYoB/wH0AfAB9AH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D8QH/A+kB/wPZAf8D8QH/A/4R//8AaQAU/wP+Af8B6gH4AesB/wHqAfgB6wH/AXwBwgF9
- Af8BKQGgASwB/wE7AakBPQH/ATsBqQE9Af8BOwGpAT0B/wEuAaIBMgH/AYkByAGKAf8B9AHwAfQB/wPZ
- Af8D2QH/A9kB/wPZAf8D1gH/A+IB/wP5Af8D+QH/A/4V//8AaQAY/wP+Af8D/gH/Ac4B6wHQAf8BhAHI
- AYYB/wFLAbABTQH/ATgBqAE6Af8BLgGiATIB/wEnAaABKQH/AYQByAGGAf8B8QHsAfEB/wPWAf8D1gH/
- A9kB/wPcAf8D4gH/AfUB9AH1Af8D/gH/A/4Z//8AaQAg/wP+Af8D/gH/AeoB+AHrAf8BuQHgAboB/wGS
- AdABkwH/AW0BwAFvAf8BpAHYAaUB/wH0AfAB9AH/A+IB/wPpAf8D8QH/A/kB/wP+Af8D/iH//wBpACD/
- A/4B/wP+Af8B2wHsAdsB/wGgAdEBoQH/AXIBvAF0Af8BSQGlAUwB/wGZAcsBmQH/AaoB0gGrAf8BQgGi
- AUQB/wFqAbQBawH/AZkBywGZAf8B2wHsAdsB/wP+Af8D/kH/A/4B/wP+Af8B3AHwAd0B/wGgAdEBoQH/
- AXIBvAF0Af8BSQGlAUwB/wGZAcsBmQH/AaoB0gGrAf8BQgGiAUQB/wFqAbQBawH/AZkBywGZAf8B2wHs
- AdsB/wP+Af8D/kH/A/4B/wP+Af8B4AH4AeIB/wG0AewBuAH/AZAB5gGWAf8BbAHbAXQB/wGkAesBqQH/
- AfQB8AH0Af8D4gH/A+IB/wPsAf8D+QH/A/4B/wP+Qf8D/gH/A/4B/wP5Af8D8QH/A+kB/wPiAf8D7AH/
- A/EB/wPiAf8D4gH/A+wB/wP5Af8D/gH/A/45/wP+Af8D/gH/Ab8B4AHAAf8BYQGxAWIB/wEqAZoBLQH/
- ARwBkAEeAf8BFwGMARkB/wEQAYgBEQH/AYUBwgGGAf8BkgHJAZMB/wEKAYMBDAH/ARMBiAEVAf8BEwGI
- ARUB/wEiAZIBJAH/AVkBrAFbAf8BswHbAbQB/wP+Af8D/jH/A/4B/wP+Af8BvwHgAcAB/wFhAbEBYgH/
- ASoBmgEtAf8BHAGQAR4B/wEXAYwBGQH/ARABiAERAf8BhQHCAYYB/wGSAckBkwH/AQoBgwEMAf8BEwGI
- ARUB/wETAYgBFQH/ASIBkgEkAf8BWQGsAVsB/wGzAdsBtAH/A/4B/wP+Mf8D/gH/A/4B/wHNAfMB0AH/
- AYMB4QGJAf8BWgHdAWMB/wFLAdkBVAH/AUkB0gFSAf8BQgHQAUsB/wGVAeoBmwH/AfEB7AHxAf8D1gH/
- A9kB/wPZAf8D2QH/A+IB/wPxAf8D/gH/A/4x/wP+Af8D/gH/AfUB9AH1Af8D4gH/A9kB/wPZAf8D2QH/
- A9YB/wPpAf8D7AH/A9YB/wPZAf8D2QH/A9kB/wPiAf8D8QH/A/4B/wP+Lf8D/gH/AckB4gHJAf8BuQHg
- AboB/wGSAckBkwH/ARMBiAEVAf8BIgGSASQB/wEiAZIBJAH/ASIBkgEkAf8BFwGMARkB/wGJAcIBigH/
- AZkBywGZAf8BEwGIARUB/wEiAZIBJAH/ASIBkgEkAf8BGgGMARwB/wEKAYMBDAH/AWoBtAFrAf8ByQHi
- AckB/wHBAeIBwgH/A/4p/wP+Af8ByQHiAckB/wG/AeABwAH/AZIByQGTAf8BEwGIARUB/wEiAZIBJAH/
- ASIBkgEkAf8BIgGSASQB/wEXAYwBGQH/AYkBwgGKAf8BmQHLAZkB/wETAYgBFQH/ASIBkgEkAf8BIgGS
- ASQB/wEaAYwBHAH/AQoBgwEMAf8BagG0AWsB/wHWAfQB2AH/AdAB8wHTAf8D/in/A/4B/wHJAeIByQH/
- AbgB3QG5Af8BrQHyAbIB/wFLAdkBVAH/AVUB2wFeAf8BVQHbAV4B/wFVAdsBXgH/AUkB0gFSAf8BmAHq
- AZ0B/wHxAewB8QH/A9kB/wPZAf8D2QH/A9kB/wPWAf8D4gH/AfUB9AH1Af8B9QH0AfUB/wP+Kf8D/gH/
- AfUB9AH1Af8B9QH0AfUB/wPsAf8D1gH/A9kB/wPZAf8D2QH/A9kB/wPpAf8D7AH/A9kB/wPZAf8D2QH/
- A9kB/wPWAf8D4gH/AfUB9AH1Af8B9QH0AfUB/wP+Jf8D/gH/AasB2AGsAf8BLgGcATEB/wE5AaEBOwH/
- AdcB6gHYAf8BTwGqAVEB/wEiAZIBJAH/AScBlgEpAf8BIgGSASQB/wEXAYwBGQH/AYkBwgGKAf8BmQHL
- AZkB/wETAYgBFQH/ASIBkgEkAf8BIgGSASQB/wEaAYwBHAH/ASwBlQEuAf8B0AHnAdAB/wFJAaUBTAH/
- ARoBjAEcAf8BmQHLAZkB/wP+If8D/gH/AasB2AGsAf8BLgGcATEB/wE5AaEBOwH/AdcB6gHYAf8BTwGq
- AVEB/wEiAZIBJAH/AScBlgEpAf8BIgGSASQB/wEXAYwBGQH/AYkBwgGKAf8BmQHLAZkB/wETAYgBFQH/
- ASIBkgEkAf8BIgGSASQB/wEaAYwBHAH/ASwBlQEuAf8B0gHqAdIB/wFsAdsBdAH/AUIBywFKAf8BrAHq
- AbAB/wP+If8D/gH/AasB2AGsAf8BLgGcATEB/wE5AaEBOwH/AdwB8AHdAf8BfAHnAYMB/wFVAdsBXgH/
- AVoB3QFjAf8BVQHbAV4B/wFJAdIBUgH/AZUB6gGbAf8B8QHsAfEB/wPZAf8D2QH/A9kB/wPZAf8D3AH/
- AfUB9AH1Af8D4gH/A9kB/wPsAf8D/iH/A/4B/wPxAf8D2QH/A9wB/wP5Af8D4gH/A9kB/wPZAf8D2QH/
- A9kB/wPpAf8D7AH/A9kB/wPZAf8D2QH/A9kB/wPcAf8B9QH0AfUB/wPiAf8D2QH/A+wB/wP+Hf8D/gH/
- AZoB0gGbAf8BIwGZASYB/wEmAZgBKQH/AR8BkgEhAf8BkgHJAZMB/wG5AeABugH/ASIBkgEkAf8BJgGY
- ASkB/wEmAZgBKQH/ARwBkAEeAf8BiQHIAYoB/wGaAdIBmwH/ARwBkAEeAf8BJgGYASkB/wEiAZIBJAH/
- ARMBiAEVAf8BlgHJAZgB/wGqAdIBqwH/ARMBiAEVAf8BGgGMARwB/wETAYgBFQH/AYcBwgGIAf8D/hn/
- A/4B/wGaAdIBmwH/ASMBmQEmAf8BJgGYASkB/wEfAZIBIQH/AZIByQGTAf8BuAHdAbkB/wEiAZIBJAH/
- ASIBkgEkAf8BJgGYASkB/wEcAZABHgH/AYkByAGKAf8BmgHSAZsB/wEcAZABHgH/ASYBmAEpAf8BIgGS
- ASQB/wETAYgBFQH/AZABxQGRAf8BvAHxAcAB/wFCAdABSwH/AUIBywFKAf8BPAHLAUUB/wGbAeIBoAH/
- A/4Z/wP+Af8BmgHSAZsB/wEjAZkBJgH/ASYBmAEpAf8BHwGSASEB/wGJAcIBigH/Ac4B+gHRAf8BVQHb
- AV4B/wFaAd0BYwH/AVoB4AFjAf8BWgHgAWMB/wGlAfIBqgH/AfEB7AHxAf8D1gH/A9kB/wPZAf8D2QH/
- A+wB/wPxAf8D2QH/A9kB/wPZAf8D6QH/A/4Z/wP+Af8D7AH/A9kB/wPZAf8D2QH/A+wB/wPxAf8D2QH/
- A9kB/wPZAf8D1gH/A+kB/wPsAf8D1gH/A9kB/wPZAf8D2QH/A+wB/wPxAf8D2QH/A9kB/wPZAf8D6QH/
- A/4V/wP+Af8BqwHYAawB/wEmAZgBKQH/ASoBmgEtAf8BKgGaAS0B/wEqAZoBLQH/ATEBnQEzAf8B0gHq
- AdIB/wFpAbsBawH/ASMBmQEmAf8BSAGtAUsB/wFiAboBYwH/AbkB4AG6Af8BwQHiAcIB/wFtAcABbwH/
- AVIBsgFUAf8BMgGjATQB/wFTAakBVQH/AdsB7AHbAf8BPwGdAUEB/wEaAYwBHAH/ASIBkgEkAf8BGgGM
- ARwB/wESAYQBFAH/AZIByQGTAf8D/hH/A/4B/wGrAdgBrAH/ASYBmAEpAf8BKgGaAS0B/wEuAZwBMQH/
- ASoBmgEtAf8BMQGdATMB/wHSAeoB0gH/AWkBuwFrAf8BIwGZASYB/wFIAa0BSwH/AWIBugFjAf8BuQHg
- AboB/wHBAeIBwgH/AW0BwAFvAf8BUgGyAVQB/wEyAaMBNAH/AU8BqgFRAf8B3AHwAd0B/wFlAdoBbQH/
- AUIB0AFLAf8BSQHSAVIB/wFCAdABSwH/ATwBywFFAf8BqQHpAa0B/wP+Ef8D/gH/AasB2AGsAf8BJgGY
- ASkB/wEqAZoBLQH/ASoBmgEtAf8BKgGaAS0B/wExAZ0BMwH/AdIB6gHSAf8BlAHwAZoB/wFnAewBcQH/
- AYIB8QGKAf8BmgH5AaEB/wHRAfoB1AH/AfQB8AH0Af8D4gH/A9wB/wPZAf8D3AH/A/kB/wPcAf8D2QH/
- A9kB/wPZAf8D2QH/A+wB/wP+Ef8D/gH/A/EB/wPZAf8D2QH/A9kB/wPZAf8D2QH/AfUB9AH1Af8D4gH/
- A9YB/wPcAf8D4gH/A/EB/wH1AfQB9QH/A+IB/wPcAf8D2QH/A9wB/wP5Af8D3AH/A9kB/wPZAf8D2QH/
- A9kB/wPsAf8D/g3/A/4B/wHcAfAB3QH/ATIBowE0Af8BJgGYASkB/wEuAZwBMQH/AS4BnAExAf8BLgGc
- ATEB/wEfAZIBIQH/AWEBsQFiAf8B0gHqAdIB/wGrAdgBrAH/AegB9QHoAf8D/gH/A/4B/wP+Af8D/gH/
- AfAB+QHxAf8BswHbAbQB/wHLAegBywH/AZIB0AGTAf8BHwGSASEB/wEfAZIBIQH/ASIBkgEkAf8BIQGM
- ASMB/wEaAYwBHAH/ARoBjAEcAf8ByQHiAckB/wP+Cf8D/gH/AdwB8AHdAf8BMgGjATQB/wEmAZgBKQH/
- AS4BnAExAf8BLgGcATEB/wEuAZwBMQH/AR8BkgEhAf8BYQGxAWIB/wHSAeoB0gH/AasB2AGsAf8B6gH4
- AesB/wP+Af8D/gH/A/4B/wP+Af8B8AH5AfEB/wGzAdsBtAH/AcsB6AHLAf8BxQH6AckB/wFaAeABYwH/
- AUkB0gFSAf8BSQHSAVIB/wFJAdIBUgH/AUIBywFKAf8BQgHLAUoB/wHWAfQB2AH/A/4J/wP+Af8B3AHw
- Ad0B/wEyAaMBNAH/ASYBmAEpAf8BLgGcATEB/wEuAZwBMQH/AS4BnAExAf8BHwGSASEB/wFhAbEBYgH/
- AeAB+AHiAf8BxQH6AckB/wHwAfkB8QH/A/4B/wP+Af8D/gH/A/4B/wP+Af8D8QH/AfUB9AH1Af8D6QH/
- A9YB/wPZAf8D2QH/A9kB/wPZAf8D2QH/AfUB9AH1Af8D/gn/A/4B/wP5Af8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D4gH/A/kB/wPxAf8D/gH/A/4B/wP+Af8D/gH/A/4B/wP+Af8D8QH/AfUB9AH1Af8D6QH/
- A9YB/wPZAf8D2QH/A9kB/wPZAf8D2QH/AfUB9AH1Af8D/gn/A/4B/wHgAfEB4QH/AZIByQGTAf8BMgGj
- ATQB/wEjAZkBJgH/AS4BnAExAf8BJgGYASkB/wEmAZgBKQH/AZIByQGTAf8D/gH/A/4Z/wP+Af8D/gH/
- AasB2AGsAf8BRQGwAUcB/wEqAZoBLQH/AR8BigEhAf8BFwGMARkB/wEaAYwBHAH/AWoBtAFrAf8B3AHw
- Ad0B/wP+Cf8D/gH/AeAB8QHhAf8BkgHJAZMB/wEyAaMBNAH/ASMBmQEmAf8BKgGaAS0B/wEmAZgBKQH/
- ASYBmAEpAf8BkgHJAZMB/wP+Af8D/hn/A/4B/wP+Af8B0QH6AdQB/wGaAfkBoQH/AWsB5QF0Af8BSAHS
- AVEB/wFCAdABSwH/AUIBywFKAf8BgQHgAYYB/wHgAfgB4gH/A/4J/wP+Af8B4AHxAeEB/wGSAckBkwH/
- ATIBowE0Af8BIwGZASYB/wEuAZwBMQH/ASoBmgEtAf8BJgGYASkB/wGSAckBkwH/A/4B/wP+Gf8D/gH/
- A/4B/wPsAf8D2QH/A9kB/wPZAf8D2QH/A9kB/wPiAf8D+QH/A/4J/wP+Af8B8AH5AfEB/wHxAewB8QH/
- AdwB2gHcAf8D2QH/A9kB/wPZAf8D2QH/A+wB/wP+Af8D/hn/A/4B/wP+Af8D7AH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D4gH/A/kB/wP+Bf8D/gH/AbkB4AG6Af8BUgGyAVQB/wHBAeIBwgH/AdIB6gHSAf8BcgG8
- AXQB/wEjAZkBJgH/ARwBkAEeAf8BqgHSAasB/wP+Kf8D/gH/AcEB4gHCAf8BRQGwAUcB/wEiAZIBJAH/
- AVMBqQFVAf8BwQHiAcIB/wHJAeIByQH/AVMBqQFVAf8BqgHSAasB/wP+Af8D/gH/AbkB4AG6Af8BUgGy
- AVQB/wHBAeIBwgH/AdIB6gHSAf8BcgG8AXQB/wEjAZkBJgH/ARwBkAEeAf8BqgHSAasB/wP+Kf8D/gH/
- Ad0B+wHgAf8BmgH5AaEB/wFaAeABYwH/AWwB2wF0Af8BxQH6AckB/wH4AfIB+AH/A+IB/wPxAf8D/gH/
- A/4B/wG5AeABugH/AVIBsgFUAf8BwQHiAcIB/wHSAeoB0gH/AXIBvAF0Af8BIwGZASYB/wEcAZABHgH/
- AaoB0gGrAf8D/in/A/4B/wPxAf8D2QH/A9kB/wPiAf8B9QH0AfUB/wH1AfQB9QH/A+IB/wPxAf8D/gH/
- A/4B/wHRAfoB1AH/AYIB8QGKAf8BzgH6AdEB/wH4AfIB+AH/AegB5AHoAf8D2QH/A9kB/wPxAf8D/in/
- A/4B/wPxAf8D2QH/A9kB/wPiAf8B9QH0AfUB/wH1AfQB9QH/A+IB/wPxAf8D/gH/A/4B/wFyAbwBdAH/
- ASMBmQEmAf8BKgGaAS0B/wFwAbkBcgH/AdIB6gHSAf8BswHbAbQB/wGZAcsBmQH/A/4x/wP+Af8BswHb
- AbQB/wGzAdsBtAH/AdsB7AHbAf8BeQG8AXsB/wEiAZIBJAH/AQoBgwEMAf8BUwGpAVUB/wP+Af8D/gH/
- AXIBvAF0Af8BIwGZASYB/wEqAZoBLQH/AXABuQFyAf8B0gHqAdIB/wGzAdsBtAH/AZkBywGZAf8D/jH/
- A/4B/wHRAfoB1AH/Ac4B+gHRAf8B8AH5AfEB/wHxAewB8QH/A9kB/wPWAf8D4gH/A/4B/wP+Af8BcgG8
- AXQB/wEjAZkBJgH/ASoBmgEtAf8BcAG5AXIB/wHSAeoB0gH/AbMB2wG0Af8BmQHLAZkB/wP+Mf8D/gH/
- A+wB/wPxAf8D+QH/A+kB/wPZAf8D1gH/A+IB/wP+Af8D/gH/AZ4B8wGkAf8BagHoAXQB/wFqAegBdAH/
- AZQB8AGaAf8B4AH4AeIB/wH0AfAB9AH/A+wB/wP+Mf8D/gH/A+wB/wPxAf8D+QH/A+kB/wPZAf8D1gH/
- A+IB/wP+Af8B4AHxAeEB/wE/AakBQQH/ATIBowE0Af8BMgGjATQB/wEqAZoBLQH/ASYBmAEpAf8BmQHL
- AZkB/wP+Of8D/gH/AcEB4gHCAf8BPwGpAUEB/wETAYgBFQH/AR8BigEhAf8BGgGMARwB/wEiAZIBJAH/
- AdIB6gHSAf8B4AHxAeEB/wE/AakBQQH/ATIBowE0Af8BMgGjATQB/wEqAZoBLQH/ASYBmAEpAf8BmQHL
- AZkB/wP+Of8D/gH/AfQB8AH0Af8D3AH/A9kB/wPZAf8D2QH/A9kB/wP5Af8B4AHxAeEB/wE/AakBQQH/
- ATIBowE0Af8BMgGjATQB/wEqAZoBLQH/ASYBmAEpAf8BmQHLAZkB/wP+Of8D/gH/A/EB/wPcAf8D2QH/
- A9kB/wPZAf8D2QH/A/kB/wHqAfgB6wH/AXoB8gGBAf8BdQHxAX4B/wFxAesBegH/AWoB6AF0Af8BWgHd
- AWMB/wGkAesBqQH/A/45/wP+Af8D8QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D+QH/AasB2AGsAf8BLgGi
- ATIB/wE2AaQBOQH/ATYBpAE5Af8BMgGjATQB/wETAYgBFQH/AZIByQGTAf8D/jn/A/4B/wGzAdsBtAH/
- ATIBowE0Af8BIgGSASQB/wEiAZIBJAH/ASIBkgEkAf8BEwGIARUB/wGSAckBkwH/AasB2AGsAf8BLgGi
- ATIB/wE2AaQBOQH/ATYBpAE5Af8BMgGjATQB/wETAYgBFQH/AZIByQGTAf8D/jn/A/4B/wPsAf8D2QH/
- A9kB/wPZAf8D2QH/A9kB/wPsAf8BqwHYAawB/wEuAaIBMgH/ATYBpAE5Af8BNgGkATkB/wEyAaMBNAH/
- ARMBiAEVAf8BkgHJAZMB/wP+Of8D/gH/A+wB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A+wB/wHKAfkBzQH/
- AXUB8QF+Af8BegHyAYEB/wF6AfIBgQH/AXEB6wF6Af8BQAHPAUoB/wGkAeYBqAH/A/45/wP+Af8D7AH/
- A9kB/wPZAf8D2QH/A9kB/wPZAf8D7AH/AYQByAGGAf8BKQGgASwB/wE2AaQBOQH/ATYBpAE5Af8BKgGa
- AS0B/wEhAYwBIwH/AdsB7AHbQf8B6AH1AegB/wFLAbABTQH/ASYBmAEpAf8BIgGSASQB/wEiAZIBJAH/
- ARMBiAEVAf8BagG0AWsB/wGEAcgBhgH/ASkBoAEsAf8BNgGkATkB/wE2AaQBOQH/ASoBmgEtAf8BIQGM
- ASMB/wHbAewB20H/A/kB/wPcAf8D2QH/A9kB/wPZAf8D2QH/A+IB/wGEAcgBhgH/ASkBoAEsAf8BNgGk
- ATkB/wE2AaQBOQH/ASoBmgEtAf8BIQGMASMB/wHbAewB20H/A/kB/wPcAf8D2QH/A9kB/wPZAf8D2QH/
- A+IB/wGqAfwBsQH/AXUB8QF+Af8BegHyAYEB/wF6AfIBgQH/AWgB5QFxAf8BQgHLAUoB/wHgAfEB4UH/
- A/kB/wPcAf8D2QH/A9kB/wPZAf8D2QH/A+IB/wFpAbsBawH/AS4BogEyAf8BNgGkATkB/wE2AaQBOQH/
- ASIBkgEkAf8BPgGbAUAB/wH5AfwB+UH/A/4B/wFtAcABbwH/ASMBmQEmAf8BHwGKASEB/wEfAZIBIQH/
- ARcBjAEZAf8BSQGlAUwB/wFpAbsBawH/AS4BogEyAf8BNgGkATkB/wE2AaQBOQH/ASIBkgEkAf8BPgGb
- AUAB/wH5AfwB+UH/A/4B/wPiAf8D2QH/A9kB/wPZAf8D2QH/A+IB/wFpAbsBawH/AS4BogEyAf8BNgGk
- ATkB/wE2AaQBOQH/ASIBkgEkAf8BPgGbAUAB/wH5AfwB+UH/A/4B/wPiAf8D2QH/A9kB/wPZAf8D2QH/
- A+IB/wGaAfkBoQH/AXoB8gGBAf8BegHyAYEB/wF6AfIBgQH/AVoB4AFjAf8BWwHQAWIB/wH5AfwB+UH/
- A/4B/wPiAf8D2QH/A9kB/wPZAf8D2QH/A+IB/wHLAegBywH/AbkB4AG6Af8BuQHgAboB/wG5AeABugH/
- AbMB2wG0Af8BwQHiAcIB/wP+Qf8D/gH/AdIB6gHSAf8BuAHdAbkB/wGzAdsBtAH/AbMB2wG0Af8BswHb
- AbQB/wG/AeABwAH/AcsB6AHLAf8BuQHgAboB/wG5AeABugH/AbkB4AG6Af8BswHbAbQB/wHBAeIBwgH/
- A/5B/wP+Af8B9QH0AfUB/wPxAf8D8QH/A/EB/wPxAf8B9QH0AfUB/wHLAegBywH/AbkB4AG6Af8BuQHg
- AboB/wG5AeABugH/AbMB2wG0Af8BwQHiAcIB/wP+Qf8D/gH/AfUB9AH1Af8D8QH/A/EB/wPxAf8D8QH/
- AfUB9AH1Af8B3QH7AeAB/wHRAfoB1AH/AdQB/AHYAf8B1AH8AdgB/wHFAfIByAH/Ac0B8wHQAf8D/kH/
- A/4B/wH1AfQB9QH/A/EB/wPxAf8D8QH/A/EB/wH1AfQB9QH/AZIB0AGTAf8BfAHCAX0B/wF8AcIBfQH/
- AXwBwgF9Af8BaQG7AWsB/wGJAcIBigH/A/5B/wP+Af8BzgH6AdEB/wGeAfMBpAH/AYwB5gGSAf8BjAHm
- AZIB/wGMAeYBkgH/AZwB7AGhAf8BkgHQAZMB/wF8AcIBfQH/AXwBwgF9Af8BfAHCAX0B/wFpAbsBawH/
- AYkBwgGKAf8D/kH/A/4B/wPsAf8D4gH/A+IB/wPiAf8D4gH/A+kB/wGSAdABkwH/AXwBwgF9Af8BfAHC
- AX0B/wF8AcIBfQH/AWkBuwFrAf8BiQHCAYoB/wP+Qf8D/gH/A+wB/wPiAf8D4gH/A+IB/wPiAf8D6QH/
- AZIByQGTAf8BdQHAAXYB/wF4AcABeQH/AXwBwgF9Af8BagG0AWsB/wGIAb8BiQH/A/5B/wP+Af8D7AH/
- A+IB/wPiAf8D4gH/A+IB/wPpAf8BaQG7AWsB/wEpAaABLAH/ATIBowE0Af8BMgGjATQB/wEcAZABHgH/
- ATQBlQE2Af8B+QH8AflB/wP+Af8BngHzAaQB/wFfAeIBaQH/AUkB0gFSAf8BSwHZAVQB/wFCAdABSwH/
- AWwB2wF0Af8BaQG7AWsB/wEpAaABLAH/ATIBowE0Af8BMgGjATQB/wEcAZABHgH/ATQBlQE2Af8B8AH5
- AfFB/wP+Af8D4gH/A9YB/wPZAf8D2QH/A9YB/wPiAf8BaQG7AWsB/wEpAaABLAH/ATIBowE0Af8BMgGj
- ATQB/wEcAZABHgH/ATQBlQE2Af8B8AH5AfFB/wP+Af8D4gH/A9YB/wPZAf8D2QH/A9YB/wPiAf8BaQG7
- AWsB/wEpAaABLAH/ATIBowE0Af8BMgGjATQB/wEcAZABHgH/ATQBlQE2Af8B8AH5AfFB/wP+Af8D4gH/
- A9YB/wPZAf8D2QH/A9YB/wPiAf8BiQHIAYoB/wEyAaMBNAH/ATsBqQE9Af8BOwGpAT0B/wEyAaMBNAH/
- AR8BigEhAf8B1wHqAdhB/wHvAfwB8AH/AYIB8QGKAf8BXwHiAWkB/wFVAdsBXgH/AVUB2wFeAf8BSQHS
- AVIB/wGMAeYBkgH/AYkByAGKAf8BMgGjATQB/wE7AakBPQH/ATsBqQE9Af8BMgGjATQB/wEfAYoBIQH/
- AdcB6gHYQf8D+QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D4gH/AYkByAGKAf8BMgGjATQB/wE7AakBPQH/
- ATsBqQE9Af8BMgGjATQB/wEfAYoBIQH/AdcB6gHYQf8D+QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D4gH/
- AYkByAGKAf8BMgGjATQB/wE7AakBPQH/ATsBqQE9Af8BMgGjATQB/wEfAYoBIQH/AdcB6gHYQf8D+QH/
- A9wB/wPZAf8D2QH/A9kB/wPZAf8D4gH/AbMB2wG0Af8BMgGjATQB/wE7AakBPQH/ATsBqQE9Af8BOwGp
- AT0B/wEKAYMBDAH/AYkBwgGKAf8D/jn/A/4B/wHFAfoByQH/AWcB7AFxAf8BWgHdAWMB/wFaAd0BYwH/
- AVUB2wFeAf8BSwHZAVQB/wGwAewBtAH/AbMB2wG0Af8BMgGjATQB/wE7AakBPQH/ATsBqQE9Af8BOQGh
- ATsB/wEKAYMBDAH/AYkBwgGKAf8D/jn/A/4B/wPsAf8D1gH/A9kB/wPZAf8D2QH/A9kB/wPsAf8BswHb
- AbQB/wEyAaMBNAH/ATsBqQE9Af8BOwGpAT0B/wE5AaEBOwH/AQoBgwEMAf8BiQHCAYoB/wP+Of8D/gH/
- A+wB/wPWAf8D2QH/A9kB/wPZAf8D2QH/A+wB/wGzAdsBtAH/ATIBowE0Af8BOwGpAT0B/wE7AakBPQH/
- ATkBoQE7Af8BCgGDAQwB/wGJAcIBigH/A/45/wP+Af8D7AH/A9YB/wPZAf8D2QH/A9kB/wPZAf8D7AH/
- AegB9QHoAf8BSwGwAU0B/wE7AakBPQH/ATIBowE0Af8BMgGjATQB/wFnAbYBaQH/AckB4gHJAf8B+QH8
- Afk5/wP+Af8B6gH4AesB/wGeAfMBpAH/AVoB3QFjAf8BVQHbAV4B/wFVAdsBXgH/AVoB3QFjAf8B4AH4
- AeIB/wHoAfUB6AH/AUsBsAFNAf8BOwGpAT0B/wEyAaMBNAH/ATIBowE0Af8BZwG2AWkB/wHJAeIByQH/
- AfkB/AH5Of8D/gH/A/kB/wPpAf8D2QH/A9kB/wPZAf8D2QH/A/kB/wHoAfUB6AH/AUsBsAFNAf8BOwGp
- AT0B/wEyAaMBNAH/ATIBowE0Af8BZwG2AWkB/wHJAeIByQH/AfkB/AH5Of8D/gH/A/kB/wPpAf8D2QH/
- A9kB/wPZAf8D2QH/A/kB/wHoAfUB6AH/AUsBsAFNAf8BOwGpAT0B/wEyAaMBNAH/ATIBowE0Af8BZwG2
- AWkB/wHJAeIByQH/AfkB/AH5Of8D/gH/A/kB/wPpAf8D2QH/A9kB/wPZAf8D2QH/A/kB/wP+Af8BfAHC
- AX0B/wEpAaABLAH/AVsBsQFdAf8BuQHgAboB/wHgAfEB4QH/AWEBsQFiAf8BdAG1AXUB/wP+Mf8D/gH/
- A+kB/wPiAf8B+AHyAfgB/wHRAfoB1AH/AXwB5wGDAf8BSwHZAVQB/wGDAeEBiQH/A/4B/wP+Af8BfAHC
- AX0B/wEpAaABLAH/AVsBsQFdAf8BuQHgAboB/wHgAfEB4QH/AWEBsQFiAf8BdAG1AXUB/wP+Mf8D/gH/
- A+kB/wPiAf8B9QH0AfUB/wH1AfQB9QH/A+IB/wPWAf8D4gH/A/4B/wP+Af8BfAHCAX0B/wEpAaABLAH/
- AVsBsQFdAf8BuQHgAboB/wHgAfEB4QH/AWEBsQFiAf8BdAG1AXUB/wP+Mf8D/gH/A+kB/wPiAf8B9QH0
- AfUB/wH1AfQB9QH/A+IB/wPWAf8D4gH/A/4B/wP+Af8BfAHCAX0B/wEpAaABLAH/AVsBsQFdAf8BuQHg
- AboB/wHgAfEB4QH/AWEBsQFiAf8BdAG1AXUB/wP+Mf8D/gH/A+kB/wPiAf8B9QH0AfUB/wH1AfQB9QH/
- A+IB/wPWAf8D4gH/A/4B/wP+Af8BzgHrAdAB/wGfAdUBoQH/AdwB8AHdAf8BmgHSAZsB/wFDAasBRQH/
- ASYBmAEpAf8BEgGEARQB/wGQAcUBkQH/A/4p/wP+Af8D8QH/A9kB/wPZAf8D2QH/Ae0B6AHtAf8B9QH0
- AfUB/wG0AfMBuAH/AdAB8wHTAf8D/gH/A/4B/wHLAegBywH/AZ8B1QGhAf8B3AHwAd0B/wGaAdIBmwH/
- AUMBqwFFAf8BJgGYASkB/wESAYQBFAH/AZABxQGRAf8D/in/A/4B/wPxAf8D2QH/A9kB/wPZAf8D6QH/
- A/kB/wPxAf8B9QH0AfUB/wP+Af8D/gH/AcsB6AHLAf8BnwHVAaEB/wHcAfAB3QH/AZoB0gGbAf8BQwGr
- AUUB/wEmAZgBKQH/ARIBhAEUAf8BkAHFAZEB/wP+Kf8D/gH/A/EB/wPZAf8D2QH/A9kB/wPpAf8D+QH/
- A/EB/wH1AfQB9QH/A/4B/wP+Af8BywHoAcsB/wGfAdUBoQH/AdwB8AHdAf8BmgHSAZsB/wFDAasBRQH/
- ASYBmAEpAf8BEgGEARQB/wGQAcUBkQH/A/4p/wP+Af8D8QH/A9kB/wPZAf8D2QH/A+kB/wP5Af8D8QH/
- AfUB9AH1Af8D/gX/A/4B/wHSAeoB0gH/AVIBsgFUAf8BMgGjATQB/wE7AakBPQH/AT8BqQFBAf8BLgGc
- ATEB/wESAYQBFAH/AYIBvQGDAf8D/gH/A/4Z/wP+Af8D/gH/A+wB/wPZAf8D2QH/A9kB/wPZAf8D2QH/
- A9wB/wH0AfAB9AH/A/4J/wP+Af8B0gHqAdIB/wFSAbIBVAH/ATIBowE0Af8BOwGpAT0B/wE/AakBQQH/
- AS4BnAExAf8BEgGEARQB/wF/AbwBgQH/A/4B/wP+Gf8D/gH/A/4B/wPsAf8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D8QH/A/4J/wP+Af8B0gHqAdIB/wFSAbIBVAH/ATIBowE0Af8BOwGpAT0B/wE/AakBQQH/
- AS4BnAExAf8BEgGEARQB/wF/AbwBgQH/A/4B/wP+Gf8D/gH/A/4B/wPsAf8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D8QH/A/4J/wP+Af8B0gHqAdIB/wFSAbIBVAH/ATIBowE0Af8BOwGpAT0B/wE/AakBQQH/
- AS4BnAExAf8BEgGEARQB/wF/AbwBgQH/A/4B/wP+Gf8D/gH/A/4B/wPsAf8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D8QH/A/4J/wP+Af8B4AHxAeEB/wFLAbABTQH/ATgBqAE6Af8BPwGpAUEB/wE7AakBPQH/
- AT8BqQFBAf8BIwGZASYB/wGJAcIBigH/AaoB0gGrAf8BggG9AYMB/wHbAewB2wH/AfkB/AH5Af8D/gH/
- A/4B/wP+Af8D+QH/A+wB/wPsAf8D8QH/A9kB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A/kB/wP+Cf8D/gH/
- AeAB8QHhAf8BSwGwAU0B/wE4AagBOgH/AT8BqQFBAf8BOwGpAT0B/wE/AakBQQH/ASMBmQEmAf8BiQHC
- AYoB/wGqAdIBqwH/AYIBvQGDAf8B2wHsAdsB/wH5AfwB+QH/A/4B/wP+Af8D/gH/A/kB/wPsAf8D7AH/
- A/EB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A9kB/wP5Af8D/gn/A/4B/wHgAfEB4QH/AUsBsAFNAf8BOAGo
- AToB/wE/AakBQQH/ATsBqQE9Af8BPwGpAUEB/wEjAZkBJgH/AYkBwgGKAf8BqgHSAasB/wGCAb0BgwH/
- AdsB7AHbAf8B+QH8AfkB/wP+Af8D/gH/A/4B/wP5Af8D7AH/A+wB/wPxAf8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D+QH/A/4J/wP+Af8B4AHxAeEB/wFLAbABTQH/ATsBqQE9Af8BPwGpAUEB/wE7AakBPQH/
- AT8BqQFBAf8BIwGZASYB/wGJAcIBigH/AaoB0gGrAf8BggG9AYMB/wHbAewB2wH/AfkB/AH5Af8D/gH/
- A/4B/wP+Af8D+QH/A+wB/wPsAf8D8QH/A9kB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A/kB/wP+Df8D/gH/
- AbkB4AG6Af8BOwGpAT0B/wE7AakBPQH/AT8BqQFBAf8BNgGkATkB/wFfAboBYQH/AeAB8QHhAf8BQgGi
- AUQB/wEQAYgBEQH/ASEBjAEjAf8BNAGVATYB/wGSAckBkwH/AfgB8gH4Af8D3AH/A9kB/wPZAf8D2QH/
- A/kB/wPiAf8D2QH/A9kB/wPZAf8D2QH/A/EB/wP+Ef8D/gH/AbkB4AG6Af8BOwGpAT0B/wE7AakBPQH/
- AT8BqQFBAf8BNgGkATkB/wFfAboBYQH/AeAB8QHhAf8BQgGiAUQB/wEPAYYBEQH/ASEBjAEjAf8BNAGV
- ATYB/wGSAckBkwH/AfgB8gH4Af8D3AH/A9kB/wPZAf8D2QH/A/kB/wPiAf8D2QH/A9kB/wPZAf8D2QH/
- A/EB/wP+Ef8D/gH/AbkB4AG6Af8BOwGpAT0B/wE7AakBPQH/AT8BqQFBAf8BNgGkATkB/wFfAboBYQH/
- AeAB8QHhAf8BQgGiAUQB/wEPAYYBEQH/ASEBjAEjAf8BNAGVATYB/wGSAckBkwH/AfgB8gH4Af8D3AH/
- A9kB/wPZAf8D2QH/A/kB/wPiAf8D2QH/A9kB/wPZAf8D2QH/A/EB/wP+Ef8D/gH/AbkB4AG6Af8BOwGp
- AT0B/wE7AakBPQH/AT8BqQFBAf8BNgGkATkB/wFfAboBYQH/AeAB8QHhAf8BQgGiAUQB/wEPAYYBEQH/
- ASEBjAEjAf8BNAGVATYB/wGSAckBkwH/AfgB8gH4Af8D3AH/A9kB/wPZAf8D2QH/A/kB/wPiAf8D2QH/
- A9kB/wPZAf8D2QH/A/EB/wP+Ff8D/gH/AbMB2wG0Af8BOwGpAT0B/wE4AagBOgH/ATYBpAE5Af8BuQHg
- AboB/wGaAdIBmwH/ATIBowE0Af8BOwGpAT0B/wEyAaMBNAH/ARwBkAEeAf8BfAHCAX0B/wH0AfAB9AH/
- A9YB/wPZAf8D2QH/A9kB/wPiAf8B9QH0AfUB/wPZAf8D2QH/A9kB/wPsAf8D/hn/A/4B/wGzAdsBtAH/
- ATsBqQE9Af8BOAGoAToB/wE2AaQBOQH/AbkB4AG6Af8BmgHSAZsB/wEyAaMBNAH/ATsBqQE9Af8BMgGj
- ATQB/wEcAZABHgH/AXwBwgF9Af8B9AHwAfQB/wPWAf8D2QH/A9kB/wPZAf8D4gH/AfUB9AH1Af8D2QH/
- A9kB/wPZAf8D7AH/A/4Z/wP+Af8BswHbAbQB/wE7AakBPQH/ATgBqAE6Af8BNgGkATkB/wG5AeABugH/
- AZoB0gGbAf8BMgGjATQB/wE7AakBPQH/ATIBowE0Af8BHAGQAR4B/wF8AcIBfQH/AfQB8AH0Af8D1gH/
- A9kB/wPZAf8D2QH/A+IB/wH1AfQB9QH/A9kB/wPZAf8D2QH/A+wB/wP+Gf8D/gH/AbMB2wG0Af8BOwGp
- AT0B/wE4AagBOgH/ATYBpAE5Af8BuQHgAboB/wGaAdIBmwH/ATIBowE0Af8BOwGpAT0B/wEyAaMBNAH/
- ARwBkAEeAf8BfAHCAX0B/wH0AfAB9AH/A9YB/wPZAf8D2QH/A9kB/wPiAf8B9QH0AfUB/wPZAf8D2QH/
- A9kB/wPsAf8D/h3/A/4B/wHBAeIBwgH/AUsBsAFNAf8BbQHAAW8B/wHSAeoB0gH/AUMBqwFFAf8BOwGp
- AT0B/wE7AakBPQH/ATsBqQE9Af8BLgGiATIB/wGJAcgBigH/AfQB8AH0Af8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wPxAf8D6QH/A9kB/wPxAf8D/iH/A/4B/wHBAeIBwgH/AUsBsAFNAf8BbQHAAW8B/wHSAeoB0gH/
- AUMBqwFFAf8BOwGpAT0B/wE7AakBPQH/ATsBqQE9Af8BLgGiATIB/wGJAcgBigH/AfQB8AH0Af8D2QH/
- A9kB/wPZAf8D2QH/A9kB/wPxAf8D6QH/A9kB/wPxAf8D/iH/A/4B/wHBAeIBwgH/AUsBsAFNAf8BbQHA
- AW8B/wHSAeoB0gH/AUMBqwFFAf8BOwGpAT0B/wE7AakBPQH/ATsBqQE9Af8BLgGiATIB/wGJAcgBigH/
- AfQB8AH0Af8D2QH/A9kB/wPZAf8D2QH/A9kB/wPxAf8D6QH/A9kB/wPxAf8D/iH/A/4B/wHBAeIBwgH/
- AUsBsAFNAf8BbQHAAW8B/wHSAeoB0gH/AUMBqwFFAf8BOwGpAT0B/wE7AakBPQH/ATsBqQE9Af8BMgGj
- ATQB/wGJAcgBigH/AfQB8AH0Af8D2QH/A9kB/wPZAf8D2QH/A9kB/wPxAf8D6QH/A9kB/wPxAf8D/iX/
- A/4B/wHgAfEB4QH/AdwB8AHdAf8BfAHCAX0B/wEpAaABLAH/ATsBqQE9Af8BOwGpAT0B/wE7AakBPQH/
- AS4BogEyAf8BiQHIAYoB/wH0AfAB9AH/A9kB/wPZAf8D2QH/A9kB/wPWAf8D4gH/A/kB/wP5Af8D/in/
- A/4B/wHgAfEB4QH/AdwB8AHdAf8BfAHCAX0B/wEpAaABLAH/ATsBqQE9Af8BOwGpAT0B/wE7AakBPQH/
- AS4BogEyAf8BiQHIAYoB/wH0AfAB9AH/A9kB/wPZAf8D2QH/A9kB/wPWAf8D4gH/A/kB/wP5Af8D/in/
- A/4B/wHgAfEB4QH/AdwB8AHdAf8BfAHCAX0B/wEpAaABLAH/ATsBqQE9Af8BOwGpAT0B/wE7AakBPQH/
- AS4BogEyAf8BiQHIAYoB/wH0AfAB9AH/A9kB/wPZAf8D2QH/A9kB/wPWAf8D4gH/A/kB/wP5Af8D/in/
- A/4B/wHgAfEB4QH/AdwB8AHdAf8BfAHCAX0B/wEpAaABLAH/ATsBqQE9Af8BOwGpAT0B/wE7AakBPQH/
- AS4BogEyAf8BiQHIAYoB/wH0AfAB9AH/A9kB/wPZAf8D2QH/A9kB/wPWAf8D4gH/A/kB/wP5Af8D/i3/
- A/4B/wP+Af8BzgHrAdAB/wGEAcgBhgH/AUsBsAFNAf8BOAGoAToB/wEuAaIBMgH/AScBoAEpAf8BhAHI
- AYYB/wHxAewB8QH/A9YB/wPWAf8D2QH/A9wB/wPiAf8B9AHwAfQB/wP+Af8D/jH/A/4B/wP+Af8BzgHr
- AdAB/wGEAcgBhgH/AUsBsAFNAf8BOAGoAToB/wEuAaIBMgH/AScBoAEpAf8BhAHIAYYB/wH0AfAB9AH/
- A9YB/wPWAf8D2QH/A9wB/wPiAf8B9QH0AfUB/wP+Af8D/jH/A/4B/wP+Af8BzgHrAdAB/wGEAcgBhgH/
- AUsBsAFNAf8BOAGoAToB/wEuAaIBMgH/AScBoAEpAf8BhAHIAYYB/wHxAewB8QH/A9YB/wPWAf8D2QH/
- A9wB/wPiAf8B9QH0AfUB/wP+Af8D/jH/A/4B/wP+Af8BzgHrAdAB/wGEAcgBhgH/AUsBsAFNAf8BOAGo
- AToB/wEuAaIBMgH/AScBoAEpAf8BhAHIAYYB/wHxAewB8QH/A9YB/wPWAf8D2QH/A9wB/wPiAf8B9QH0
- AfUB/wP+Af8D/jn/A/4B/wP+Af8B8AH5AfEB/wG5AeABugH/AZIB0AGTAf8BbQHAAW8B/wGkAdgBpQH/
- AfQB8AH0Af8D4gH/A+kB/wPxAf8D+QH/A/4B/wP+Qf8D/gH/A/4B/wHqAfgB6wH/AbkB4AG6Af8BkgHQ
- AZMB/wFtAcABbwH/AaQB2AGlAf8B9AHwAfQB/wPiAf8D6QH/A/EB/wP5Af8D/gH/A/5B/wP+Af8D/gH/
- AeoB+AHrAf8BuQHgAboB/wGSAdABkwH/AW0BwAFvAf8BpAHYAaUB/wH0AfAB9AH/A+IB/wPpAf8D8QH/
- A/kB/wP+Af8D/kH/A/4B/wP+Af8B6gH4AesB/wG5AeABugH/AZIB0AGTAf8BbQHAAW8B/wGkAdgBpQH/
- AfQB8AH0Af8D4gH/A+kB/wPxAf8D+QH/A/4B/wP+Qf8D/gH/A/4B/wHgAfgB4gH/AbQB7AG4Af8BkAHm
- AZYB/wFsAdsBdAH/AbEB8QG1Af8BoAHRAaEB/wFCAaIBRAH/AWoBtAFrAf8BmQHLAZkB/wHbAewB2wH/
- A/4B/wP+Qf8D/gH/A/4B/wHbAewB2wH/AaAB0QGhAf8BcgG8AXQB/wFJAaUBTAH/AZkBywGZAf8BqgHS
- AasB/wFCAaIBRAH/AWoBtAFrAf8BmQHLAZkB/wHbAewB2wH/A/4B/wP+Qf8D/gH/A/4B/wHcAfAB3QH/
- AaAB0QGhAf8BcgG8AXQB/wFJAaUBTAH/AZkBywGZAf8BqgHSAasB/wFCAaIBRAH/AWoBtAFrAf8BmQHL
- AZkB/wHbAewB2wH/A/4B/wP+Qf8D/gH/A/4B/wHcAfAB3QH/AaAB0QGhAf8BcgG8AXQB/wFJAaUBTAH/
- AZkBywGZAf8BqgHSAasB/wFCAaIBRAH/AWoBtAFrAf8BmQHLAZkB/wHbAewB2wH/A/4B/wP+Of8D/gH/
- A/4B/wHNAfMB0AH/AYMB4QGJAf8BWgHdAWMB/wFLAdkBVAH/AUkB0gFSAf8BQgHQAUsB/wGhAeoBpgH/
- AZIByQGTAf8BCgGDAQwB/wETAYgBFQH/ARMBiAEVAf8BIgGSASQB/wFZAawBWwH/AbMB2wG0Af8D/gH/
- A/4x/wP+Af8D/gH/Ab8B4AHAAf8BYQGxAWIB/wEqAZoBLQH/ARoBjAEcAf8BFwGMARkB/wEQAYgBEQH/
- AYUBwgGGAf8BkgHJAZMB/wEKAYMBDAH/ARMBiAEVAf8BEwGIARUB/wEiAZIBJAH/AVkBrAFbAf8BswHb
- AbQB/wP+Af8D/jH/A/4B/wP+Af8BvwHgAcAB/wFhAbEBYgH/ASoBmgEtAf8BGgGMARwB/wEXAYwBGQH/
- ARABiAERAf8BhQHCAYYB/wGSAckBkwH/AQoBgwEMAf8BEwGIARUB/wETAYgBFQH/ASIBkgEkAf8BWQGs
- AVsB/wGzAdsBtAH/A/4B/wP+Mf8D/gH/A/4B/wHBAeIBwgH/AWEBsQFiAf8BKgGaAS0B/wEcAZABHgH/
- ARcBjAEZAf8BEAGIAREB/wGFAcIBhgH/AZYByQGYAf8BCgGDAQwB/wETAYgBFQH/ARMBiAEVAf8BIgGS
- ASQB/wFZAawBWwH/AbMB2wG0Af8D/gH/A/4t/wP+Af8B9QH0AfUB/wH4AfIB+AH/AakB6QGtAf8BSwHZ
- AVQB/wFVAdsBXgH/AVUB2wFeAf8BVQHbAV4B/wFJAdIBUgH/AaQB6wGpAf8BlgHJAZgB/wETAYgBFQH/
- ASIBkgEkAf8BHwGSASEB/wEaAYwBHAH/AQoBgwEMAf8BagG0AWsB/wHJAeIByQH/AcEB4gHCAf8D/in/
- A/4B/wHJAeIByQH/AbkB4AG6Af8BkgHJAZMB/wETAYgBFQH/ASIBkgEkAf8BIgGSASQB/wEiAZIBJAH/
- ARcBjAEZAf8BiQHCAYoB/wGZAcsBmQH/ARMBiAEVAf8BIgGSASQB/wEfAZIBIQH/ARoBjAEcAf8BCgGD
- AQwB/wFqAbQBawH/AckB4gHJAf8BwQHiAcIB/wP+Kf8D/gH/AckB4gHJAf8BvwHgAcAB/wGSAckBkwH/
- ARMBiAEVAf8BIgGSASQB/wEiAZIBJAH/ASIBkgEkAf8BFwGMARkB/wGJAcIBigH/AZkBywGZAf8BEwGI
- ARUB/wEiAZIBJAH/ASIBkgEkAf8BGgGMARwB/wEKAYMBDAH/AWoBtAFrAf8ByQHiAckB/wHBAeIBwgH/
- A/4p/wP+Af8ByQHiAckB/wG5AeABugH/AZIByQGTAf8BEwGIARUB/wEiAZIBJAH/ASIBkgEkAf8BIgGS
- ASQB/wEXAYwBGQH/AYkBwgGKAf8BmQHLAZkB/wETAYgBFQH/ASIBkgEkAf8BHwGSASEB/wEaAYwBHAH/
- AQoBgwEMAf8BagG0AWsB/wHJAeIByQH/AcEB4gHCAf8D/iX/A/4B/wPxAf8D2QH/A9wB/wHvAfwB8AH/
- AXUB5QF9Af8BVQHbAV4B/wFaAd0BYwH/AVUB2wFeAf8BSQHSAVIB/wGkAesBqQH/AZIByQGTAf8BEwGI
- ARUB/wEiAZIBJAH/ASIBkgEkAf8BGgGMARwB/wEsAZUBLgH/AdAB5wHQAf8BSQGlAUwB/wEaAYwBHAH/
- AZkBywGZAf8D/iH/A/4B/wGrAdgBrAH/AS4BnAExAf8BOQGhATsB/wHXAeoB2AH/AU8BqgFRAf8BIgGS
- ASQB/wEnAZYBKQH/AScBlgEpAf8BFwGMARkB/wGJAcIBigH/AZkBywGZAf8BEwGIARUB/wEiAZIBJAH/
- ASIBkgEkAf8BGgGMARwB/wEsAZUBLgH/AdAB5wHQAf8BSQGlAUwB/wEaAYwBHAH/AZkBywGZAf8D/iH/
- A/4B/wGrAdgBrAH/AS4BnAExAf8BOQGhATsB/wHXAeoB2AH/AU8BqgFRAf8BIgGSASQB/wEnAZYBKQH/
- ASIBkgEkAf8BFwGMARkB/wGJAcIBigH/AZkBywGZAf8BEwGIARUB/wEiAZIBJAH/ASIBkgEkAf8BGgGM
- ARwB/wEsAZUBLgH/AdAB5wHQAf8BSQGlAUwB/wEaAYwBHAH/AZkBywGZAf8D/iH/A/4B/wGrAdgBrAH/
- AS4BnAExAf8BOQGhATsB/wHXAeoB2AH/AU8BqgFRAf8BIgGSASQB/wEnAZYBKQH/AScBlgEpAf8BFwGM
- ARkB/wGJAcIBigH/AZkBywGZAf8BEwGIARUB/wEiAZIBJAH/ASIBkgEkAf8BGgGMARwB/wEsAZUBLgH/
- AdAB5wHQAf8BSQGlAUwB/wEaAYwBHAH/AZkBywGZAf8D/h3/A/4B/wPsAf8D2QH/A9kB/wPZAf8B8QHs
- AfEB/wHFAfIByAH/AVUB2wFeAf8BWgHdAWMB/wFaAeABYwH/AVoB4AFjAf8BsQH7AbYB/wGZAcsBmQH/
- ARwBkAEeAf8BJwGWASkB/wEiAZIBJAH/ARMBiAEVAf8BlgHJAZgB/wGqAdIBqwH/ARMBiAEVAf8BGgGM
- ARwB/wETAYgBFQH/AYcBwgGIAf8D/hn/A/4B/wGaAdIBmwH/ASMBmQEmAf8BJgGYASkB/wEfAZIBIQH/
- AZIByQGTAf8BuAHdAbkB/wEiAZIBJAH/AScBlgEpAf8BJgGYASkB/wEcAZABHgH/AYkByAGKAf8BmgHS
- AZsB/wEcAZABHgH/AScBlgEpAf8BIgGSASQB/wETAYgBFQH/AZYByQGYAf8BqgHSAasB/wETAYgBFQH/
- ARoBjAEcAf8BEgGEARQB/wGHAcIBiAH/A/4Z/wP+Af8BmgHSAZsB/wEjAZkBJgH/ASYBmAEpAf8BHwGS
- ASEB/wGSAckBkwH/AbgB3QG5Af8BIgGSASQB/wEnAZYBKQH/ASYBmAEpAf8BHAGQAR4B/wGJAcgBigH/
- AZoB0gGbAf8BHAGQAR4B/wEnAZYBKQH/ASIBkgEkAf8BEwGIARUB/wGWAckBmAH/AaoB0gGrAf8BEwGI
- ARUB/wEaAYwBHAH/ARIBhAEUAf8BhwHCAYgB/wP+Gf8D/gH/AZoB0gGbAf8BIwGZASYB/wEmAZgBKQH/
- AR8BkgEhAf8BkgHJAZMB/wG4Ad0BuQH/ASIBkgEkAf8BJwGWASkB/wEmAZgBKQH/ARwBkAEeAf8BiQHI
- AYoB/wGaAdIBmwH/ARwBkAEeAf8BJwGWASkB/wEiAZIBJAH/ARMBiAEVAf8BlgHJAZgB/wGqAdIBqwH/
- ARMBiAEVAf8BGgGMARwB/wETAYgBFQH/AYcBwgGIAf8D/hX/A/4B/wPxAf8D2QH/A9kB/wPZAf8D2QH/
- AdwB2gHcAf8B9QH0AfUB/wGKAewBkQH/AWcB7AFxAf8BggHxAYoB/wGaAfkBoQH/AdgB+gHbAf8BwQHi
- AcIB/wFtAcABbwH/AVIBsgFUAf8BMgGjATQB/wFTAakBVQH/AdsB7AHbAf8BPwGdAUEB/wEaAYwBHAH/
- ASIBkgEkAf8BGgGMARwB/wESAYQBFAH/AZYByQGYAf8D/hH/A/4B/wGrAdgBrAH/ASYBmAEpAf8BKgGa
- AS0B/wEqAZoBLQH/ASoBmgEtAf8BMQGdATMB/wHSAeoB0gH/AWkBuwFrAf8BIwGZASYB/wFIAa0BSwH/
- AWIBugFjAf8BuQHgAboB/wHBAeIBwgH/AW0BwAFvAf8BUgGyAVQB/wEyAaMBNAH/AVMBqQFVAf8B2wHs
- AdsB/wE/AZ0BQQH/ARoBjAEcAf8BIgGSASQB/wEaAYwBHAH/ARIBhAEUAf8BlgHJAZgB/wP+Ef8D/gH/
- AasB2AGsAf8BJgGYASkB/wEqAZoBLQH/ASoBmgEtAf8BKgGaAS0B/wExAZ0BMwH/AdIB6gHSAf8BaQG7
- AWsB/wEjAZkBJgH/AUoBrAFNAf8BYgG6AWMB/wG5AeABugH/AcEB4gHCAf8BbQHAAW8B/wFSAbIBVAH/
- ATIBowE0Af8BUwGpAVUB/wHbAewB2wH/AT8BnQFBAf8BGgGMARwB/wEiAZIBJAH/ARoBjAEcAf8BEgGE
- ARQB/wGWAckBmAH/A/4R/wP+Af8BqwHYAawB/wEmAZgBKQH/ASoBmgEtAf8BKgGaAS0B/wEqAZoBLQH/
- ATEBnQEzAf8B0gHqAdIB/wFpAbsBawH/ASMBmQEmAf8BSAGtAUsB/wFiAboBYwH/AbkB4AG6Af8BwQHi
- AcIB/wFtAcABbwH/AVIBsgFUAf8BMgGjATQB/wFTAakBVQH/AdsB7AHbAf8BPwGdAUEB/wEaAYwBHAH/
- ASIBkgEkAf8BGgGMARwB/wETAYgBFQH/AZYByQGYAf8D/g3/A/4B/wP5Af8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D4gH/AeAB+AHiAf8BxQH6AckB/wHwAfkB8QH/A/4B/wP+Af8D/gH/A/4B/wHwAfkB8QH/
- AbMB2wG0Af8BywHoAcsB/wGSAdABkwH/AR8BkgEhAf8BHwGSASEB/wEfAZIBIQH/ASEBjAEjAf8BGgGM
- ARwB/wEaAYwBHAH/AckB4gHJAf8D/gn/A/4B/wHbAewB2wH/ATIBowE0Af8BJgGYASkB/wEuAZwBMQH/
- AS4BnAExAf8BLgGcATEB/wEfAZIBIQH/AWEBsQFiAf8B0gHqAdIB/wGrAdgBrAH/AegB9QHoAf8D/gH/
- A/4B/wP+Af8D/gH/AfAB+QHxAf8BswHbAbQB/wHLAegBywH/AZIB0AGTAf8BHwGSASEB/wEfAZIBIQH/
- AR8BkgEhAf8BHwGSASEB/wEaAYwBHAH/ARoBjAEcAf8ByQHiAckB/wP+Cf8D/gH/AdwB8AHdAf8BMgGj
- ATQB/wEmAZgBKQH/AS4BnAExAf8BLgGcATEB/wEuAZwBMQH/AR8BkgEhAf8BYQGxAWIB/wHSAeoB0gH/
- AasB2AGsAf8B6AH1AegB/wP+Af8D/gH/A/4B/wP+Af8B8AH5AfEB/wGzAdsBtAH/AcsB6AHLAf8BkgHQ
- AZMB/wEfAZIBIQH/AR8BkgEhAf8BIgGSASQB/wEiAZIBJAH/ARoBjAEcAf8BGgGMARwB/wHJAeIByQH/
- A/4J/wP+Af8B3AHwAd0B/wEyAaMBNAH/ASYBmAEpAf8BLgGcATEB/wEuAZwBMQH/AS4BnAExAf8BHwGS
- ASEB/wFhAbEBYgH/AdIB6gHSAf8BqwHYAawB/wHqAfgB6wH/A/4B/wP+Af8D/gH/A/4B/wHqAfgB6wH/
- AbMB2wG0Af8BywHoAcsB/wGSAdABkwH/AR8BkgEhAf8BHwGSASEB/wEiAZIBJAH/ASEBjAEjAf8BGgGM
- ARwB/wEaAYwBHAH/AckB4gHJAf8D/gn/A/4B/wP5Af8D6QH/A9kB/wPZAf8D2QH/A9kB/wPZAf8D7AH/
- A/4B/wP+Gf8D/gH/A/4B/wGrAdgBrAH/AUUBsAFHAf8BKgGaAS0B/wEfAZIBIQH/ARcBjAEZAf8BGgGM
- ARwB/wFqAbQBawH/AdsB7AHbAf8D/gn/A/4B/wHgAfEB4QH/AYkByAGKAf8BMgGjATQB/wEjAZkBJgH/
- AS4BnAExAf8BKgGaAS0B/wEnAZYBKQH/AZIByQGTAf8D/gH/A/4Z/wP+Af8D/gH/AasB2AGsAf8BRQGw
- AUcB/wEqAZoBLQH/AR8BkgEhAf8BFwGMARkB/wEaAYwBHAH/AWoBtAFrAf8B2wHsAdsB/wP+Cf8D/gH/
- AeAB8QHhAf8BkgHJAZMB/wEyAaMBNAH/ASMBmQEmAf8BLgGcATEB/wEqAZoBLQH/AScBlgEpAf8BkgHJ
- AZMB/wP+Af8D/hn/A/4B/wP+Af8BqwHYAawB/wFFAbABRwH/ASoBmgEtAf8BHwGKASEB/wEXAYwBGQH/
- ARoBjAEcAf8BagG0AWsB/wHcAfAB3QH/A/4J/wP+Af8B4AHxAeEB/wGSAckBkwH/ATIBowE0Af8BIwGZ
- ASYB/wEuAZwBMQH/ASoBmgEtAf8BJwGWASkB/wGSAckBkwH/A/4B/wP+Gf8D/gH/A/4B/wGrAdgBrAH/
- AUUBsAFHAf8BKgGaAS0B/wEfAYoBIQH/ARcBjAEZAf8BGgGMARwB/wFqAbQBawH/AdwB8AHdAf8D/gX/
- A/4B/wPxAf8D4gH/AfUB9AH1Af8B9QH0AfUB/wPiAf8D2QH/A9kB/wPxAf8D/in/A/4B/wHBAeIBwgH/
- AUUBsAFHAf8BIgGSASQB/wFTAakBVQH/AcEB4gHCAf8ByQHiAckB/wFTAakBVQH/AaoB0gGrAf8D/gH/
- A/4B/wHRAfoB1AH/AYkB8wGQAf8B1AH8AdgB/wHSAeoB0gH/AXIBvAF0Af8BIgGSASQB/wEcAZABHgH/
- AaoB0gGrAf8D/in/A/4B/wHBAeIBwgH/AUUBsAFHAf8BIgGSASQB/wFTAakBVQH/AcEB4gHCAf8ByQHi
- AckB/wFTAakBVQH/AaoB0gGrAf8D/gH/A/4B/wG5AeABugH/AVYBsQFZAf8BwQHiAcIB/wHSAeoB0gH/
- AXIBvAF0Af8BIwGZASYB/wEcAZABHgH/AaoB0gGrAf8D/in/A/4B/wHBAeIBwgH/AUUBsAFHAf8BIgGS
- ASQB/wFTAakBVQH/AcEB4gHCAf8ByQHiAckB/wFTAakBVQH/AaoB0gGrAf8D/gH/A/4B/wG5AeABugH/
- AVIBsgFUAf8BwQHiAcIB/wHSAeoB0gH/AXIBvAF0Af8BIwGZASYB/wEcAZABHgH/AaoB0gGrAf8D/in/
- A/4B/wHBAeIBwgH/AUUBsAFHAf8BIgGSASQB/wFTAakBVQH/AcEB4gHCAf8ByQHiAckB/wFTAakBVQH/
- AaoB0gGrAf8D/gH/A/4B/wPiAf8D1gH/A9kB/wPiAf8B9QH0AfUB/wPxAf8D7AH/A/4x/wP+Af8BswHb
- AbQB/wGzAdsBtAH/AdsB7AHbAf8BeQG8AXsB/wEiAZIBJAH/AQoBgwEMAf8BUwGpAVUB/wP+Af8D/gH/
- AZ4B8wGkAf8BagHoAXQB/wFqAegBdAH/AZ4B8wGkAf8B4AH4AeIB/wGzAdsBtAH/AZkBywGZAf8D/jH/
- A/4B/wGzAdsBtAH/AbMB2wG0Af8B2wHsAdsB/wF5AbwBewH/ASIBkgEkAf8BCgGDAQwB/wFTAakBVQH/
- A/4B/wP+Af8BcgG8AXQB/wEjAZkBJgH/ASoBmgEtAf8BcAG5AXIB/wHSAeoB0gH/AbMB2wG0Af8BmQHL
- AZkB/wP+Mf8D/gH/AbMB2wG0Af8BswHbAbQB/wHbAewB2wH/AXkBvAF7Af8BIgGSASQB/wEKAYMBDAH/
- AVMBqQFVAf8D/gH/A/4B/wFyAbwBdAH/ASMBmQEmAf8BKgGaAS0B/wFwAbkBcgH/AdIB6gHSAf8BswHb
- AbQB/wGZAcsBmQH/A/4x/wP+Af8BswHbAbQB/wGzAdsBtAH/AdsB7AHbAf8BeQG8AXsB/wEiAZIBJAH/
- AQoBgwEMAf8BUwGpAVUB/wP+Af8D+QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D7AH/A/45/wP+Af8BwQHi
- AcIB/wFCAaIBRAH/ARMBiAEVAf8BHwGKASEB/wEaAYwBHAH/ASIBkgEkAf8B0gHqAdIB/wHqAfgB6wH/
- AXoB8gGBAf8BdQHxAX4B/wFxAesBegH/AWoB6AF0Af8BWgHgAWMB/wGsAeoBsAH/A/45/wP+Af8BwQHi
- AcIB/wFCAaIBRAH/ARMBiAEVAf8BHwGKASEB/wEaAYwBHAH/ASIBkgEkAf8B0gHqAdIB/wHgAfEB4QH/
- AT8BqQFBAf8BMgGjATQB/wEyAaMBNAH/ASoBmgEtAf8BJgGYASkB/wGZAcsBmQH/A/45/wP+Af8BwQHi
- AcIB/wE/AakBQQH/ARMBiAEVAf8BHwGKASEB/wEaAYwBHAH/ASIBkgEkAf8B0gHqAdIB/wHgAfEB4QH/
- AT8BqQFBAf8BMgGjATQB/wEyAaMBNAH/ASoBmgEtAf8BJgGYASkB/wGZAcsBmQH/A/45/wP+Af8BwQHi
- AcIB/wE/AakBQQH/ARMBiAEVAf8BHwGKASEB/wEaAYwBHAH/ASIBkgEkAf8B0gHqAdIB/wPxAf8D2QH/
- A9kB/wPZAf8D2QH/A9kB/wPsAf8D/jn/A/4B/wGzAdsBtAH/ATIBowE0Af8BIgGSASQB/wEiAZIBJAH/
- ASIBkgEkAf8BEwGIARUB/wGSAckBkwH/AcgB9AHMAf8BdQHxAX4B/wF6AfIBgQH/AXoB8gGBAf8BcQHr
- AXoB/wFAAc8BSgH/AaQB5gGoAf8D/jn/A/4B/wGzAdsBtAH/ATIBowE0Af8BIgGSASQB/wEiAZIBJAH/
- ASIBkgEkAf8BEwGIARUB/wGSAckBkwH/AasB2AGsAf8BLgGiATIB/wE2AaQBOQH/ATYBpAE5Af8BMgGj
- ATQB/wESAYQBFAH/AZIByQGTAf8D/jn/A/4B/wGzAdsBtAH/ATIBowE0Af8BIgGSASQB/wEiAZIBJAH/
- ASIBkgEkAf8BEwGIARUB/wGSAckBkwH/AasB2AGsAf8BLgGiATIB/wE2AaQBOQH/ATYBpAE5Af8BMgGj
- ATQB/wETAYgBFQH/AZIByQGTAf8D/jn/A/4B/wGzAdsBtAH/ATIBowE0Af8BIgGSASQB/wEiAZIBJAH/
- ASIBkgEkAf8BEwGIARUB/wGSAckBkwH/A+kB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A/lB/wHoAfUB6AH/
- AUsBsAFNAf8BJgGYASkB/wEfAZIBIQH/AR8BkgEhAf8BEwGIARUB/wFqAbQBawH/AaoB/AGxAf8BdQHx
- AX4B/wF6AfIBgQH/AXoB8gGBAf8BaAHlAXEB/wFCAcsBSgH/AeAB8QHhQf8B6AH1AegB/wFLAbABTQH/
- ASYBmAEpAf8BHwGSASEB/wEfAZIBIQH/ARMBiAEVAf8BagG0AWsB/wGEAcgBhgH/ASkBoAEsAf8BNgGk
- ATkB/wE2AaQBOQH/ASoBmgEtAf8BIgGSASQB/wHbAewB20H/AegB9QHoAf8BSwGwAU0B/wEmAZgBKQH/
- ASIBkgEkAf8BIgGSASQB/wETAYgBFQH/AWoBtAFrAf8BhAHIAYYB/wEpAaABLAH/ATYBpAE5Af8BNgGk
- ATkB/wEqAZoBLQH/ASEBjAEjAf8B2wHsAdtB/wHoAfUB6AH/AUsBsAFNAf8BJgGYASkB/wEiAZIBJAH/
- ASIBkgEkAf8BEwGIARUB/wFqAbQBawH/A+IB/wPZAf8D2QH/A9kB/wPZAf8D4gH/A/5B/wP+Af8BbQHA
- AW8B/wEmAZgBKQH/AR8BigEhAf8BHwGSASEB/wEXAYwBGQH/AUkBpQFMAf8BmgH5AaEB/wF4AfIBgQH/
- AXoB8gGBAf8BegHyAYEB/wFaAeABYwH/AVkBzwFhAf8B+QH8AflB/wP+Af8BbQHAAW8B/wEmAZgBKQH/
- AR8BigEhAf8BHwGSASEB/wEXAYwBGQH/AUkBpQFMAf8BaQG7AWsB/wEuAaIBMgH/ATYBpAE5Af8BNgGk
- ATkB/wEiAZIBJAH/AT8BnQFBAf8B+QH8AflB/wP+Af8BbQHAAW8B/wEmAZgBKQH/AR8BigEhAf8BIgGS
- ASQB/wEXAYwBGQH/AUkBpQFMAf8BaQG7AWsB/wEuAaIBMgH/ATYBpAE5Af8BNgGkATkB/wEiAZIBJAH/
- AT4BmwFAAf8B+QH8AflB/wP+Af8BbQHAAW8B/wEjAZkBJgH/AR8BigEhAf8BHwGSASEB/wEXAYwBGQH/
- AUkBpQFMAf8B9QH0AfUB/wPxAf8D8QH/A/EB/wPxAf8B9QH0AfUB/wP+Qf8D/gH/AdIB6gHSAf8BuAHd
- AbkB/wGzAdsBtAH/AbMB2wG0Af8BswHbAbQB/wHBAeIBwgH/Ad0B+wHgAf8B0QH6AdQB/wHRAfoB1AH/
- AdQB/AHYAf8ByAH0AcwB/wHIAfQBzAH/A/5B/wP+Af8B0gHqAdIB/wG5AeABugH/AbMB2wG0Af8BswHb
- AbQB/wGzAdsBtAH/AcEB4gHCAf8ByQHiAckB/wG5AeABugH/AbkB4AG6Af8BuQHgAboB/wGzAdsBtAH/
- AcEB4gHCAf8D/kH/A/4B/wHSAeoB0gH/AbkB4AG6Af8BswHbAbQB/wGzAdsBtAH/AbMB2wG0Af8BvwHg
- AcAB/wHJAeIByQH/AbkB4AG6Af8BuQHgAboB/wG5AeABugH/AbMB2wG0Af8BwQHiAcIB/wP+Qf8D/gH/
- AdIB6gHSAf8BuAHdAbkB/wGzAdsBtAH/AbMB2wG0Af8BswHbAbQB/wHBAeIBwgH/A+kB/wPiAf8D4gH/
- A+IB/wPiAf8D7AH/A/5B/wP+Af8BpAHYAaUB/wFwAbkBcgH/AWoBtAFrAf8BagG0AWsB/wFqAbQBawH/
- AX8BvAGBAf8B7QHoAe0B/wHoAeQB6AH/AegB5AHoAf8B6AHkAegB/wHoAeQB6AH/AfEB7AHxAf8D/kH/
- A/4B/wGkAdgBpQH/AXABuQFyAf8BagG0AWsB/wFqAbQBawH/AWoBtAFrAf8BfwG8AYEB/wGSAdABkwH/
- AXwBwgF9Af8BfAHCAX0B/wF8AcIBfQH/AWkBuwFrAf8BiQHCAYoB/wP+Qf8D/gH/AaQB2AGlAf8BcAG5
- AXIB/wFqAbQBawH/AWoBtAFrAf8BagG0AWsB/wF/AcEBgQH/AZIB0AGTAf8BfAHCAX0B/wF8AcIBfQH/
- AXwBwgF9Af8BaQG7AWsB/wGJAcIBigH/A/5B/wP+Af8BpAHYAaUB/wFwAbkBcgH/AWoBtAFrAf8BagG0
- AWsB/wFqAbQBawH/AX8BvAGBAf8D4gH/A9YB/wPZAf8D2QH/A9YB/wPcAf8D/kH/A/4B/wFiAboBYwH/
- AR8BkgEhAf8BGgGMARwB/wEcAZABHgH/ARMBiAEVAf8BSQGlAUwB/wPiAf8D1gH/A9kB/wPZAf8D1gH/
- A9wB/wP+Qf8B+QH8AfkB/wFiAboBYwH/AR8BkgEhAf8BGgGMARwB/wEcAZABHgH/ARMBiAEVAf8BSQGl
- AUwB/wFpAbsBawH/ASkBoAEsAf8BMgGjATQB/wEyAaMBNAH/ARwBkAEeAf8BNAGVATYB/wH5AfwB+UH/
- AfkB/AH5Af8BYgG6AWMB/wEfAZIBIQH/ARoBjAEcAf8BHAGQAR4B/wETAYgBFQH/AUkBpQFMAf8BaQG7
- AWsB/wEpAaABLAH/ATIBowE0Af8BMgGjATQB/wEcAZABHgH/ATQBlQE2Af8B+QH8AflB/wH7Af4B/AH/
- AWIBugFjAf8BHwGSASEB/wEaAYwBHAH/ARwBkAEeAf8BEwGIARUB/wFJAaUBTAH/A+kB/wPZAf8D2QH/
- A9kB/wPZAf8D2QH/A/lB/wHgAfEB4QH/AUMBqwFFAf8BKgGaAS0B/wEiAZIBJAH/ASIBkgEkAf8BGgGM
- ARwB/wFwAbkBcgH/A+kB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A/lB/wHgAfEB4QH/AUMBqwFFAf8BKgGa
- AS0B/wEiAZIBJAH/ASIBkgEkAf8BFwGMARkB/wFwAbkBcgH/AYkByAGKAf8BMgGjATQB/wE7AakBPQH/
- ATsBqQE9Af8BMgGjATQB/wEfAYoBIQH/AdcB6gHYQf8B5wH1AegB/wFDAasBRQH/ASoBmgEtAf8BIgGS
- ASQB/wEiAZIBJAH/ARcBjAEZAf8BcAG5AXIB/wGJAcgBigH/ATIBowE0Af8BOwGpAT0B/wE7AakBPQH/
- ATIBowE0Af8BHwGKASEB/wHXAeoB2EH/AeAB8QHhAf8BQwGrAUUB/wEqAZoBLQH/ASIBkgEkAf8BIgGS
- ASQB/wEXAYwBGQH/AXABuQFyAf8D8QH/A9kB/wPZAf8D2QH/A9kB/wPWAf8D7AH/A/45/wP+Af8BqwHY
- AawB/wEjAZkBJgH/AScBlgEpAf8BJwGWASkB/wEnAZYBKQH/ARoBjAEcAf8BmQHLAZkB/wPxAf8D2QH/
- A9kB/wPZAf8D2QH/A9YB/wPsAf8D/jn/A/4B/wGrAdgBrAH/ASMBmQEmAf8BJwGWASkB/wEnAZYBKQH/
- AScBlgEpAf8BGgGMARwB/wGZAcsBmQH/AbMB2wG0Af8BMgGjATQB/wE7AakBPQH/ATsBqQE9Af8BOwGp
- AT0B/wEKAYMBDAH/AYkBwgGKAf8D/jn/A/4B/wGrAdgBrAH/ASMBmQEmAf8BJwGWASkB/wEnAZYBKQH/
- AScBlgEpAf8BGgGMARwB/wGZAcsBmQH/AbMB2wG0Af8BMgGjATQB/wE7AakBPQH/ATsBqQE9Af8BOwGp
- AT0B/wEKAYMBDAH/AYkBwgGKAf8D/jn/A/4B/wGrAdgBrAH/ASMBmQEmAf8BJwGWASkB/wEnAZYBKQH/
- AScBlgEpAf8BGgGMARwB/wGZAcsBmQH/A/4B/wPcAf8D2QH/A9kB/wPZAf8D4gH/AfUB9AH1Af8D/jn/
- AfkB/AH5Af8B2wHsAdsB/wF/AcEBgQH/AScBlgEpAf8BHwGSASEB/wEiAZIBJAH/ASoBmgEtAf8B2wHs
- AdsB/wP5Af8D3AH/A9kB/wPZAf8D2QH/A+IB/wH1AfQB9QH/A/45/wH5AfwB+QH/AdsB7AHbAf8BfwHB
- AYEB/wEnAZYBKQH/AR8BkgEhAf8BIgGSASQB/wEqAZoBLQH/AdsB7AHbAf8B5wH1AegB/wFKAawBTQH/
- ATsBqQE9Af8BMgGjATQB/wEyAaMBNAH/AWEBsQFiAf8ByQHiAckB/wP+Of8B+QH8AfkB/wHbAewB2wH/
- AX8BwQGBAf8BJwGWASkB/wEfAZIBIQH/ASIBkgEkAf8BKgGaAS0B/wHbAewB2wH/AeAB8QHhAf8BSwGw
- AU0B/wE7AakBPQH/ATIBowE0Af8BMgGjATQB/wFnAbYBaQH/AckB4gHJAf8B+QH8Afk5/wH5AfwB+QH/
- AdsB7AHbAf8BfwHBAYEB/wEnAZYBKQH/AR8BkgEhAf8BIgGSASQB/wEqAZoBLQH/AdsB7AHbAf8D/gH/
- A+IB/wPWAf8D4gH/A/EB/wP5Af8D4gH/A+kB/wP+Mf8D/gH/AYkByAGKAf8BWwGxAV0B/wHSAeoB0gH/
- AckB4gHJAf8BWwGxAV0B/wETAYgBFQH/AWEBsQFiAf8D/gH/A/4B/wPiAf8D1gH/A+IB/wPxAf8D+QH/
- A+IB/wPpAf8D/jH/A/4B/wGJAcgBigH/AVsBsQFdAf8B0gHqAdIB/wHJAeIByQH/AVsBsQFdAf8BEwGI
- ARUB/wFhAbEBYgH/A/4B/wP+Af8BfAHCAX0B/wEpAaABLAH/AVsBsQFdAf8BuQHgAboB/wHqAfgB6wH/
- AYMB4QGJAf8BhQHaAYoB/wP+Mf8D/gH/AYkByAGKAf8BWwGxAV0B/wHSAeoB0gH/AckB4gHJAf8BWwGx
- AV0B/wETAYgBFQH/AWEBsQFiAf8D/gH/A/4B/wF8AcIBfQH/ASkBoAEsAf8BWwGxAV0B/wG5AeABugH/
- AeAB8QHhAf8BYQGxAWIB/wF0AbUBdQH/A/4x/wP+Af8BiQHIAYoB/wFbAbEBXQH/AdIB6gHSAf8ByQHi
- AckB/wFbAbEBXQH/ARMBiAEVAf8BYQGxAWIB/wP+Af8D/gH/AfUB9AH1Af8D7AH/A/kB/wPsAf8D3AH/
- A9kB/wPZAf8D7AH/A/4p/wP+Af8BoAHRAaEB/wEjAZkBJgH/ASIBkgEkAf8BKgGaAS0B/wF8AcIBfQH/
- AdIB6gHSAf8BoAHRAaEB/wHBAeIBwgH/A/4B/wP+Af8B9QH0AfUB/wPsAf8D+QH/A+wB/wPcAf8D2QH/
- A9kB/wPsAf8D/in/A/4B/wGgAdEBoQH/ASIBkgEkAf8BIgGSASQB/wEqAZoBLQH/AXwBwgF9Af8B0gHq
- AdIB/wGgAdEBoQH/AcEB4gHCAf8D/gH/A/4B/wHLAegBywH/AZoB0gGbAf8B4AH4AeIB/wHFAfoByQH/
- AZIB+wGZAf8BagHoAXQB/wE1AcUBPgH/AZsB4gGgAf8D/in/A/4B/wGgAdEBoQH/ASMBmQEmAf8BIgGS
- ASQB/wEqAZoBLQH/AXwBwgF9Af8B0gHqAdIB/wGgAdEBoQH/AcEB4gHCAf8D/gH/A/4B/wHOAesB0AH/
- AZoB0gGbAf8B3AHwAd0B/wGaAdIBmwH/AUUBsAFHAf8BJgGYASkB/wESAYQBFAH/AZABxQGRAf8D/in/
- A/4B/wGgAdEBoQH/ASMBmQEmAf8BIgGSASQB/wEqAZoBLQH/AXwBwgF9Af8B0gHqAdIB/wGgAdEBoQH/
- AcEB4gHCAf8D/gX/A/4B/wH1AfQB9QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A+kB/wP+Af8D/hn/
- A/4B/wP+Af8BmQHLAZkB/wEcAZABHgH/ASoBmgEtAf8BLgGcATEB/wEqAZoBLQH/AR8BkgEhAf8BLgGc
- ATEB/wG4Ad0BuQH/A/4J/wP+Af8B9QH0AfUB/wPcAf8D2QH/A9kB/wPZAf8D2QH/A9kB/wPpAf8D/gH/
- A/4Z/wP+Af8D/gH/AZkBywGZAf8BHAGQAR4B/wEqAZoBLQH/AS4BnAExAf8BKgGaAS0B/wEfAZIBIQH/
- AS4BnAExAf8BuAHdAbkB/wP+Cf8D/gH/AeoB+AHrAf8BkgH7AZkB/wGDAfkBjAH/AYMB+QGMAf8BiQH6
- AZEB/wFqAegBdAH/ATUBxQE+Af8BjwHdAZQB/wP+Af8D/hn/A/4B/wP+Af8BmQHLAZkB/wEcAZABHgH/
- ASoBmgEtAf8BLgGcATEB/wEqAZoBLQH/AR8BkgEhAf8BLgGcATEB/wG4Ad0BuQH/A/4J/wP+Af8B0gHq
- AdIB/wFSAbIBVAH/ATIBowE0Af8BOwGpAT0B/wE/AakBQQH/AS4BnAExAf8BEgGEARQB/wF/AbwBgQH/
- A/4B/wP+Gf8D/gH/A/4B/wGZAcsBmQH/ARwBkAEeAf8BKgGaAS0B/wEuAZwBMQH/ASoBmgEtAf8BHwGS
- ASEB/wEuAZwBMQH/AbgB3QG5Af8D/gn/A/4B/wP5Af8D3AH/A9kB/wPZAf8D2QH/A9kB/wPWAf8D6QH/
- A/EB/wPsAf8D+QH/A/4B/wP+Af8D/gH/AfkB/AH5Af8B4AHvAeAB/wGJAcIBigH/AZYByQGYAf8BqgHS
- AasB/wEjAZkBJgH/AS4BnAExAf8BLgGcATEB/wEqAZoBLQH/ASYBmAEpAf8BMQGdATMB/wHSAeoB0gH/
- A/4J/wP+Af8D+QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D1gH/A+kB/wPxAf8D7AH/A/kB/wP+Af8D/gH/
- A/4B/wH5AfwB+QH/AeAB7wHgAf8BiQHCAYoB/wGWAckBmAH/AaoB0gGrAf8BIwGZASYB/wEuAZwBMQH/
- AS4BnAExAf8BKgGaAS0B/wEmAZgBKQH/AS4BnAExAf8B0gHqAdIB/wP+Cf8D/gH/AeoB+AHrAf8BkgH7
- AZkB/wGDAfkBjAH/AYkB+gGRAf8BiQH6AZEB/wGJAfoBkQH/AWoB6AF0Af8BmAHlAZwB/wH1AfQB9QH/
- A+wB/wP5Af8D/gH/A/4B/wP+Af8B+QH8AfkB/wHgAfEB4QH/AYkBwgGKAf8BlgHJAZgB/wGqAdIBqwH/
- ASMBmQEmAf8BLgGcATEB/wEuAZwBMQH/ASoBmgEtAf8BJgGYASkB/wEuAZwBMQH/AdIB6gHSAf8D/gn/
- A/4B/wHgAfEB4QH/AUsBsAFNAf8BOAGoAToB/wE/AakBQQH/ATsBqQE9Af8BPwGpAUEB/wEjAZkBJgH/
- AYkBwgGKAf8BqgHSAasB/wGCAb0BgwH/AdsB7AHbAf8B+QH8AfkB/wP+Af8D/gH/A/4B/wHgAfEB4QH/
- AZ4B8wGkAf8BqQHpAa0B/wGqAdIBqwH/ASIBkgEkAf8BLgGcATEB/wEuAZwBMQH/ASoBmgEtAf8BJgGY
- ASkB/wEuAZwBMQH/AdIB6gHSAf8D/g3/A/4B/wPxAf8D2QH/A9kB/wPZAf8D2QH/A+IB/wP5Af8D3AH/
- A9YB/wPZAf8D3AH/AfgB8gH4Af8BqgHSAasB/wE0AZUBNgH/ASEBjAEjAf8BEwGIARUB/wEqAZoBLQH/
- AdIB6gHSAf8BcgG8AXQB/wEmAZgBKQH/AS4BnAExAf8BKgGaAS0B/wEmAZgBKQH/AasB2AGsAf8D/hH/
- A/4B/wPxAf8D2QH/A9kB/wPZAf8D2QH/A+IB/wP5Af8D3AH/A9YB/wPZAf8D3AH/AfgB8gH4Af8BqgHS
- AasB/wE0AZUBNgH/ASEBjAEjAf8BEwGIARUB/wEqAZoBLQH/AdIB6gHSAf8BcgG8AXQB/wEmAZgBKQH/
- AS4BnAExAf8BKgGaAS0B/wEmAZgBKQH/AasB2AGsAf8D/hH/A/4B/wHYAfoB2wH/AYkB+gGRAf8BiQH6
- AZEB/wGJAfoBkQH/AYMB+QGMAf8BmgH5AaEB/wHwAfkB8QH/AeEB3gHhAf8D1gH/AdwB2gHcAf8D3AH/
- AfgB8gH4Af8BqgHSAasB/wE0AZUBNgH/ASEBjAEjAf8BEwGIARUB/wEqAZoBLQH/AdIB6gHSAf8BcgG8
- AXQB/wEmAZgBKQH/AS4BnAExAf8BKgGaAS0B/wEmAZgBKQH/AasB2AGsAf8D/hH/A/4B/wG5AeABugH/
- ATsBqQE9Af8BOwGpAT0B/wE/AakBQQH/ATYBpAE5Af8BXwG6AWEB/wHgAfEB4QH/AUIBogFEAf8BEAGI
- AREB/wEfAYoBIQH/ATQBlQE2Af8BmQHLAZkB/wG5AewBvAH/AUwBzQFUAf8BTAHNAVQB/wFMAc0BVAH/
- AWIB4gFsAf8B4AH4AeIB/wFyAbwBdAH/ASYBmAEpAf8BLgGcATEB/wEqAZoBLQH/ASYBmAEpAf8BqwHY
- AawB/wP+Ff8D/gH/A/EB/wPZAf8D2QH/A9kB/wPxAf8D7AH/A9kB/wPZAf8D2QH/A9YB/wHxAewB8QH/
- AZIByQGTAf8BFwGRARoB/wEuAZwBMQH/ATIBowE0Af8BKgGaAS0B/wFyAbwBdAH/AdIB6gHSAf8BMgGj
- ATQB/wEmAZgBKQH/ASoBmgEtAf8BoAHRAaEB/wP+Gf8D/gH/A/EB/wPZAf8D2QH/A9kB/wPxAf8D7AH/
- A9kB/wPZAf8D2QH/A9YB/wHxAewB8QH/AZIByQGTAf8BFwGRARoB/wEuAZwBMQH/ATIBowE0Af8BKgGa
- AS0B/wFyAbwBdAH/AdIB6gHSAf8BMgGjATQB/wEmAZgBKQH/ASoBmgEtAf8BoAHRAaEB/wP+Gf8D/gH/
- AdEB+gHUAf8BiQH6AZEB/wGDAfkBjAH/AYMB+QGMAf8B0QH6AdQB/wHxAewB8QH/A9kB/wPZAf8D2QH/
- A9YB/wHxAewB8QH/AZIByQGTAf8BFwGRARoB/wEuAZwBMQH/ATIBowE0Af8BKgGaAS0B/wFyAbwBdAH/
- AdIB6gHSAf8BMgGjATQB/wEmAZgBKQH/ASoBmgEtAf8BoAHRAaEB/wP+Gf8D/gH/AbMB2wG0Af8BOwGp
- AT0B/wE4AagBOgH/ATYBpAE5Af8BuQHgAboB/wGaAdIBmwH/ATIBowE0Af8BOwGpAT0B/wEyAaMBNAH/
- ARwBkAEeAf8BhQHCAYYB/wG0AfMBuAH/AVQB4AFdAf8BagHoAXQB/wFxAesBegH/AWoB6AF0Af8BngHz
- AaQB/wHSAeoB0gH/ATIBowE0Af8BJgGYASkB/wEqAZoBLQH/AaAB0QGhAf8D/h3/A/4B/wPxAf8D3AH/
- A+IB/wH1AfQB9QH/A9kB/wPZAf8D2QH/A9kB/wPZAf8B8QHsAfEB/wGaAdIBmwH/ASkBoAEsAf8BNgGk
- ATkB/wE2AaQBOQH/ATIBowE0Af8BKgGaAS0B/wG5AeABugH/AYkByAGKAf8BNgGkATkB/wGzAdsBtAH/
- A/4h/wP+Af8D8QH/A9wB/wPiAf8B9QH0AfUB/wPZAf8D2QH/A9kB/wPZAf8D2QH/AfEB7AHxAf8BmgHS
- AZsB/wEpAaABLAH/ATYBpAE5Af8BNgGkATkB/wEyAaMBNAH/ASoBmgEtAf8BuQHgAboB/wGJAcgBigH/
- ATYBpAE5Af8BswHbAbQB/wP+If8D/gH/AdgB+gHbAf8BkgH7AZkB/wGkAfoBqwH/AfUB9AH1Af8B3AHa
- AdwB/wPZAf8D2QH/A9kB/wPZAf8B8QHsAfEB/wGaAdIBmwH/ASkBoAEsAf8BNgGkATkB/wE2AaQBOQH/
- ATIBowE0Af8BKgGaAS0B/wG5AeABugH/AYkByAGKAf8BNgGkATkB/wGzAdsBtAH/A/4h/wP+Af8BwQHi
- AcIB/wFLAbABTQH/AW0BwAFvAf8B0gHqAdIB/wFDAasBRQH/ATsBqQE9Af8BOwGpAT0B/wE7AakBPQH/
- AS4BogEyAf8BkgHJAZMB/wHFAfoByQH/AXUB8QF+Af8BegHyAYEB/wF6AfIBgQH/AXEB6wF6Af8BagHo
- AXQB/wHRAfoB1AH/AYUBwgGGAf8BNgGkATkB/wGzAdsBtAH/A/4l/wP+Af8D+QH/A/kB/wPiAf8D1gH/
- A9kB/wPZAf8D2QH/A9kB/wHxAewB8QH/AZoB0gGbAf8BKQGgASwB/wE2AaQBOQH/ATYBpAE5Af8BMgGj
- ATQB/wEjAZkBJgH/AVYBsQFZAf8B4AHxAeEB/wHgAfEB4QH/A/4p/wP+Af8D+QH/A/kB/wPiAf8D1gH/
- A9kB/wPZAf8D2QH/A9kB/wHxAewB8QH/AZoB0gGbAf8BKQGgASwB/wE2AaQBOQH/ATYBpAE5Af8BMgGj
- ATQB/wEjAZkBJgH/AVYBsQFZAf8B4AHxAeEB/wHgAfEB4QH/A/4p/wP+Af8B6gH4AesB/wHqAfgB6wH/
- AegB5AHoAf8D1gH/A9kB/wPZAf8D2QH/A9kB/wHxAewB8QH/AZoB0gGbAf8BKQGgASwB/wE2AaQBOQH/
- ATYBpAE5Af8BMgGjATQB/wEjAZkBJgH/AVYBsQFZAf8B4AHxAeEB/wHgAfEB4QH/A/4p/wP+Af8B4AHx
- AeEB/wHcAfAB3QH/AXwBwgF9Af8BKQGgASwB/wE7AakBPQH/ATsBqQE9Af8BOwGpAT0B/wEuAaIBMgH/
- AZIByQGTAf8BxQH6AckB/wF1AfEBfgH/AXoB8gGBAf8BegHyAYEB/wFxAesBegH/AWoB6AF0Af8BggHx
- AYoB/wHgAfEB4QH/AdwB8AHdAf8D/i3/A/4B/wP+Af8B9QH0AfUB/wPpAf8D3AH/A9kB/wPWAf8D1gH/
- AfEB7AHxAf8BmgHSAZsB/wEjAZkBJgH/ASkBoAEsAf8BMgGjATQB/wFDAasBRQH/AXwBwgF9Af8BxwHl
- AcgB/wP+Af8D/jH/A/4B/wP+Af8B9QH0AfUB/wPpAf8D3AH/A9kB/wPWAf8D1gH/AfEB7AHxAf8BmgHS
- AZsB/wEjAZkBJgH/ASkBoAEsAf8BMgGjATQB/wFDAasBRQH/AXwBwgF9Af8BxwHlAcgB/wP+Af8D/jH/
- A/4B/wP+Af8B9QH0AfUB/wHoAeQB6AH/A9wB/wPZAf8D1gH/A9YB/wHxAewB8QH/AZoB0gGbAf8BIwGZ
- ASYB/wEpAaABLAH/ATIBowE0Af8BQwGrAUUB/wF8AcIBfQH/AccB5QHIAf8D/gH/A/4x/wP+Af8D/gH/
- Ac4B6wHQAf8BhAHIAYYB/wFLAbABTQH/ATgBqAE6Af8BLgGiATIB/wEnAaABKQH/AYkByAGKAf8BxQH6
- AckB/wF1AfEBfgH/AXUB8QF+Af8BdQHxAX4B/wGCAfEBigH/AaUB8gGqAf8B2AH6AdsB/wP+Af8D/jn/
- A/4B/wP+Af8D/gH/A/EB/wPpAf8D4gH/AfgB8gH4Af8BswHbAbQB/wFpAbsBawH/AY4BzQGQAf8BuQHg
- AboB/wHoAfUB6AH/A/4B/wP+Qf8D/gH/A/4B/wP+Af8D8QH/A+kB/wPiAf8B+AHyAfgB/wGzAdsBtAH/
- AWkBuwFrAf8BjgHNAZAB/wG5AeABugH/AegB9QHoAf8D/gH/A/5B/wP+Af8D/gH/A/4B/wH1AfQB9QH/
- A+wB/wPiAf8B+AHyAfgB/wGzAdsBtAH/AWkBuwFrAf8BjgHNAZAB/wG5AeABugH/AegB9QHoAf8D/gH/
- A/5B/wP+Af8D/gH/AeoB+AHrAf8BuQHgAboB/wGSAdABkwH/AW0BwAFvAf8BqgHSAasB/wHRAfoB1AH/
- AZ4B8wGkAf8BtAHzAbgB/wHRAfoB1AH/AfAB+QHxAf8D/gH/A/5J/wP+Af8D9gH/A+wB/wPjAf8D9QH/
- A/cB/wPiAf8D6wH/A/YB/wP+Sf8D/gH/A/4B/wP5Af8D8QH/A+kB/wPiAf8D7AH/A/EB/wPiAf8D4gH/
- A+wB/wP5Af8D/gH/A/5B/wP+Af8D/gH/A/kB/wPxAf8D6QH/A+IB/wPsAf8D8QH/A+IB/wPiAf8D7AH/
- A/kB/wP+Af8D/kH/A/4B/wP+Af8D+QH/A/EB/wPpAf8D4gH/A+wB/wPxAf8D4gH/A+IB/wPsAf8D+QH/
- A/4B/wP+Qf8D+wH/A+cB/wPbAf8D2gH/A9oB/wPaAf8D8AH/A/QB/wPaAf8D2gH/A9oB/wPbAf8D5gH/
- A/k5/wP+Af8D/gH/AfUB9AH1Af8D4gH/A9kB/wPZAf8D2QH/A9YB/wPpAf8D7AH/A9YB/wPZAf8D2QH/
- A9kB/wPiAf8D8QH/A/4B/wP+Mf8D/gH/A/4B/wH1AfQB9QH/A+IB/wPZAf8D2QH/A9kB/wPWAf8D6QH/
- A+wB/wPWAf8D2QH/A9kB/wPZAf8D4gH/A/EB/wP+Af8D/jH/A/4B/wP+Af8B9QH0AfUB/wPiAf8D2QH/
- A9kB/wPZAf8D1gH/A+kB/wPsAf8D1gH/A9kB/wPZAf8D2QH/A+IB/wPxAf8D/gH/A/4x/wP9Af8D+wH/
- A/MB/wPaAf8D2gH/A9oB/wPaAf8D2gH/A/AB/wP0Af8D2gH/A9oB/wPaAf8D2gH/A9oB/wPsAf8D/QH/
- A/wt/wP+Af8B9QH0AfUB/wH1AfQB9QH/A+wB/wPWAf8D2QH/A9kB/wPZAf8D2QH/A+kB/wPsAf8D2QH/
- A9kB/wPZAf8D2QH/A9YB/wPiAf8B9QH0AfUB/wH1AfQB9QH/A/4p/wP+Af8B9QH0AfUB/wH1AfQB9QH/
- A+wB/wPWAf8D2QH/A9kB/wPZAf8D2QH/A+kB/wPsAf8D2QH/A9kB/wPZAf8D2QH/A9YB/wPiAf8B9QH0
- AfUB/wH1AfQB9QH/A/4p/wP+Af8B9QH0AfUB/wH1AfQB9QH/A+wB/wPWAf8D2QH/A9kB/wPZAf8D2QH/
- A+kB/wPsAf8D2QH/A9kB/wPZAf8D2QH/A9YB/wHoAeQB6AH/AdAB8wHTAf8BzQHzAdAB/wP+Kf8D9wH/
- A9sB/wPeAf8D/gH/A+IB/wPaAf8D2gH/A9oB/wPaAf8D8AH/A/QB/wPaAf8D2gH/A9oB/wPaAf8D3QH/
- A/0B/wPlAf8D2gH/A/Ul/wP+Af8D8QH/A9kB/wPcAf8D+QH/A+IB/wPZAf8D2QH/A9kB/wPZAf8D6QH/
- A+wB/wPZAf8D2QH/A9kB/wPZAf8D3AH/AfUB9AH1Af8D4gH/A9kB/wPsAf8D/iH/A/4B/wPxAf8D2QH/
- A9wB/wP5Af8D4gH/A9kB/wPZAf8D2QH/A9kB/wPpAf8D7AH/A9kB/wPZAf8D2QH/A9kB/wPcAf8B9QH0
- AfUB/wPiAf8D2QH/A+wB/wP+If8D/gH/A/EB/wPZAf8D3AH/A/kB/wPiAf8D2QH/A9kB/wPZAf8D2QH/
- A+kB/wPsAf8D2QH/A9kB/wPZAf8D2QH/A9wB/wHzAfcB8wH/AWwB2wF0Af8BQgHLAUoB/wGsAeoBsAH/
- A/4h/wPzAf8D2gH/A9oB/wPaAf8D8gH/A/sB/wPaAf8D2gH/A9oB/wPaAf8D8AH/A/QB/wPaAf8D2gH/
- A9oB/wPaAf8D9QH/A/kB/wPaAf8D2gH/A9oB/wPwHf8D/gH/A+wB/wPZAf8D2QH/A9kB/wPsAf8D8QH/
- A9kB/wPZAf8D2QH/A9YB/wPpAf8D7AH/A9YB/wPZAf8D2QH/A9kB/wPsAf8D8QH/A9kB/wPZAf8D2QH/
- A+kB/wP+Gf8D/gH/A+wB/wPZAf8D2QH/A9kB/wPsAf8D8QH/A9kB/wPZAf8D2QH/A9YB/wPpAf8D7AH/
- A9YB/wPZAf8D2QH/A9kB/wPsAf8D8QH/A9kB/wPZAf8D2QH/A+kB/wP+Gf8D/gH/A+wB/wPZAf8D2QH/
- A9kB/wPsAf8D8QH/A9kB/wPZAf8D2QH/A9YB/wPpAf8D7AH/A9YB/wPZAf8D2QH/A9kB/wHxAewB8QH/
- AbQB7AG4Af8BQgHLAUoB/wFCAcsBSgH/ATwBywFFAf8BmwHiAaAB/wP+Gf8D9wH/A9oB/wPaAf8D2gH/
- A9oB/wPcAf8D/QH/A+kB/wPaAf8D3QH/A+UB/wP6Af8D+wH/A+UB/wPeAf8D2gH/A+EB/wP+Af8D4AH/
- A9oB/wPaAf8D2gH/A9oB/wP0Ff8D/gH/A/EB/wPZAf8D2QH/A9kB/wPZAf8D2QH/AfUB9AH1Af8D4gH/
- A9YB/wPcAf8D4gH/A/EB/wH1AfQB9QH/A+IB/wPcAf8D2QH/A9wB/wP5Af8D3AH/A9kB/wPZAf8D2QH/
- A9kB/wPsAf8D/hH/A/4B/wPxAf8D2QH/A9kB/wPZAf8D2QH/A9kB/wH1AfQB9QH/A+IB/wPWAf8D3AH/
- A+IB/wPxAf8B9QH0AfUB/wPiAf8D3AH/A9kB/wPcAf8D+QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D7AH/
- A/4R/wP+Af8D8QH/A9kB/wPZAf8D2QH/A9kB/wPZAf8B9QH0AfUB/wPiAf8D1gH/A9wB/wPiAf8D8QH/
- AfUB9AH1Af8D4gH/A9wB/wPZAf8B4QHeAeEB/wHqAfgB6wH/AVoB3QFjAf8BQgHQAUsB/wFJAdIBUgH/
- AUIB0AFLAf8BPAHLAUUB/wGpAekBrQH/A/4R/wP+Af8D3AH/A9oB/wPaAf8D2gH/A9oB/wPaAf8D6AH/
- A/0B/wP5Gf8D+QH/A/wB/wPwAf8D2gH/A9oB/wPaAf8D2gH/A9oB/wPbAf8D/Q3/A/4B/wP5Af8D2QH/
- A9kB/wPZAf8D2QH/A9kB/wPZAf8D4gH/A/kB/wPxAf8D/gH/A/4B/wP+Af8D/gH/A/4B/wP+Af8D8QH/
- AfUB9AH1Af8D6QH/A9YB/wPZAf8D2QH/A9kB/wPZAf8D2QH/AfUB9AH1Af8D/gn/A/4B/wP5Af8D2QH/
- A9kB/wPZAf8D2QH/A9kB/wPZAf8D4gH/A/kB/wPxAf8D/gH/A/4B/wP+Af8D/gH/A/4B/wP+Af8D8QH/
- AfUB9AH1Af8D6QH/A9YB/wPZAf8D2QH/A9kB/wPZAf8D2QH/AfUB9AH1Af8D/gn/A/4B/wP5Af8D2QH/
- A9kB/wPZAf8D2QH/A9kB/wPZAf8D4gH/A/kB/wPxAf8D/gH/A/4B/wP+Af8D/gH/A/4B/wP+Af8D8QH/
- AfgB8gH4Af8BvAH7AcEB/wFaAeABYwH/AUkB0gFSAf8BSQHSAVIB/wFJAdIBUgH/AUIBywFKAf8BQgHL
- AUoB/wHWAfQB2AH/A/4N/wP+Af8D8AH/A9sB/wPaAf8D2gH/A9oB/wPaAf8D9Cn/A/YB/wPbAf8D2gH/
- A9oB/wPaAf8D2gH/A+oB/wP+Df8D/gH/A/kB/wPpAf8D2QH/A9kB/wPZAf8D2QH/A9kB/wPsAf8D/gH/
- A/4Z/wP+Af8D/gH/A+wB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A+IB/wP5Af8D/gn/A/4B/wP5Af8D6QH/
- A9kB/wPZAf8D2QH/A9kB/wPZAf8D7AH/A/4B/wP+Gf8D/gH/A/4B/wPsAf8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wPiAf8D+QH/A/4J/wP+Af8D+QH/A+kB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A+wB/wP+Af8D/hn/
- A/4B/wP+Af8B0QH6AdQB/wGaAfkBoQH/AWsB5QF0Af8BSAHSAVEB/wFCAdABSwH/AUIB0AFLAf8BiAHi
- AY8B/wHgAfgB4gH/A/4J/wP6Af8D4QH/A/oB/wP9Af8D6QH/A9oB/wPaAf8D+TH/A/sB/wPbAf8D2gH/
- A+QB/wP8Af8D/AH/A+UB/wP5Bf8D/gH/A/EB/wPiAf8B9QH0AfUB/wH1AfQB9QH/A+IB/wPZAf8D2QH/
- A/EB/wP+Kf8D/gH/A/EB/wPZAf8D2QH/A+IB/wH1AfQB9QH/AfUB9AH1Af8D4gH/A/EB/wP+Af8D/gH/
- A/EB/wPiAf8B9QH0AfUB/wH1AfQB9QH/A+IB/wPZAf8D2QH/A/EB/wP+Kf8D/gH/A/EB/wPZAf8D2QH/
- A+IB/wH1AfQB9QH/AfUB9AH1Af8D4gH/A/EB/wP+Af8D/gH/A/EB/wPiAf8B9QH0AfUB/wH1AfQB9QH/
- A+IB/wPZAf8D2QH/A/EB/wP+Kf8D/gH/Ad0B+wHgAf8BmgH5AaEB/wFaAeABYwH/AXQB3AF7Af8BzQHz
- AdAB/wHJAeIByQH/AVQBpwFVAf8BqgHSAasB/wP+Bf8D6AH/A9oB/wPaAf8D6AH/A/0B/wP5Af8D9zn/
- A/cB/wP2Af8D/gH/A+4B/wPbAf8D2gH/A+UF/wP+Af8D4gH/A9YB/wPZAf8D4gH/AfUB9AH1Af8D8QH/
- A+wB/wP+Mf8D/gH/A+wB/wPxAf8D+QH/A+kB/wPZAf8D1gH/A+IB/wP+Af8D/gH/A+IB/wPWAf8D2QH/
- A+IB/wH1AfQB9QH/A/EB/wPsAf8D/jH/A/4B/wPsAf8D8QH/A/kB/wPpAf8D2QH/A9YB/wPiAf8D/gH/
- A/4B/wPiAf8D1gH/A9kB/wPiAf8B9QH0AfUB/wPxAf8D7AH/A/4x/wP+Af8B0QH6AdQB/wHUAfwB2AH/
- AdsB7AHbAf8BcgG8AXQB/wEfAYoBIQH/AQoBgwEMAf8BUwGpAVUB/wP+Af8D/gH/A9wB/wPaAf8D2gH/
- A9oB/wPaAf8D9kH/A/oB/wPdAf8D2gH/A9oB/wPaAf8D2wH/A/0B/wP5Af8D3AH/A9kB/wPZAf8D2QH/
- A9kB/wPsAf8D/jn/A/4B/wPxAf8D3AH/A9kB/wPZAf8D2QH/A9kB/wP5Af8D+QH/A9wB/wPZAf8D2QH/
- A9kB/wPZAf8D7AH/A/45/wP+Af8D8QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D+QH/A/kB/wPcAf8D2QH/
- A9kB/wPZAf8D2QH/A+wB/wP+Of8D/gH/AbkB4AG6Af8BQAGnAUIB/wETAYgBFQH/AR8BigEhAf8BGgGM
- ARwB/wEiAZIBJAH/AdIB6gHSAf8D+AH/A9oB/wPaAf8D2gH/A9oB/wPaAf8D9kH/A/kB/wPaAf8D2gH/
- A9oB/wPaAf8D2gH/A/UB/wPxAf8D2QH/A9kB/wPZAf8D2QH/A9kB/wPsAf8D/jn/A/4B/wPsAf8D2QH/
- A9kB/wPZAf8D2QH/A9kB/wPsAf8D8QH/A9kB/wPZAf8D2QH/A9kB/wPZAf8D7AH/A/45/wP+Af8D7AH/
- A9kB/wPZAf8D2QH/A9kB/wPZAf8D7AH/A/EB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A+wB/wP+Of8D/gH/
- AbMB2wG0Af8BMgGjATQB/wEiAZIBJAH/ASIBkgEkAf8BIgGSASQB/wETAYgBFQH/AZIByQGTAf8D7QH/
- A9oB/wPaAf8D2gH/A9oB/wPcSf8D3QH/A9oB/wPaAf8D2gH/A9oB/wPrAf8D6QH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D+UH/A/kB/wPcAf8D2QH/A9kB/wPZAf8D2QH/A+IB/wPpAf8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wP5Qf8D+QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D4gH/A+kB/wPZAf8D2QH/A9kB/wPZAf8D2QH/
- A/lB/wHoAfUB6AH/AUsBsAFNAf8BJgGYASkB/wEiAZIBJAH/ASIBkgEkAf8BEwGIARUB/wFqAbQBawH/
- A+YB/wPaAf8D2gH/A9oB/wPaAf8D4kn/A+YB/wPaAf8D2gH/A9oB/wPaAf8D4wH/A+IB/wPZAf8D2QH/
- A9kB/wPZAf8D4gH/A/5B/wP+Af8D4gH/A9kB/wPZAf8D2QH/A9kB/wPiAf8D4gH/A9kB/wPZAf8D2QH/
- A9kB/wPiAf8D/kH/A/4B/wPiAf8D2QH/A9kB/wPZAf8D2QH/A+IB/wPiAf8D2QH/A9kB/wPZAf8D2QH/
- A+IB/wP+Qf8D/gH/AW0BwAFvAf8BJgGYASkB/wEfAYoBIQH/AR8BkgEhAf8BFwGMARkB/wFJAaUBTAH/
- A/sB/wP5Af8D+QH/A/kB/wP5Af8D/Un/A/0B/wP5Af8D+QH/A/kB/wP5Af8D+wH/AfUB9AH1Af8D8QH/
- A/EB/wPxAf8D8QH/AfUB9AH1Af8D/kH/A/4B/wH1AfQB9QH/A/EB/wPxAf8D8QH/A/EB/wH1AfQB9QH/
- AfUB9AH1Af8D8QH/A/EB/wPxAf8D8QH/AfUB9AH1Af8D/kH/A/4B/wH1AfQB9QH/A/EB/wPxAf8D8QH/
- AfQB8QHzAf8B9QH0AfUB/wH1AfQB9QH/A/EB/wPxAf8D8QH/A/EB/wH1AfQB9QH/A/5B/wP+Af8B0gHq
- AdIB/wG4Ad0BuQH/AbMB2wG0Af8BswHbAbQB/wGzAdsBtAH/AcEB4gHCAf8D8AH/A+kB/wPqAf8D6gH/
- A+kB/wP0Sf8D9gH/A+kB/wPqAf8D6gH/A+kB/wPvAf8D6QH/A+IB/wPiAf8D4gH/A+IB/wPsAf8D/kH/
- A/4B/wPsAf8D4gH/A+IB/wPiAf8D4gH/A+kB/wPpAf8D4gH/A+IB/wPiAf8D4gH/A+wB/wP+Qf8D/gH/
- AcUB+gHJAf8BlAHwAZoB/wGDAeEBiQH/AYMB4QGJAf8BgQHgAYYB/wGSAeYBmAH/A+kB/wPiAf8D4gH/
- A+IB/wPiAf8D7AH/A/5B/wP+Af8BpAHYAaUB/wFwAbkBcgH/AWoBtAFrAf8BagG0AWsB/wFqAbQBawH/
- AX8BvAGBAf8D5gH/A9oB/wPaAf8D2gH/A9oB/wPhSf8D5QH/A9oB/wPaAf8D2gH/A9oB/wPjAf8D4gH/
- A9YB/wPZAf8D2QH/A9YB/wPcAf8D/kH/A/4B/wPiAf8D1gH/A9kB/wPZAf8D1gH/A+IB/wPiAf8D1gH/
- A9kB/wPZAf8D1gH/A9wB/wP+Qf8D/gH/AZoB+QGhAf8BXwHiAWkB/wFJAdIBUgH/AUsB2QFUAf8BQgHQ
- AUsB/wFsAdsBdAH/A+IB/wPWAf8D2QH/A9kB/wPWAf8D3AH/A/5B/wP+Af8BYgG6AWMB/wEfAZIBIQH/
- ARoBjAEcAf8BHAGQAR4B/wETAYgBFQH/AUkBpQFMAf8D7gH/A9oB/wPaAf8D2gH/A9oB/wPbAf8D/kX/
- A90B/wPaAf8D2gH/A9oB/wPaAf8D6wH/A+kB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A/lB/wP5Af8D3AH/
- A9kB/wPZAf8D2QH/A9kB/wPiAf8D6QH/A9kB/wPZAf8D2QH/A9kB/wPZAf8D+UH/Ae8B/AHwAf8BggHx
- AYoB/wFiAeIBbAH/AVUB2wFeAf8BVQHbAV4B/wFJAdIBUgH/AYwB5gGSAf8D6QH/A9kB/wPZAf8D2QH/
- A9kB/wPZAf8D+UH/AeAB8QHhAf8BQwGrAUUB/wEqAZoBLQH/ASIBkgEkAf8BIgGSASQB/wEaAYwBHAH/
- AXABuQFyAf8D+AH/A9oB/wPaAf8D2gH/A9oB/wPaAf8D9kH/A/kB/wPaAf8D2gH/A9oB/wPaAf8D2gH/
- A/YB/wPxAf8D2QH/A9kB/wPZAf8D2QH/A9YB/wPsAf8D/jn/A/4B/wPsAf8D1gH/A9kB/wPZAf8D2QH/
- A9kB/wPsAf8D8QH/A9kB/wPZAf8D2QH/A9kB/wPWAf8D7AH/A/45/wP+Af8BxQH6AckB/wFnAewBcQH/
- AVoB3QFjAf8BWgHdAWMB/wFVAdsBXgH/AUsB2QFUAf8BsAHsAbQB/wPxAf8D2QH/A9kB/wPZAf8D2QH/
- A9YB/wPsAf8D/jn/A/4B/wGrAdgBrAH/ASMBmQEmAf8BJwGWASkB/wEnAZYBKQH/AScBlgEpAf8BGgGM
- ARwB/wGZAcsBmQH/A/4B/wPdAf8D2gH/A9oB/wPaAf8D5gH/A/1B/wP+Af8D7AH/A9sB/wPaAf8D2gH/
- A9wB/wP+Af8D+QH/A9wB/wPZAf8D2QH/A9kB/wPiAf8B9QH0AfUB/wP+Of8D/gH/A/kB/wPpAf8D2QH/
- A9kB/wPZAf8D2QH/A/kB/wP5Af8D3AH/A9kB/wPZAf8D2QH/A+IB/wH1AfQB9QH/A/45/wH5AfwB+QH/
- AeAB+AHiAf8BpQHyAaoB/wFaAd0BYwH/AVUB2wFeAf8BVQHbAV4B/wFaAd0BYwH/AeAB+AHiAf8D+QH/
- A9wB/wPZAf8D2QH/A9kB/wPiAf8B9QH0AfUB/wP+Of8B+QH8AfkB/wHbAewB2wH/AX8BwQGBAf8BJwGW
- ASkB/wEfAZIBIQH/ASIBkgEkAf8BKgGaAS0B/wHbAewB2wX/A+oB/wPaAf8D4AH/A/kB/wP+Af8D6gH/
- A/A5/wPzAf8D5AH/A/0B/wP8Af8D5QH/A9oB/wPnBf8D/gH/A+IB/wPWAf8D4gH/A/EB/wP5Af8D4gH/
- A+kB/wP+Mf8D/gH/A+kB/wPiAf8B9QH0AfUB/wH1AfQB9QH/A+IB/wPWAf8D4gH/A/4B/wP+Af8D4gH/
- A9YB/wPiAf8D8QH/A/kB/wPiAf8D6QH/A/4x/wP+Af8BiQHIAYoB/wFZAawBWwH/AckB4gHJAf8B2AH6
- AdsB/wGDAesBiwH/AUsB2QFUAf8BgwHhAYkB/wP+Af8D/gH/A+IB/wPWAf8D4gH/A/EB/wP5Af8D4gH/
- A+kB/wP+Mf8D/gH/AYkByAGKAf8BWwGxAV0B/wHSAeoB0gH/AckB4gHJAf8BWwGxAV0B/wETAYgBFQH/
- AWEBsQFiAf8D/gX/A/wB/wPyAf8D/gH/A/MB/wPcAf8D2gH/A9oB/wP3Mf8D+QH/A9oB/wPaAf8D2gH/
- A+4B/wP+Af8D9gH/A/sF/wP+Af8B9QH0AfUB/wPsAf8D+QH/A+wB/wPcAf8D2QH/A9kB/wPsAf8D/in/
- A/4B/wPxAf8D2QH/A9kB/wPZAf8D6QH/A/kB/wPxAf8B9QH0AfUB/wP+Af8D/gH/AfUB9AH1Af8D7AH/
- A/kB/wPsAf8D3AH/A9kB/wPZAf8D7AH/A/4p/wP+Af8BoAHRAaEB/wEjAZkBJgH/ASIBkgEkAf8BKgGa
- AS0B/wF5AbwBewH/AdcB6gHYAf8BvAHxAcAB/wHQAfMB0wH/A/4B/wP+Af8B9QH0AfUB/wPsAf8D+QH/
- A+wB/wPcAf8D2QH/A9kB/wPsAf8D/in/A/4B/wGgAdEBoQH/ASMBmQEmAf8BIgGSASQB/wEqAZoBLQH/
- AXwBwgF9Af8B0gHqAdIB/wGgAdEBoQH/AcEB4gHCAf8D/gn/A/wB/wPeAf8D2gH/A9oB/wPaAf8D2gH/
- A9oB/wPyKf8D9gH/A9oB/wPaAf8D2gH/A9oB/wPaAf8D2wH/A/oN/wP+Af8B9QH0AfUB/wPcAf8D2QH/
- A9kB/wPZAf8D2QH/A9kB/wPpAf8D/gH/A/4Z/wP+Af8D/gH/A+wB/wPZAf8D2QH/A9kB/wPZAf8D2QH/
- A9kB/wPxAf8D/gn/A/4B/wH1AfQB9QH/A9wB/wPZAf8D2QH/A9kB/wPZAf8D2QH/A+kB/wP+Af8D/hn/
- A/4B/wP+Af8BmQHLAZkB/wEcAZABHgH/ASoBmgEtAf8BLgGcATEB/wEqAZoBLQH/AR8BkgEhAf8BLgGc
- ATEB/wG4Ad0BuQH/A/4J/wP+Af8B9QH0AfUB/wPcAf8D2QH/A9kB/wPZAf8D2QH/A9kB/wPpAf8D/gH/
- A/4Z/wP+Af8D/gH/AZkBywGZAf8BHAGQAR4B/wEqAZoBLQH/AS4BnAExAf8BKgGaAS0B/wEfAZIBIQH/
- AS4BnAExAf8BuAHdAbkB/wP+Df8D/gH/A90B/wPaAf8D2gH/A9oB/wPaAf8D2gH/A/IB/wP6Af8D9Rn/
- A/YB/wP2Af8D+AH/A9oB/wPaAf8D2gH/A9oB/wPaAf8D3AH/A/0N/wP+Af8D+QH/A9wB/wPZAf8D2QH/
- A9kB/wPZAf8D1gH/A+kB/wPxAf8D7AH/A/kB/wP+Af8D/gH/A/4B/wH7Af4B/AH/AeAB8QHhAf8BmwHi
- AaAB/wGhAeoBpgH/AfQB8AH0Af8D2QH/A9kB/wPZAf8D2QH/A9kB/wPZAf8D+QH/A/4J/wP+Af8D+QH/
- A9wB/wPZAf8D2QH/A9kB/wPZAf8D1gH/A+kB/wPxAf8D7AH/A/kB/wP+Af8D/gH/A/4B/wH5AfwB+QH/
- AeAB7wHgAf8BiQHCAYoB/wGWAckBmAH/AaoB0gGrAf8BIwGZASYB/wEuAZwBMQH/AS4BnAExAf8BKgGa
- AS0B/wEmAZgBKQH/ATEBnQEzAf8B0gHqAdIB/wP+Cf8D/gH/A/kB/wPcAf8D2QH/A9kB/wPZAf8D2QH/
- A9YB/wPpAf8D8QH/A+wB/wP5Af8D/gH/A/4B/wP+Af8B+QH8AfkB/wHgAe8B4AH/AYkBwgGKAf8BlgHJ
- AZgB/wGqAdIBqwH/ASMBmQEmAf8BLgGcATEB/wEuAZwBMQH/ASoBmgEtAf8BJgGYASkB/wExAZ0BMwH/
- AdIB6gHSAf8D/hH/A/kB/wPaAf8D2gH/A9oB/wPaAf8D4gH/A/4B/wPgAf8D2gH/A9sB/wPhAf8D+AH/
- A/oB/wPhAf8D3AH/A9oB/wPcAf8D/QH/A+kB/wPaAf8D2gH/A9oB/wPaAf8D9xX/A/4B/wPxAf8D2QH/
- A9kB/wPZAf8D2QH/A+IB/wP5Af8D3AH/A9YB/wPZAf8D3AH/AfgB8gH4Af8BtAHsAbgB/wFTAc0BWwH/
- AUgBzQFRAf8BQgHQAUsB/wFaAeABYwH/AeAB+AHiAf8B6AHkAegB/wPZAf8D2QH/A9kB/wPZAf8D8QH/
- A/4R/wP+Af8D8QH/A9kB/wPZAf8D2QH/A9kB/wPiAf8D+QH/A9wB/wPWAf8D2QH/A9wB/wH4AfIB+AH/
- AaoB0gGrAf8BNAGVATYB/wEhAYwBIwH/ARMBiAEVAf8BKgGaAS0B/wHSAeoB0gH/AXIBvAF0Af8BJgGY
- ASkB/wEuAZwBMQH/ASoBmgEtAf8BJgGYASkB/wGrAdgBrAH/A/4R/wP+Af8D8QH/A9kB/wPZAf8D2QH/
- A9kB/wPiAf8D+QH/A9wB/wPWAf8D2QH/A9wB/wH4AfIB+AH/AaoB0gGrAf8BNAGVATYB/wEhAYwBIwH/
- ARMBiAEVAf8BKgGaAS0B/wHSAeoB0gH/AXIBvAF0Af8BJgGYASkB/wEuAZwBMQH/ASoBmgEtAf8BJgGY
- ASkB/wGrAdgBrAH/A/4Z/wP3Af8D2gH/A9oB/wPaAf8D+gH/A/MB/wPaAf8D2gH/A9oB/wPaAf8D8AH/
- A/QB/wPaAf8D2gH/A9oB/wPaAf8D6gH/A/0B/wPbAf8D2gH/A9oB/wP0Hf8D/gH/A/EB/wPZAf8D2QH/
- A9kB/wPxAf8D7AH/A9kB/wPZAf8D2QH/A9YB/wHxAewB8QH/Aa0B8gGyAf8BVAHgAV0B/wFqAegBdAH/
- AXEB6wF6Af8BagHoAXQB/wGYAfMBnwH/AfUB9AH1Af8B3AHaAdwB/wPZAf8D2QH/A+wB/wP+Gf8D/gH/
- A/EB/wPZAf8D2QH/A9kB/wPxAf8D7AH/A9kB/wPZAf8D2QH/A9YB/wHxAewB8QH/AZIByQGTAf8BFwGR
- ARoB/wEuAZwBMQH/ATIBowE0Af8BKgGaAS0B/wFyAbwBdAH/AdIB6gHSAf8BMgGjATQB/wEmAZgBKQH/
- ASoBmgEtAf8BoAHRAaEB/wP+Gf8D/gH/A/EB/wPZAf8D2QH/A9kB/wPxAf8D7AH/A9kB/wPZAf8D2QH/
- A9YB/wHxAewB8QH/AZIByQGTAf8BFwGRARoB/wEuAZwBMQH/ATIBowE0Af8BKgGaAS0B/wFyAbwBdAH/
- AdIB6gHSAf8BMgGjATQB/wEmAZgBKQH/ASoBmgEtAf8BoAHRAaEB/wP+If8D+gH/A9wB/wPmAf8D/QH/
- A9wB/wPaAf8D2gH/A9oB/wPaAf8D8AH/A/QB/wPaAf8D2gH/A9oB/wPaAf8D2gH/A/sB/wPvAf8D2wH/
- A/gl/wP+Af8D8QH/A9wB/wPiAf8B9QH0AfUB/wPZAf8D2QH/A9kB/wPZAf8D2QH/AfEB7AHxAf8BwQH9
- AcUB/wF1AfEBfgH/AXoB8gGBAf8BeAHyAYEB/wFxAesBegH/AWoB6AF0Af8BygH5Ac0B/wHtAegB7QH/
- A9kB/wPxAf8D/iH/A/4B/wPxAf8D3AH/A+IB/wH1AfQB9QH/A9kB/wPZAf8D2QH/A9kB/wPZAf8B8QHs
- AfEB/wGaAdIBmwH/ASkBoAEsAf8BNgGkATkB/wE2AaQBOQH/ATIBowE0Af8BKgGaAS0B/wG5AeABugH/
- AYkByAGKAf8BNgGkATkB/wGzAdsBtAH/A/4h/wP+Af8D8QH/A9wB/wPiAf8B9QH0AfUB/wPZAf8D2QH/
- A9kB/wPZAf8D2QH/AfEB7AHxAf8BmgHSAZsB/wEpAaABLAH/ATYBpAE5Af8BNgGkATkB/wEyAaMBNAH/
- ASoBmgEtAf8BuQHgAboB/wGJAcgBigH/ATYBpAE5Af8BswHbAbQB/wP+Kf8D/gH/A/4B/wPrAf8D2gH/
- A9oB/wPaAf8D2gH/A9oB/wPwAf8D9AH/A9oB/wPaAf8D2gH/A9oB/wPaAf8D4wH/A/4B/wP+Lf8D/gH/
- A/kB/wP5Af8D4gH/A9YB/wPZAf8D2QH/A9kB/wPZAf8B8QHsAfEB/wHBAf0BxQH/AXUB8QF+Af8BegHy
- AYEB/wF6AfIBgQH/AXEB6wF6Af8BagHoAXQB/wGJAfMBkAH/AfAB+QHxAf8D+QH/A/4p/wP+Af8D+QH/
- A/kB/wPiAf8D1gH/A9kB/wPZAf8D2QH/A9kB/wHxAewB8QH/AZoB0gGbAf8BKQGgASwB/wE2AaQBOQH/
- ATYBpAE5Af8BMgGjATQB/wEjAZkBJgH/AVYBsQFZAf8B4AHxAeEB/wHgAfEB4QH/A/4p/wP+Af8D+QH/
- A/kB/wPiAf8D1gH/A9kB/wPZAf8D2QH/A9kB/wHxAewB8QH/AZoB0gGbAf8BKQGgASwB/wE2AaQBOQH/
- ATYBpAE5Af8BMgGjATQB/wEjAZkBJgH/AVYBsQFZAf8B4AHxAeEB/wHgAfEB4QH/A/41/wP8Af8D6wH/
- A90B/wPaAf8D2gH/A9oB/wPwAf8D9AH/A9oB/wPaAf8D2gH/A90B/wPqAf8D+zn/A/4B/wP+Af8B9QH0
- AfUB/wPpAf8D3AH/A9kB/wPWAf8D1gH/AfEB7AHxAf8BvAH7AcEB/wF1AfEBfgH/AXUB8QF+Af8BdQHx
- AX4B/wGCAfEBigH/AaUB8gGqAf8B2AH6AdsB/wP+Af8D/jH/A/4B/wP+Af8B9QH0AfUB/wPpAf8D3AH/
- A9kB/wPWAf8D1gH/AfEB7AHxAf8BmgHSAZsB/wEjAZkBJgH/ASkBoAEsAf8BMgGjATQB/wFDAasBRQH/
- AXwBwgF9Af8BxwHlAcgB/wP+Af8D/jH/A/4B/wP+Af8B9QH0AfUB/wPpAf8D3AH/A9kB/wPWAf8D1gH/
- AfEB7AHxAf8BmgHSAZsB/wEjAZkBJgH/ASkBoAEsAf8BMgGjATQB/wFDAasBRQH/AXwBwgF9Af8BxwHl
- AcgB/wP+Af8D/kH/A/4B/wP5Af8D7wH/A+YB/wP1Af8D+AH/A+UB/wPvAf8D+QH/A/5J/wP+Af8D/gH/
- A/4B/wPxAf8D6QH/A+IB/wHxAewB8QH/Ac4B+gHRAf8BmgH5AaEB/wG0AfsBugH/AdEB+gHUAf8B8AH5
- AfEB/wP+Af8D/kH/A/4B/wP+Af8D/gH/A/EB/wPpAf8D4gH/AfgB8gH4Af8BswHbAbQB/wFpAbsBawH/
- AY4BzQGQAf8BuQHgAboB/wHoAfUB6AH/A/4B/wP+Qf8D/gH/A/4B/wP+Af8D8QH/A+kB/wPiAf8B+AHy
- AfgB/wGzAdsBtAH/AWkBuwFrAf8BjgHNAZAB/wG5AeABugH/AegB9QHoAf8D/gH/A/4h/wFCAU0BPgcA
- AT4DAAEoAwABeAMAAXgDAAEBAQABAQUAAYABBxYAA///AP8A/wD/AP8A/wD/AIgACw==
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ResultViewControl.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ResultViewControl.cs
deleted file mode 100644
index 47bec400..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ResultViewControl.cs
+++ /dev/null
@@ -1,57 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Windows.Forms;
-using WebsitePanel.Installer.Common;
-
-namespace WebsitePanel.Installer.Controls
-{
- internal class ResultViewControl : UserControl
- {
- private AppContext appContext;
- private bool isInitialized;
-
- public AppContext AppContext
- {
- get { return appContext; }
- set { appContext = value; }
- }
-
- protected bool IsInitialized
- {
- get { return isInitialized; }
- set { isInitialized = value; }
- }
-
- public virtual void ShowControl(AppContext context)
- {
- this.AppContext = context;
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServerControl.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServerControl.Designer.cs
deleted file mode 100644
index 6fdaf6a2..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServerControl.Designer.cs
+++ /dev/null
@@ -1,180 +0,0 @@
-namespace WebsitePanel.Installer.Controls
-{
- partial class ServerControl
- {
- ///
- /// 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 Component 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(ServerControl));
- this.grpConnectionSettings = new System.Windows.Forms.GroupBox();
- this.txtPassword = new System.Windows.Forms.TextBox();
- this.lblPassword = new System.Windows.Forms.Label();
- this.txtPort = new System.Windows.Forms.TextBox();
- this.lblPort = new System.Windows.Forms.Label();
- this.txtServer = new System.Windows.Forms.TextBox();
- this.lblServer = new System.Windows.Forms.Label();
- this.btnUpdate = new System.Windows.Forms.Button();
- this.btnTest = new System.Windows.Forms.Button();
- this.btnRemove = new System.Windows.Forms.Button();
- this.grpConnectionSettings.SuspendLayout();
- this.SuspendLayout();
- //
- // grpConnectionSettings
- //
- this.grpConnectionSettings.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.grpConnectionSettings.Controls.Add(this.txtPassword);
- this.grpConnectionSettings.Controls.Add(this.lblPassword);
- this.grpConnectionSettings.Controls.Add(this.txtPort);
- this.grpConnectionSettings.Controls.Add(this.lblPort);
- this.grpConnectionSettings.Controls.Add(this.txtServer);
- this.grpConnectionSettings.Controls.Add(this.lblServer);
- this.grpConnectionSettings.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.grpConnectionSettings.Location = new System.Drawing.Point(14, 43);
- this.grpConnectionSettings.Name = "grpConnectionSettings";
- this.grpConnectionSettings.Size = new System.Drawing.Size(379, 122);
- this.grpConnectionSettings.TabIndex = 0;
- this.grpConnectionSettings.TabStop = false;
- this.grpConnectionSettings.Text = "Connection settings";
- //
- // txtPassword
- //
- this.txtPassword.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtPassword.Location = new System.Drawing.Point(122, 82);
- this.txtPassword.Name = "txtPassword";
- this.txtPassword.PasswordChar = '*';
- this.txtPassword.Size = new System.Drawing.Size(234, 21);
- this.txtPassword.TabIndex = 5;
- //
- // lblPassword
- //
- this.lblPassword.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblPassword.Location = new System.Drawing.Point(16, 82);
- this.lblPassword.Name = "lblPassword";
- this.lblPassword.Size = new System.Drawing.Size(100, 21);
- this.lblPassword.TabIndex = 4;
- this.lblPassword.Text = "Password";
- //
- // txtPort
- //
- this.txtPort.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtPort.Location = new System.Drawing.Point(122, 55);
- this.txtPort.Name = "txtPort";
- this.txtPort.Size = new System.Drawing.Size(234, 21);
- this.txtPort.TabIndex = 3;
- //
- // lblPort
- //
- this.lblPort.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblPort.Location = new System.Drawing.Point(16, 55);
- this.lblPort.Name = "lblPort";
- this.lblPort.Size = new System.Drawing.Size(100, 21);
- this.lblPort.TabIndex = 2;
- this.lblPort.Text = "Port";
- //
- // txtServer
- //
- this.txtServer.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtServer.Location = new System.Drawing.Point(122, 28);
- this.txtServer.Name = "txtServer";
- this.txtServer.Size = new System.Drawing.Size(234, 21);
- this.txtServer.TabIndex = 1;
- //
- // lblServer
- //
- this.lblServer.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblServer.Location = new System.Drawing.Point(16, 28);
- this.lblServer.Name = "lblServer";
- this.lblServer.Size = new System.Drawing.Size(100, 21);
- this.lblServer.TabIndex = 0;
- this.lblServer.Text = "Server";
- //
- // btnUpdate
- //
- this.btnUpdate.Image = ((System.Drawing.Image)(resources.GetObject("btnUpdate.Image")));
- this.btnUpdate.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnUpdate.Location = new System.Drawing.Point(148, 171);
- this.btnUpdate.Name = "btnUpdate";
- this.btnUpdate.Size = new System.Drawing.Size(128, 28);
- this.btnUpdate.TabIndex = 9;
- this.btnUpdate.Text = "Update";
- this.btnUpdate.UseVisualStyleBackColor = true;
- //
- // btnTest
- //
- this.btnTest.Image = ((System.Drawing.Image)(resources.GetObject("btnTest.Image")));
- this.btnTest.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnTest.Location = new System.Drawing.Point(14, 171);
- this.btnTest.Name = "btnTest";
- this.btnTest.Size = new System.Drawing.Size(128, 28);
- this.btnTest.TabIndex = 8;
- this.btnTest.Text = "Test connection";
- this.btnTest.UseVisualStyleBackColor = true;
- //
- // btnRemove
- //
- this.btnRemove.Image = ((System.Drawing.Image)(resources.GetObject("btnRemove.Image")));
- this.btnRemove.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnRemove.Location = new System.Drawing.Point(14, 9);
- this.btnRemove.Name = "btnRemove";
- this.btnRemove.Size = new System.Drawing.Size(128, 28);
- this.btnRemove.TabIndex = 10;
- this.btnRemove.Text = "Remove server";
- this.btnRemove.UseVisualStyleBackColor = true;
- //
- // ServerControl
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.btnRemove);
- this.Controls.Add(this.btnUpdate);
- this.Controls.Add(this.btnTest);
- this.Controls.Add(this.grpConnectionSettings);
- this.Name = "ServerControl";
- this.Size = new System.Drawing.Size(406, 327);
- this.grpConnectionSettings.ResumeLayout(false);
- this.grpConnectionSettings.PerformLayout();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.GroupBox grpConnectionSettings;
- private System.Windows.Forms.TextBox txtPassword;
- private System.Windows.Forms.Label lblPassword;
- private System.Windows.Forms.TextBox txtPort;
- private System.Windows.Forms.Label lblPort;
- private System.Windows.Forms.TextBox txtServer;
- private System.Windows.Forms.Label lblServer;
- private System.Windows.Forms.Button btnUpdate;
- private System.Windows.Forms.Button btnTest;
- private System.Windows.Forms.Button btnRemove;
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServerControl.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServerControl.cs
deleted file mode 100644
index 242c4b72..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServerControl.cs
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Drawing;
-using System.Data;
-using System.Text;
-using System.Windows.Forms;
-
-namespace WebsitePanel.Installer.Controls
-{
- internal partial class ServerControl : ResultViewControl
- {
- public ServerControl()
- {
- InitializeComponent();
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServerControl.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServerControl.resx
deleted file mode 100644
index 89b7bc69..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServerControl.resx
+++ /dev/null
@@ -1,178 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
-
-
- 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
- j6zEfgNB/y51tqL5CQAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAA+NJREFUOE89jmlM
- GwQYhj9iKbBgskgky7jdkjknCmwglMIqoDCQa61QObQMSLElhEMJ0LkSaDkHowdyDNlCgQETVgcydBgR
- 4tzCOCz3gJbSFTXgohhRM/C1McYfz8/neV+rnA+Laf8AV13dXvA5+Ht/4+DpvonBsNpkMq1Nh2yZ5kN2
- tj8xbWx2rK2Zu4xnGGBYM+n+5CQZDBvEYDCI3st83yq3SDqzs7uP5c1f8fX0Jrq+0KG6YwwfKLQQV2r2
- RLKrW7kVTTMltc3D9a0dTQUS6bmkC0JKzRQRSeVVz6rbusw7vwFL5j9xffxn5HdvIbXtMc43bSJctQF2
- 3SpOV83j5YpZxBQ2IiUtvYebLCBechpR32dDx0cnHv71YG0Pma16CFrWUXLzMUr6zRB1m5DYbkToxwb4
- NBhwSr2FCFE5IqNjykKjYiksKo5oRjfH0Y6v4N0mA5QjP6Ltm23k9pgQ36xHqHIdgYp1nLFwqkEPz0Yj
- zosl8AtgpZ/2Z9OZgCCi5eVFgVB5H+q72xBrjHjpo0U4F8/D+eIiXEqX4SJ/BLeaNThf1sOn2YCSahV4
- Cfw3uPxk4vFTiMYmvisv7ZxBtEIPxzwdXEsW4CFdgodsBe4Vq3C3yC51ejx3xYSgri10aoeeSstkx6Xl
- FXSpTE50o3+w61yNDs/nL8Bd8p9cbpErH8G9dg1H6zfg3baJvN45aPrHcW9waE/Z2MjJys6mlBTLA+mV
- T+YDyybhU7mKE5UGuFVuwLnKAKcaPY7UGxHUuow76jYsiTKhS03CLJeL2aysP2olksJYLpcoNiG5JSk9
- az69QPp7mrQJSTVaxCi/BadlBa+26HFNrsBaUQFWVSpMR0ZiSiDAVPoFzMbHQyQURlBAcCj5ss4y/FjB
- HhFRb4Xw+fyiTKFwKiOnAPkXy3EvS4iFoiLsmM14qFDgtkaDu5bA2uHDqIuO1lLg629SQoqApLJK6rzR
- 6zk4ONTTPzDwQ2lFNSR5+ZjMyMADX1+MRkejc2ICA3I55ohgsnDNz2+OSuVV1N7RRZ29N52Gvxzdnf5e
- h7mFRfTd0kKlVGEsLAwjTk7oVqtxSyzGoiWyVViIHUtAHRb2OSUmJRP37USK5yU41jUoDYN3RvCp9jba
- Nd1QXNegLy4OX1nuDoeH/7u86e+PJzwejI6OqJPJ4okVyCYWm02vBbAogBXoIRJnN1bVXF6yxH6R19bv
- Fl8qNQ6EhGwv29nBZGWFJ5aI0dUVypwceUhUFFHQWc7/eHl704kXT5Kn5ytML2+fIw4ODm7WNjbOR48d
- 836HzZZLOZyevODgFh8vLy7D3t6eiGz/AfbnLf28f482AAAAAElFTkSuQmCC
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServersControl.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServersControl.Designer.cs
deleted file mode 100644
index e3b60262..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServersControl.Designer.cs
+++ /dev/null
@@ -1,166 +0,0 @@
-namespace WebsitePanel.Installer.Controls
-{
- partial class ServersControl
- {
- ///
- /// 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 Component 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(ServersControl));
- this.grpConnectionSettings = new System.Windows.Forms.GroupBox();
- this.txtPassword = new System.Windows.Forms.TextBox();
- this.lblPassword = new System.Windows.Forms.Label();
- this.txtPort = new System.Windows.Forms.TextBox();
- this.lblPort = new System.Windows.Forms.Label();
- this.txtServer = new System.Windows.Forms.TextBox();
- this.lblServer = new System.Windows.Forms.Label();
- this.btnAdd = new System.Windows.Forms.Button();
- this.btnTest = new System.Windows.Forms.Button();
- this.grpConnectionSettings.SuspendLayout();
- this.SuspendLayout();
- //
- // grpConnectionSettings
- //
- this.grpConnectionSettings.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.grpConnectionSettings.Controls.Add(this.txtPassword);
- this.grpConnectionSettings.Controls.Add(this.lblPassword);
- this.grpConnectionSettings.Controls.Add(this.txtPort);
- this.grpConnectionSettings.Controls.Add(this.lblPort);
- this.grpConnectionSettings.Controls.Add(this.txtServer);
- this.grpConnectionSettings.Controls.Add(this.lblServer);
- this.grpConnectionSettings.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.grpConnectionSettings.Location = new System.Drawing.Point(14, 3);
- this.grpConnectionSettings.Name = "grpConnectionSettings";
- this.grpConnectionSettings.Size = new System.Drawing.Size(379, 122);
- this.grpConnectionSettings.TabIndex = 0;
- this.grpConnectionSettings.TabStop = false;
- this.grpConnectionSettings.Text = "Connection settings";
- //
- // txtPassword
- //
- this.txtPassword.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtPassword.Location = new System.Drawing.Point(122, 82);
- this.txtPassword.Name = "txtPassword";
- this.txtPassword.PasswordChar = '*';
- this.txtPassword.Size = new System.Drawing.Size(234, 21);
- this.txtPassword.TabIndex = 5;
- //
- // lblPassword
- //
- this.lblPassword.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblPassword.Location = new System.Drawing.Point(16, 82);
- this.lblPassword.Name = "lblPassword";
- this.lblPassword.Size = new System.Drawing.Size(100, 21);
- this.lblPassword.TabIndex = 4;
- this.lblPassword.Text = "Password";
- //
- // txtPort
- //
- this.txtPort.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtPort.Location = new System.Drawing.Point(122, 55);
- this.txtPort.Name = "txtPort";
- this.txtPort.Size = new System.Drawing.Size(234, 21);
- this.txtPort.TabIndex = 3;
- //
- // lblPort
- //
- this.lblPort.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblPort.Location = new System.Drawing.Point(16, 55);
- this.lblPort.Name = "lblPort";
- this.lblPort.Size = new System.Drawing.Size(100, 21);
- this.lblPort.TabIndex = 2;
- this.lblPort.Text = "Port";
- //
- // txtServer
- //
- this.txtServer.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtServer.Location = new System.Drawing.Point(122, 28);
- this.txtServer.Name = "txtServer";
- this.txtServer.Size = new System.Drawing.Size(234, 21);
- this.txtServer.TabIndex = 1;
- //
- // lblServer
- //
- this.lblServer.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblServer.Location = new System.Drawing.Point(16, 28);
- this.lblServer.Name = "lblServer";
- this.lblServer.Size = new System.Drawing.Size(100, 21);
- this.lblServer.TabIndex = 0;
- this.lblServer.Text = "Server";
- //
- // btnAdd
- //
- this.btnAdd.Image = ((System.Drawing.Image)(resources.GetObject("btnAdd.Image")));
- this.btnAdd.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnAdd.Location = new System.Drawing.Point(148, 131);
- this.btnAdd.Name = "btnAdd";
- this.btnAdd.Size = new System.Drawing.Size(128, 28);
- this.btnAdd.TabIndex = 9;
- this.btnAdd.Text = "Add server";
- this.btnAdd.UseVisualStyleBackColor = true;
- //
- // btnTest
- //
- this.btnTest.Image = ((System.Drawing.Image)(resources.GetObject("btnTest.Image")));
- this.btnTest.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnTest.Location = new System.Drawing.Point(14, 131);
- this.btnTest.Name = "btnTest";
- this.btnTest.Size = new System.Drawing.Size(128, 28);
- this.btnTest.TabIndex = 8;
- this.btnTest.Text = "Test connection";
- this.btnTest.UseVisualStyleBackColor = true;
- //
- // ServersControl
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.btnAdd);
- this.Controls.Add(this.btnTest);
- this.Controls.Add(this.grpConnectionSettings);
- this.Name = "ServersControl";
- this.Size = new System.Drawing.Size(406, 327);
- this.grpConnectionSettings.ResumeLayout(false);
- this.grpConnectionSettings.PerformLayout();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.GroupBox grpConnectionSettings;
- private System.Windows.Forms.TextBox txtPassword;
- private System.Windows.Forms.Label lblPassword;
- private System.Windows.Forms.TextBox txtPort;
- private System.Windows.Forms.Label lblPort;
- private System.Windows.Forms.TextBox txtServer;
- private System.Windows.Forms.Label lblServer;
- private System.Windows.Forms.Button btnAdd;
- private System.Windows.Forms.Button btnTest;
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServersControl.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServersControl.cs
deleted file mode 100644
index 6aa328ec..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServersControl.cs
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Drawing;
-using System.Data;
-using System.Text;
-using System.Windows.Forms;
-
-namespace WebsitePanel.Installer.Controls
-{
- internal partial class ServersControl : ResultViewControl
- {
- public ServersControl()
- {
- InitializeComponent();
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServersControl.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServersControl.resx
deleted file mode 100644
index 4166a35a..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServersControl.resx
+++ /dev/null
@@ -1,162 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
-
-
- 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
- j6zEfgNB/y51tqL5CQAAAABJRU5ErkJggg==
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServiceControl.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServiceControl.Designer.cs
deleted file mode 100644
index b98a918b..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServiceControl.Designer.cs
+++ /dev/null
@@ -1,250 +0,0 @@
-namespace WebsitePanel.Installer.Controls
-{
- partial class ServiceControl
- {
- ///
- /// 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 Component 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(ServiceControl));
- this.grpConnectionSettings = new System.Windows.Forms.GroupBox();
- this.pictureBox1 = new System.Windows.Forms.PictureBox();
- this.btnAdd = new System.Windows.Forms.Button();
- this.btnTest = new System.Windows.Forms.Button();
- this.lblStatus = new System.Windows.Forms.Label();
- this.label1 = new System.Windows.Forms.Label();
- this.label2 = new System.Windows.Forms.Label();
- this.textBox1 = new System.Windows.Forms.TextBox();
- this.label3 = new System.Windows.Forms.Label();
- this.textBox2 = new System.Windows.Forms.TextBox();
- this.button2 = new System.Windows.Forms.Button();
- this.textBox3 = new System.Windows.Forms.TextBox();
- this.groupBox1 = new System.Windows.Forms.GroupBox();
- this.textBox4 = new System.Windows.Forms.TextBox();
- this.label4 = new System.Windows.Forms.Label();
- this.grpConnectionSettings.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
- this.groupBox1.SuspendLayout();
- this.SuspendLayout();
- //
- // grpConnectionSettings
- //
- this.grpConnectionSettings.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.grpConnectionSettings.Controls.Add(this.pictureBox1);
- this.grpConnectionSettings.Controls.Add(this.btnAdd);
- this.grpConnectionSettings.Controls.Add(this.btnTest);
- this.grpConnectionSettings.Controls.Add(this.lblStatus);
- this.grpConnectionSettings.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.grpConnectionSettings.Location = new System.Drawing.Point(14, 3);
- this.grpConnectionSettings.Name = "grpConnectionSettings";
- this.grpConnectionSettings.Size = new System.Drawing.Size(379, 66);
- this.grpConnectionSettings.TabIndex = 0;
- this.grpConnectionSettings.TabStop = false;
- this.grpConnectionSettings.Text = "Status";
- //
- // pictureBox1
- //
- this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
- this.pictureBox1.Location = new System.Drawing.Point(13, 20);
- this.pictureBox1.Name = "pictureBox1";
- this.pictureBox1.Size = new System.Drawing.Size(32, 32);
- this.pictureBox1.TabIndex = 12;
- this.pictureBox1.TabStop = false;
- //
- // btnAdd
- //
- this.btnAdd.Enabled = false;
- this.btnAdd.Image = ((System.Drawing.Image)(resources.GetObject("btnAdd.Image")));
- this.btnAdd.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnAdd.Location = new System.Drawing.Point(258, 20);
- this.btnAdd.Name = "btnAdd";
- this.btnAdd.Size = new System.Drawing.Size(83, 28);
- this.btnAdd.TabIndex = 11;
- this.btnAdd.Text = "Stop";
- this.btnAdd.UseVisualStyleBackColor = true;
- //
- // btnTest
- //
- this.btnTest.Enabled = false;
- this.btnTest.Image = ((System.Drawing.Image)(resources.GetObject("btnTest.Image")));
- this.btnTest.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnTest.Location = new System.Drawing.Point(169, 20);
- this.btnTest.Name = "btnTest";
- this.btnTest.Size = new System.Drawing.Size(83, 28);
- this.btnTest.TabIndex = 10;
- this.btnTest.Text = "Start";
- this.btnTest.UseVisualStyleBackColor = true;
- //
- // lblStatus
- //
- this.lblStatus.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblStatus.Location = new System.Drawing.Point(51, 26);
- this.lblStatus.Name = "lblStatus";
- this.lblStatus.Size = new System.Drawing.Size(112, 21);
- this.lblStatus.TabIndex = 0;
- this.lblStatus.Text = "Not installed";
- //
- // label1
- //
- this.label1.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.label1.Location = new System.Drawing.Point(16, 82);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(100, 21);
- this.label1.TabIndex = 4;
- this.label1.Text = "Password";
- //
- // label2
- //
- this.label2.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.label2.Location = new System.Drawing.Point(16, 55);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(100, 21);
- this.label2.TabIndex = 2;
- this.label2.Text = "Port";
- //
- // textBox1
- //
- this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.textBox1.Location = new System.Drawing.Point(122, 28);
- this.textBox1.Name = "textBox1";
- this.textBox1.Size = new System.Drawing.Size(234, 21);
- this.textBox1.TabIndex = 1;
- //
- // label3
- //
- this.label3.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.label3.Location = new System.Drawing.Point(16, 28);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(100, 21);
- this.label3.TabIndex = 0;
- this.label3.Text = "Server";
- //
- // textBox2
- //
- this.textBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.textBox2.Location = new System.Drawing.Point(122, 55);
- this.textBox2.Name = "textBox2";
- this.textBox2.Size = new System.Drawing.Size(234, 21);
- this.textBox2.TabIndex = 3;
- //
- // button2
- //
- this.button2.Image = ((System.Drawing.Image)(resources.GetObject("button2.Image")));
- this.button2.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.button2.Location = new System.Drawing.Point(14, 240);
- this.button2.Name = "button2";
- this.button2.Size = new System.Drawing.Size(128, 28);
- this.button2.TabIndex = 11;
- this.button2.Text = "Update settings";
- this.button2.UseVisualStyleBackColor = true;
- //
- // textBox3
- //
- this.textBox3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.textBox3.Location = new System.Drawing.Point(122, 82);
- this.textBox3.Name = "textBox3";
- this.textBox3.PasswordChar = '*';
- this.textBox3.Size = new System.Drawing.Size(234, 21);
- this.textBox3.TabIndex = 5;
- //
- // groupBox1
- //
- this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.groupBox1.Controls.Add(this.textBox4);
- this.groupBox1.Controls.Add(this.label4);
- this.groupBox1.Controls.Add(this.textBox3);
- this.groupBox1.Controls.Add(this.label1);
- this.groupBox1.Controls.Add(this.textBox2);
- this.groupBox1.Controls.Add(this.label2);
- this.groupBox1.Controls.Add(this.textBox1);
- this.groupBox1.Controls.Add(this.label3);
- this.groupBox1.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.groupBox1.Location = new System.Drawing.Point(14, 81);
- this.groupBox1.Name = "groupBox1";
- this.groupBox1.Size = new System.Drawing.Size(379, 150);
- this.groupBox1.TabIndex = 10;
- this.groupBox1.TabStop = false;
- this.groupBox1.Text = "Connection settings";
- //
- // textBox4
- //
- this.textBox4.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.textBox4.Location = new System.Drawing.Point(122, 109);
- this.textBox4.Name = "textBox4";
- this.textBox4.PasswordChar = '*';
- this.textBox4.Size = new System.Drawing.Size(234, 21);
- this.textBox4.TabIndex = 7;
- //
- // label4
- //
- this.label4.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.label4.Location = new System.Drawing.Point(16, 109);
- this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(100, 21);
- this.label4.TabIndex = 6;
- this.label4.Text = "Confirm password";
- //
- // ServiceControl
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.button2);
- this.Controls.Add(this.groupBox1);
- this.Controls.Add(this.grpConnectionSettings);
- this.Name = "ServiceControl";
- this.Size = new System.Drawing.Size(406, 327);
- this.grpConnectionSettings.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
- this.groupBox1.ResumeLayout(false);
- this.groupBox1.PerformLayout();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.GroupBox grpConnectionSettings;
- private System.Windows.Forms.Label lblStatus;
- private System.Windows.Forms.Button btnAdd;
- private System.Windows.Forms.Button btnTest;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.Label label2;
- private System.Windows.Forms.TextBox textBox1;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.TextBox textBox2;
- private System.Windows.Forms.Button button2;
- private System.Windows.Forms.TextBox textBox3;
- private System.Windows.Forms.GroupBox groupBox1;
- private System.Windows.Forms.PictureBox pictureBox1;
- private System.Windows.Forms.TextBox textBox4;
- private System.Windows.Forms.Label label4;
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServiceControl.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServiceControl.cs
deleted file mode 100644
index 7380d425..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServiceControl.cs
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Drawing;
-using System.Data;
-using System.Text;
-using System.Windows.Forms;
-
-namespace WebsitePanel.Installer.Controls
-{
- internal partial class ServiceControl : ResultViewControl
- {
- public ServiceControl()
- {
- InitializeComponent();
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServiceControl.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServiceControl.resx
deleted file mode 100644
index 2c91c02e..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/ServiceControl.resx
+++ /dev/null
@@ -1,223 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
-
-
- 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
- AABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAA5FJREFUOE81U21M
- m1UUvg3LmJMlilvUaJzsDzr/7AeJmdkWcW5LlwmYQCmLIZotISbEqSzMQaY4iGYxTaYuQmGwQUtbPtrS
- 0Q9aoKUv/aKlLf2iLYVVsTgXOhyxMWQzeTx9wZs8uSf3nue555x7jqCqqorl1+7CQravqCiPXSWvHzz6
- 6msHy4v37z/89MnT3F+Psr4Ha2uW7MZG+u9cjm1ubrKtrS0mEAgYywvk8SHh6pUrpy0z9rAzmYY5nsZY
- eAm6SAoWsmejiSeq4WHZZ42NL9XX1zOxWMzq6uq2Bc4Khaz5ctOl2XAc2sgyBubCGPCEeNx1h9DrCqKX
- dl3sPgzTtvSFTz5+s6amhhdhQiJ/dP58pcntxVAwgcG5CGQ7AipfFIPeCPrprJ/ObjuD0C6mcWdQERWe
- ObOvoqKCsXdPnHjmZmdXXBNO8c55sjGcxMqDh1hd+wORRBLT8wtQ5O9I8I4nDN1CApebmq6La2sZq/zg
- XKXK6oDSv8iTDeEEcrkcqHBYTqXg83pht07DZLNvR+aNQhlKQdLVff/UyfeeYxcuXpSM+iIYJHU5Ofz6
- cJ3IjxCLxWCz2aBWq6FQKjGu1UA2xaHTFUK3N4Zbo/dwTig8zr5sbh4dptfllKfaH8Pq7xkE/H7o9Xoo
- FArIZDJoNBo4OA4W1xx6yW8gkIDUMAVRdXUd+6q1VcUXi9Dn8MPudMJoMPBkuVzOk/ORpJJJuCMxyOix
- EfoN6bgZoppqEWtpabmudPkhdQRxTc+hX2fACIX8P3lmZgbxeBwb2XVMBKPQxFagX87gR7nq37paURm7
- KZEcl2oNaDM50WacxQ2jHQOqIT5nB2dHaimJx1RQbzwJDTXWxNIqzCTw7fc3Ap82NOxmkxYzuyXt4drG
- bWifcOIHqxc/T7mgtNhg83jhjS5iciHKd+XkSgb2zDpUVg5t33zd0NHRwRgViVlMpiN3NbrH35mdkNh8
- +IXS6ck3D9VFGYhDR82TJ3OZLPSBCHr7+u719HSz9vZ2xopogOgrmdloODZkmMh2cfPodEfQN7/I//cY
- zYGJQrb+9icsFIlCqdK3tlzdW1paygoKCvhB3EXYS0tw7J2jb136/AuNdEj9j8LuwYhnAWO+ELScGz91
- 316rFYmuHTpU8mx+eAl7CDSO28YBwiuEFwnFB14oPvJ2WZn49Kn3G0+WlzccfqP07J7CwhK6e37H7+Ud
- u+A/uGZ/VDhOBqoAAAAASUVORK5CYII=
-
-
-
-
- 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
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/SettingsControl.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/SettingsControl.Designer.cs
deleted file mode 100644
index 63ce6b5e..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/SettingsControl.Designer.cs
+++ /dev/null
@@ -1,229 +0,0 @@
-namespace WebsitePanel.Installer.Controls
-{
- partial class SettingsControl
- {
- ///
- /// 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 Component 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(SettingsControl));
- this.grpWebUpdate = new System.Windows.Forms.GroupBox();
- this.btnCheck = new System.Windows.Forms.Button();
- this.chkAutoUpdate = new System.Windows.Forms.CheckBox();
- this.btnUpdate = new System.Windows.Forms.Button();
- this.grpProxy = new System.Windows.Forms.GroupBox();
- this.txtPassword = new System.Windows.Forms.TextBox();
- this.lblPassword = new System.Windows.Forms.Label();
- this.txtUserName = new System.Windows.Forms.TextBox();
- this.lblUsername = new System.Windows.Forms.Label();
- this.txtAddress = new System.Windows.Forms.TextBox();
- this.lblAddress = new System.Windows.Forms.Label();
- this.chkUseHTTPProxy = new System.Windows.Forms.CheckBox();
- this.btnViewLog = new System.Windows.Forms.Button();
- this.grpWebUpdate.SuspendLayout();
- this.grpProxy.SuspendLayout();
- this.SuspendLayout();
- //
- // grpWebUpdate
- //
- this.grpWebUpdate.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.grpWebUpdate.Controls.Add(this.btnCheck);
- this.grpWebUpdate.Controls.Add(this.chkAutoUpdate);
- this.grpWebUpdate.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.grpWebUpdate.Location = new System.Drawing.Point(14, 3);
- this.grpWebUpdate.Name = "grpWebUpdate";
- this.grpWebUpdate.Size = new System.Drawing.Size(379, 83);
- this.grpWebUpdate.TabIndex = 0;
- this.grpWebUpdate.TabStop = false;
- this.grpWebUpdate.Text = "Web update";
- //
- // btnCheck
- //
- this.btnCheck.Image = ((System.Drawing.Image)(resources.GetObject("btnCheck.Image")));
- this.btnCheck.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnCheck.Location = new System.Drawing.Point(19, 44);
- this.btnCheck.Name = "btnCheck";
- this.btnCheck.Size = new System.Drawing.Size(128, 28);
- this.btnCheck.TabIndex = 1;
- this.btnCheck.Text = "&Check For Updates";
- this.btnCheck.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
- this.btnCheck.UseVisualStyleBackColor = true;
- this.btnCheck.Click += new System.EventHandler(this.OnCheckClick);
- //
- // chkAutoUpdate
- //
- this.chkAutoUpdate.Checked = true;
- this.chkAutoUpdate.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkAutoUpdate.Location = new System.Drawing.Point(19, 20);
- this.chkAutoUpdate.Name = "chkAutoUpdate";
- this.chkAutoUpdate.Size = new System.Drawing.Size(184, 18);
- this.chkAutoUpdate.TabIndex = 0;
- this.chkAutoUpdate.Text = "Automatically check for updates";
- this.chkAutoUpdate.UseVisualStyleBackColor = true;
- //
- // btnUpdate
- //
- this.btnUpdate.Image = ((System.Drawing.Image)(resources.GetObject("btnUpdate.Image")));
- this.btnUpdate.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnUpdate.Location = new System.Drawing.Point(14, 236);
- this.btnUpdate.Name = "btnUpdate";
- this.btnUpdate.Size = new System.Drawing.Size(128, 28);
- this.btnUpdate.TabIndex = 2;
- this.btnUpdate.Text = "&Save Settings";
- this.btnUpdate.Click += new System.EventHandler(this.OnUpdateClick);
- //
- // grpProxy
- //
- this.grpProxy.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.grpProxy.Controls.Add(this.txtPassword);
- this.grpProxy.Controls.Add(this.lblPassword);
- this.grpProxy.Controls.Add(this.txtUserName);
- this.grpProxy.Controls.Add(this.lblUsername);
- this.grpProxy.Controls.Add(this.txtAddress);
- this.grpProxy.Controls.Add(this.lblAddress);
- this.grpProxy.Controls.Add(this.chkUseHTTPProxy);
- this.grpProxy.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.grpProxy.Location = new System.Drawing.Point(14, 91);
- this.grpProxy.Name = "grpProxy";
- this.grpProxy.Size = new System.Drawing.Size(379, 139);
- this.grpProxy.TabIndex = 1;
- this.grpProxy.TabStop = false;
- this.grpProxy.Text = "Proxy";
- //
- // txtPassword
- //
- this.txtPassword.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtPassword.Enabled = false;
- this.txtPassword.Location = new System.Drawing.Point(125, 101);
- this.txtPassword.Name = "txtPassword";
- this.txtPassword.PasswordChar = '*';
- this.txtPassword.Size = new System.Drawing.Size(234, 21);
- this.txtPassword.TabIndex = 6;
- //
- // lblPassword
- //
- this.lblPassword.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblPassword.Location = new System.Drawing.Point(19, 101);
- this.lblPassword.Name = "lblPassword";
- this.lblPassword.Size = new System.Drawing.Size(100, 21);
- this.lblPassword.TabIndex = 5;
- this.lblPassword.Text = "Password";
- //
- // txtUserName
- //
- this.txtUserName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtUserName.Enabled = false;
- this.txtUserName.Location = new System.Drawing.Point(125, 74);
- this.txtUserName.Name = "txtUserName";
- this.txtUserName.Size = new System.Drawing.Size(234, 21);
- this.txtUserName.TabIndex = 4;
- //
- // lblUsername
- //
- this.lblUsername.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblUsername.Location = new System.Drawing.Point(19, 74);
- this.lblUsername.Name = "lblUsername";
- this.lblUsername.Size = new System.Drawing.Size(100, 21);
- this.lblUsername.TabIndex = 3;
- this.lblUsername.Text = "User name";
- //
- // txtAddress
- //
- this.txtAddress.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.txtAddress.Enabled = false;
- this.txtAddress.Location = new System.Drawing.Point(125, 47);
- this.txtAddress.Name = "txtAddress";
- this.txtAddress.Size = new System.Drawing.Size(234, 21);
- this.txtAddress.TabIndex = 2;
- //
- // lblAddress
- //
- this.lblAddress.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblAddress.Location = new System.Drawing.Point(19, 47);
- this.lblAddress.Name = "lblAddress";
- this.lblAddress.Size = new System.Drawing.Size(100, 21);
- this.lblAddress.TabIndex = 1;
- this.lblAddress.Text = "Address";
- //
- // chkUseHTTPProxy
- //
- this.chkUseHTTPProxy.Location = new System.Drawing.Point(19, 22);
- this.chkUseHTTPProxy.Name = "chkUseHTTPProxy";
- this.chkUseHTTPProxy.Size = new System.Drawing.Size(184, 18);
- this.chkUseHTTPProxy.TabIndex = 0;
- this.chkUseHTTPProxy.Text = "Use HTTP Proxy";
- this.chkUseHTTPProxy.UseVisualStyleBackColor = true;
- this.chkUseHTTPProxy.CheckedChanged += new System.EventHandler(this.OnUseHTTPProxyCheckedChanged);
- //
- // btnViewLog
- //
- this.btnViewLog.Image = ((System.Drawing.Image)(resources.GetObject("btnViewLog.Image")));
- this.btnViewLog.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btnViewLog.Location = new System.Drawing.Point(148, 236);
- this.btnViewLog.Name = "btnViewLog";
- this.btnViewLog.Size = new System.Drawing.Size(128, 28);
- this.btnViewLog.TabIndex = 3;
- this.btnViewLog.Text = "&View System Log";
- this.btnViewLog.Click += new System.EventHandler(this.OnViewLogClick);
- //
- // SettingsControl
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.btnViewLog);
- this.Controls.Add(this.grpProxy);
- this.Controls.Add(this.btnUpdate);
- this.Controls.Add(this.grpWebUpdate);
- this.Name = "SettingsControl";
- this.Size = new System.Drawing.Size(406, 327);
- this.grpWebUpdate.ResumeLayout(false);
- this.grpProxy.ResumeLayout(false);
- this.grpProxy.PerformLayout();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.GroupBox grpWebUpdate;
- private System.Windows.Forms.Button btnUpdate;
- private System.Windows.Forms.CheckBox chkAutoUpdate;
- private System.Windows.Forms.Button btnCheck;
- private System.Windows.Forms.GroupBox grpProxy;
- private System.Windows.Forms.TextBox txtPassword;
- private System.Windows.Forms.Label lblPassword;
- private System.Windows.Forms.TextBox txtUserName;
- private System.Windows.Forms.Label lblUsername;
- private System.Windows.Forms.TextBox txtAddress;
- private System.Windows.Forms.Label lblAddress;
- private System.Windows.Forms.CheckBox chkUseHTTPProxy;
- private System.Windows.Forms.Button btnViewLog;
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/SettingsControl.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/SettingsControl.cs
deleted file mode 100644
index 436b810f..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/SettingsControl.cs
+++ /dev/null
@@ -1,182 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.Threading;
-using System.Diagnostics;
-using System.IO;
-using System.Configuration;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Drawing;
-using System.Data;
-using System.Text;
-using System.Windows.Forms;
-
-using WebsitePanel.Installer.Common;
-using WebsitePanel.Installer.Core;
-using WebsitePanel.Installer.Configuration;
-
-namespace WebsitePanel.Installer.Controls
-{
- ///
- /// Settings control
- ///
- internal partial class SettingsControl : ResultViewControl
- {
- ///
- /// Initializes a new instance of the SettingsControl class.
- ///
- public SettingsControl()
- {
- InitializeComponent();
- }
-
- ///
- /// Shows control
- ///
- ///
- public override void ShowControl(AppContext context)
- {
- base.ShowControl(context);
- if (!IsInitialized)
- {
- AppContext = context;
- LoadSettings();
- IsInitialized = true;
- }
- }
-
- ///
- /// Loads application settings
- ///
- private void LoadSettings()
- {
- InstallerSection appConfig = AppConfigManager.AppConfiguration;
- chkAutoUpdate.Checked = appConfig.GetBooleanSetting(ConfigKeys.Web_AutoCheck);
- chkUseHTTPProxy.Checked = appConfig.GetBooleanSetting(ConfigKeys.Web_Proxy_UseProxy);
- txtAddress.Text = appConfig.GetStringSetting(ConfigKeys.Web_Proxy_Address);
- txtUserName.Text = appConfig.GetStringSetting(ConfigKeys.Web_Proxy_UserName);
- txtPassword.Text = appConfig.GetStringSetting(ConfigKeys.Web_Proxy_Password);
- }
-
- private void OnUseHTTPProxyCheckedChanged(object sender, EventArgs e)
- {
- txtAddress.Enabled = chkUseHTTPProxy.Checked;
- txtUserName.Enabled = chkUseHTTPProxy.Checked;
- txtPassword.Enabled = chkUseHTTPProxy.Checked;
- }
-
- ///
- /// Save application configuration
- ///
- ///
- ///
- private void OnUpdateClick(object sender, EventArgs e)
- {
- KeyValueConfigurationCollection settings = AppConfigManager.AppConfiguration.Settings;
- settings[ConfigKeys.Web_AutoCheck].Value = chkAutoUpdate.Checked.ToString();
- settings[ConfigKeys.Web_Proxy_UseProxy].Value = chkUseHTTPProxy.Checked.ToString();
- settings[ConfigKeys.Web_Proxy_Address].Value = txtAddress.Text;
- settings[ConfigKeys.Web_Proxy_UserName].Value = txtUserName.Text;
- settings[ConfigKeys.Web_Proxy_Password].Value = txtPassword.Text;
- //
- AppConfigManager.SaveConfiguration(true);
- }
-
- ///
- /// Checks for updates
- ///
- ///
- ///
- private void OnCheckClick(object sender, EventArgs e)
- {
- //start check in the separated thread
- AppContext.AppForm.StartAsyncProgress("Connecting...", true);
- ThreadStart threadDelegate = new ThreadStart(StartCheck);
- Thread newThread = new Thread(threadDelegate);
- newThread.Start();
- }
-
- ///
- /// Starts check
- ///
- private void StartCheck()
- {
- bool startUpdate = CheckForUpdate();
- if (startUpdate)
- {
- AppContext.AppForm.Close();
- }
- }
-
- ///
- /// Checks for update
- ///
- ///
- private bool CheckForUpdate()
- {
- string fileName;
- bool updateAvailable = false;
- try
- {
- updateAvailable = AppContext.AppForm.CheckForUpdate(out fileName);
- AppContext.AppForm.FinishProgress();
- }
- catch (Exception ex)
- {
- Log.WriteError("Service error", ex);
- AppContext.AppForm.FinishProgress();
- AppContext.AppForm.ShowServerError();
- return false;
- }
-
- string appName = AppContext.AppForm.Text;
- if (updateAvailable)
- {
- string message = string.Format("This version of {0} is out of date.\nWould you like to download the latest version?", appName);
- if (MessageBox.Show(AppContext.AppForm, message, appName, MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
- {
- return AppContext.AppForm.StartUpdateProcess(fileName);
- }
- }
- else
- {
- string message = string.Format("This version of {0} is up to date.", appName);
- Log.WriteInfo(message);
- AppContext.AppForm.ShowInfo(message);
- }
- return false;
- }
-
- private void OnViewLogClick(object sender, EventArgs e)
- {
- Log.ShowLogFile();
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/SettingsControl.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/SettingsControl.resx
deleted file mode 100644
index bca2e66c..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/SettingsControl.resx
+++ /dev/null
@@ -1,173 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAA05JREFUOE+Vk2tI
- k2EYhtMF/Qqi0haVaaP80jbnnIecNQ+bh5k5yxpump+Zh2EnSbODqalBcxrNkppJTd1Sl3kIKrTylMM0
- MyxL1LKWqQyMEjpQpnefKwLzVy88f16e++J+3vd+LBb8cxi8TP5KxhrhklXLfWm0hXafP34dGB963/zh
- /Wjr9M+pJ1T754nBQsyRLd9wkFbbOW7pE6dRBCqKv0fps5H2IB/7dfUIPdsCmaoHwqR7RtczZDXV60jV
- wjmAnZmdFgHJN25xSuNBNmQi7Xot8l5qIL7cjnDNE8SUvYD4VBsiztZN27kUKikAiyrLv5DNkmvniSsS
- eL5g49FEIyan+nHXMIR9dc9AthgRWzWA3Wc6kFJ9HduOX5he5XT6KAVYZgasdk73ts9JmnHslCJ2WIY3
- 3wz4OmPEgNEE5esxRLWPgtQPQlrQDaUpGrkmARwj8set7JMFZoCdKEttqWZhbeU28Hvk0EwWYNQ0CaW2
- A2SPCTsajYjQ9iMs24CMES+kjPHgmnMEa7l5p8yADWT2CHtXOVhRWngm6BB0qBInLjZB2vcJIQYTAmuG
- IS56hpDjBuRN+CF6iI1Nl/zgKChrMgNsYlN/uElugyVvAjv/OTzL+sG/MQx+zVvwda8gLOqD6HQ3BPKH
- COhdB+dGa1ir3OHgUzViBtAlKWNMUgVuZD2YUj2YkTqwZKVwjqkAL6UJ/uldECS1w0PagPXFMrDO7QVn
- jxoMbskfB2xVEeFWj00CPThherj37YR4MA7y1ydBVpfAV94Cr6g28KJbwU9sxtaEeniSNVjDVGT9duCQ
- EUS43QaxpQLrykVY3CwGrzsBW3oTETJwAJE31fBNNkCY2ozwC72I1vfDJ6Htk5X9EZEZQP3nYlt28VXC
- ow6EpBAWaiZod9zB6AiHy9N4cJ/GgPtyO/XA5Yi4RiXycCdsXQuyKR39b5AoGpPB0TUQHrWwleVihU4I
- u8Yw2Dz0hU1HAFy6EsFPq4T3/nY4h1ZpKbHrnCTOZpuCODFcrhQ7eNVi6TERrDWBoN/ngaPNhb/yPoJy
- W6ftvdUFf8SL/l3C2VFos/Gkb0wPXr31aCndP/4dsUfxhfAqfczgnFdYE6nBs7bnLdI80n9e/AKxCsOV
- gSO8kwAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAg1JREFUOE+tk+9L
- U1EYx/fXFPQierHeDXphtZmFUBLcjNYLLcyiH26lkIbZFMfd1cwNXS0N07iL5na31tyVkshl5Cimc7AN
- 8dZWLdLSpTbb+nbvCVYnrAg88Hlznuf5POccnqNSbcR64F+GV8hiaHAeNx0Z2KxpcBYJraYkGuqjBKNh
- Goa6qSKHK+0o9vZ6sxgVAXPHPP62/I8i2FrmgplNYMv2kp+CYdfiPwWruTwE8QU273ZCV2qiBTy/gNHg
- +idYWytA4dPnL7gXmMSmXTzU6hpa4LjxDvd9OTSZUsUbFArf8DVfwIePqwTp7SKGPE+J4NTZcVpgs6bg
- dq/A0DSLaDyN8NQcxsMJPAzNYHgkTOB9EzByPwTHa8doQScnwelcgtkmgamdRNnRx9AcDGDbXjcp+BVN
- pQB9lUgL2ttmcXtwAb32N+iySrBwSbS2x3CpJYJz5ycIJ888wbETY9BXi2D0flpwuTmOvv4MurolsB0J
- qEur1kXpzBzx4wAj0ILGizH02NNgLUlS+CqVQV5+QIXsSo7A9gVJbD/jwb4KFy2ovxDF1WtzuNI2Q5KU
- wopDAoKhGF6/XyIM+KZJTCnWlTtpgUEeU7Mljsbml38U9HsiJKYt51Gy585vAnnGjQ3PcbouRJLuep/B
- 1D0CziHKBAns9QCJ7dAOQLPzFi2Qp0el07aQzf9hIz6y6juAficIctTi+AAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAiFJREFUOE+lk/9P
- EmEcx+tPdLVaqx9arbH1Rbf8ha10Za3N1dJNB6sEhkFcXid+IcRSQjlJhJqAfJETIowvhzlLZjV4znfP
- c4xDg7a2bnvfPXf7vF/vz/N8dicBnPiviwGa4ld3urhApWr3lzHuK8CyuI1nbz5jjPPAxLkguBZgdQjf
- l7zevqZHM7MPjhW5FP1SQ0pWkGQqK1gJxzAyFYaYKuInLVrLyrDwc4okpW+q3bPb35KNc1k8tTnBBQuQ
- 9oC4DCR2AU+0BGFyWtIAnZITNH2jSGCxC/hIjemvQHkf2DkAkhRmsgl1DfB8qai2vVlpiK0ZIF5SYH0x
- geX0HuQfwC8C7CuAN16CwWBMagAzPaxNmVAjwUaJIFYgiFJFtusQnK9hn/Ehla+ARYakAgwmGwmHw90a
- 4Ml8jiY3TO+zNYhbNQQyNbyaFcHzAvS378I8zoHjXmLYYEFkff3GsSmMurYQo8mBTB1+qSHeHUQ+l4fu
- ei9EiaBn1E+3UseVhwvU2xq9OoUhZwprOdIyT3qQ/5THJV033iUOaEcEV4d8EDOHuPhgvh0wOBGn6UQt
- ZFpdXoR+4DHM0yH6rqhiyQxwfsDdDrhvj2iFTUPreaglO8QKzvbPVtq20G/9cATQMPwplnymb6Z66tZU
- VxtAPxbcdYa+dTQyUKfkY1PoNQZO94z4q9eGfdA98uLy4Fv1sC7cc+PcHVfH5I4/09HW/nX9G9TaBKNr
- RrciAAAAAElFTkSuQmCC
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/TopLogoControl.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/TopLogoControl.Designer.cs
deleted file mode 100644
index e43adea9..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/TopLogoControl.Designer.cs
+++ /dev/null
@@ -1,115 +0,0 @@
-namespace WebsitePanel.Installer
-{
- partial class TopLogoControl
- {
- private System.Windows.Forms.Panel pnlLogo;
- private System.Windows.Forms.PictureBox imgLogo;
- private System.Windows.Forms.Label lblVersion;
- private LineBox line;
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- protected override void Dispose( bool disposing )
- {
- if( disposing )
- {
- if (components != null)
- {
- components.Dispose();
- }
- }
- base.Dispose( disposing );
- }
-
- #region 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(TopLogoControl));
- this.pnlLogo = new System.Windows.Forms.Panel();
- this.progressIcon = new WebsitePanel.Installer.Controls.ProgressIcon();
- this.lblVersion = new System.Windows.Forms.Label();
- this.imgLogo = new System.Windows.Forms.PictureBox();
- this.line = new WebsitePanel.Installer.LineBox();
- this.pnlLogo.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.imgLogo)).BeginInit();
- this.SuspendLayout();
- //
- // pnlLogo
- //
- this.pnlLogo.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.pnlLogo.BackColor = System.Drawing.Color.White;
- this.pnlLogo.Controls.Add(this.progressIcon);
- this.pnlLogo.Controls.Add(this.lblVersion);
- this.pnlLogo.Controls.Add(this.imgLogo);
- this.pnlLogo.Location = new System.Drawing.Point(0, 0);
- this.pnlLogo.Name = "pnlLogo";
- this.pnlLogo.Size = new System.Drawing.Size(496, 63);
- this.pnlLogo.TabIndex = 2;
- //
- // progressIcon
- //
- this.progressIcon.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.progressIcon.Location = new System.Drawing.Point(452, 15);
- this.progressIcon.Name = "progressIcon";
- this.progressIcon.Size = new System.Drawing.Size(30, 30);
- this.progressIcon.TabIndex = 4;
- this.progressIcon.Visible = false;
- //
- // lblVersion
- //
- this.lblVersion.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
- this.lblVersion.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
- this.lblVersion.Location = new System.Drawing.Point(317, 31);
- this.lblVersion.Name = "lblVersion";
- this.lblVersion.Size = new System.Drawing.Size(42, 13);
- this.lblVersion.TabIndex = 2;
- this.lblVersion.Text = "v1.0";
- //
- // imgLogo
- //
- this.imgLogo.Image = ((System.Drawing.Image)(resources.GetObject("imgLogo.Image")));
- this.imgLogo.Location = new System.Drawing.Point(13, 7);
- this.imgLogo.Name = "imgLogo";
- this.imgLogo.Size = new System.Drawing.Size(303, 48);
- this.imgLogo.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
- this.imgLogo.TabIndex = 0;
- this.imgLogo.TabStop = false;
- //
- // line
- //
- this.line.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.line.Location = new System.Drawing.Point(0, 61);
- this.line.Name = "line";
- this.line.Size = new System.Drawing.Size(496, 2);
- this.line.TabIndex = 3;
- this.line.TabStop = false;
- //
- // TopLogoControl
- //
- this.BackColor = System.Drawing.Color.White;
- this.Controls.Add(this.line);
- this.Controls.Add(this.pnlLogo);
- this.Name = "TopLogoControl";
- this.Size = new System.Drawing.Size(496, 64);
- this.pnlLogo.ResumeLayout(false);
- this.pnlLogo.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.imgLogo)).EndInit();
- this.ResumeLayout(false);
-
- }
- #endregion
-
- private WebsitePanel.Installer.Controls.ProgressIcon progressIcon;
-
-
- }
-}
-
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/TopLogoControl.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/TopLogoControl.cs
deleted file mode 100644
index d1f65db9..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/TopLogoControl.cs
+++ /dev/null
@@ -1,62 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System.Windows.Forms;
-using System.Reflection;
-
-namespace WebsitePanel.Installer
-{
- ///
- /// Top logo
- ///
- internal partial class TopLogoControl : UserControl
- {
- ///
- /// Initializes a new instance of the TopLogoControl class.
- ///
- public TopLogoControl()
- {
- // This call is required by the Windows Form Designer.
- InitializeComponent();
- lblVersion.Text = "v" + this.GetType().Assembly.GetName().Version.ToString(3);
- }
-
- internal void ShowProgress()
- {
- progressIcon.Visible = true;
- progressIcon.StartAnimation();
- }
-
- internal void HideProgress()
- {
- progressIcon.Visible = false;
- progressIcon.StopAnimation();
- }
- }
-}
-
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/TopLogoControl.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/TopLogoControl.resx
deleted file mode 100644
index d8f29bf1..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Controls/TopLogoControl.resx
+++ /dev/null
@@ -1,202 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
-
-
- R0lGODlhLwEwAIcAAAAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8P
- DxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMj
- IyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3
- Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktL
- S0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9f
- X2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNz
- c3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKCgoODg4SEhIWFhYaGhoeH
- h4iIiImJiYuLi4yMjI2NjY6Ojo+Pj5CQkJGRkZKSkpOTk5SUlJWVlZaWlpeXl5iYmJmZmZqampubm5yc
- nJ2dnZ6enp+fn6CgoKGhoaKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq6ysrK2tra6urq+vr7Cw
- sLGxsbKysrOzs7S0tLW1tba2tre3t7i4uLm5ubq6uru7u7y8vL29vb6+vr+/v8DAwMHBwcLCwsPDw8TE
- xMXFxcbGxsfHx8jIyMnJycrKysvLy8zMzM3Nzc7Ozs/Pz9DQ0NHR0dLS0tPT09TU1NXV1dbW1tfX19jY
- 2NnZ2dra2tvb29zc3N3d3d7e3t/f3+Dg4OHh4eLi4uPj4+Tk5OXl5ebm5ufn5+jo6Onp6erq6uvr6+zs
- 7O3t7e7u7u/v7/Dw8PHx8fLy8vPz8/T09PX19fb29vf39/j4+Pn5+fr6+vv7+/z8/P39/f7+/v///wAA
- ACH/C05FVFNDQVBFMi4wAwEBAAAh+QQJAAD/ACwAAAAALwEwAAAI/wD/CRxIsKDBgwgTKlzIsKHDhxAj
- SpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0BT+htKtKjR
- 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
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Program.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Program.cs
deleted file mode 100644
index 4843375d..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Program.cs
+++ /dev/null
@@ -1,255 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System;
-using System.IO;
-using System.Text;
-using System.Threading;
-using System.Diagnostics;
-using System.Collections.Generic;
-using System.Windows.Forms;
-
-using System.Security;
-using System.Security.Permissions;
-
-using WebsitePanel.Installer.Common;
-using WebsitePanel.Installer.Services;
-using System.Xml;
-using System.Runtime.Remoting.Lifetime;
-using System.Security.Principal;
-using WebsitePanel.Installer.Core;
-using WebsitePanel.Installer.Configuration;
-using System.Reflection;
-
-namespace WebsitePanel.Installer
-{
- ///
- /// Entry point class
- ///
- static class Program
- {
- public const string SetupFromXmlFileParam = "setupxml";
-
- ///
- /// The main entry point for the application.
- ///
- [STAThread]
- static void Main()
- {
- //
- Utils.FixConfigurationSectionDefinition();
-
- //check security permissions
- if (!Utils.CheckSecurity())
- {
- ShowSecurityError();
- return;
- }
-
- //check administrator permissions
- if (!Utils.IsAdministrator())
- {
- ShowSecurityError();
- return;
- }
-
- //check for running instance
- if ( !Utils.IsNewInstance())
- {
- UiUtils.ShowRunningInstance();
- return;
- }
-
- Log.WriteApplicationStart();
- //AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(OnUnhandledException);
- Application.ApplicationExit += new EventHandler(OnApplicationExit);
- Application.ThreadException += new ThreadExceptionEventHandler(OnThreadException);
- Application.EnableVisualStyles();
- Application.SetCompatibleTextRenderingDefault(false);
-
- //check OS version
- Log.WriteInfo("{0} detected", Global.OSVersion);
-
- //check IIS version
- if (Global.IISVersion.Major == 0)
- Log.WriteError("IIS not found.");
- else
- Log.WriteInfo("IIS {0} detected", Global.IISVersion);
-
- ApplicationForm mainForm = new ApplicationForm();
-
- if (!CheckCommandLineArgument("/nocheck"))
- {
- //Check for new versions
- if (CheckForUpdate(mainForm))
- {
- return;
- }
- }
- // Load setup parameters from an XML file
- LoadSetupXmlFile();
- //start application
- mainForm.InitializeApplication();
- Application.Run(mainForm);
- //
- Utils.SaveMutex();
- }
-
- private static void LoadSetupXmlFile()
- {
- string file = GetCommandLineArgumentValue(SetupFromXmlFileParam);
- if (!string.IsNullOrEmpty(file))
- {
- if (FileUtils.FileExists(file))
- {
- try
- {
- XmlDocument doc = new XmlDocument();
- doc.Load(file);
- Global.SetupXmlDocument = doc;
- }
- catch (Exception ex)
- {
- Log.WriteError("I/O error", ex);
- }
- }
- }
- }
-
- ///
- /// Application thread exception handler
- ///
- static void OnThreadException(object sender, ThreadExceptionEventArgs e)
- {
- Log.WriteError("Fatal error occured.", e.Exception);
- string message = "A fatal error has occurred. We apologize for this inconvenience.\n" +
- "Please contact Technical Support at support@websitepanel.net.\n\n" +
- "Make sure you include a copy of the Installer.log file from the\n" +
- "WebsitePanel Installer home directory.";
- MessageBox.Show(message, "WebsitePanel Installer", MessageBoxButtons.OK, MessageBoxIcon.Error);
- Application.Exit();
- }
-
- ///
- /// Application exception handler
- ///
- static void OnUnhandledException(object sender, UnhandledExceptionEventArgs e)
- {
- Log.WriteError("Fatal error occured.", (Exception)e.ExceptionObject);
- string message = "A fatal error has occurred. We apologize for this inconvenience.\n" +
- "Please contact Technical Support at support@websitepanel.net.\n\n" +
- "Make sure you include a copy of the Installer.log file from the\n" +
- "WebsitePanel Installer home directory.";
- MessageBox.Show(message, "WebsitePanel Installer", MessageBoxButtons.OK, MessageBoxIcon.Error);
- Process.GetCurrentProcess().Kill();
- }
-
- private static void ShowSecurityError()
- {
- string message = "You do not have the appropriate permissions to perform this operation. Make sure you are running the application from the local disk and you have local system administrator privileges.";
- MessageBox.Show(message, "WebsitePanel Installer", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
-
- ///
- /// Writes to log on application exit
- ///
- private static void OnApplicationExit(object sender, EventArgs e)
- {
- Log.WriteApplicationEnd();
- }
-
- ///
- /// Check whether application is up-to-date
- ///
- private static bool CheckForUpdate(ApplicationForm mainForm)
- {
- if (!AppConfigManager.AppConfiguration.GetBooleanSetting(ConfigKeys.Web_AutoCheck))
- return false;
-
- string appName = mainForm.Text;
- string fileName;
- bool updateAvailable;
- try
- {
- updateAvailable = mainForm.CheckForUpdate(out fileName);
- }
- catch (Exception ex)
- {
- Log.WriteError("Update error", ex);
- mainForm.ShowServerError();
- return false;
- }
-
- if (updateAvailable)
- {
- string message = string.Format("An updated version of {0} is available now.\nWould you like to download and install the latest version?", appName);
- if (MessageBox.Show(message, appName, MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
- {
- return mainForm.StartUpdateProcess(fileName);
- }
- }
- return false;
- }
-
- ///
- /// Check for existing command line argument
- ///
- private static bool CheckCommandLineArgument(string argName)
- {
- string[] args = Environment.GetCommandLineArgs();
- for (int i = 1; i < args.Length; i++)
- {
- string arg = args[i];
- if (string.Equals(arg, argName, StringComparison.InvariantCultureIgnoreCase))
- {
- return true;
- }
- }
- return false;
- }
-
- ///
- /// Check for existing command line argument
- ///
- private static string GetCommandLineArgumentValue(string argName)
- {
- string key = "/"+argName.ToLower()+":";
- string[] args = Environment.GetCommandLineArgs();
- for (int i = 1; i < args.Length; i++)
- {
- string arg = args[i].ToLower();
- if (arg.StartsWith(key))
- {
- return arg.Substring(key.Length);
- }
- }
- return null;
- }
-
- }
-}
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Properties/AssemblyInfo.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Properties/AssemblyInfo.cs
deleted file mode 100644
index 30bd80b6..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,49 +0,0 @@
-// Copyright (c) 2011, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-[assembly: AssemblyTitle("WebsitePanel Installer")]
-[assembly: AssemblyDescription("WebsitePanel Installer")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyProduct("WebsitePanel Installer")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// Setting ComVisible to false makes the types in this assembly not visible
-// to COM components. If you need to access a type in this assembly from
-// COM, set the ComVisible attribute to true on that type.
-[assembly: ComVisible(false)]
-
-// The following GUID is for the ID of the typelib if this project is exposed to COM
-[assembly: Guid("45D4837C-45BA-426A-B41C-BCD17AD97FCD")]
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Properties/Resources.Designer.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Properties/Resources.Designer.cs
deleted file mode 100644
index d051c368..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Properties/Resources.Designer.cs
+++ /dev/null
@@ -1,147 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-// Runtime Version:4.0.30319.1
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace WebsitePanel.Installer.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", "4.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("WebsitePanel.Installer.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;
- }
- }
-
- internal static System.Drawing.Icon Computer16 {
- get {
- object obj = ResourceManager.GetObject("Computer16", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon Computer32 {
- get {
- object obj = ResourceManager.GetObject("Computer32", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon Folder16 {
- get {
- object obj = ResourceManager.GetObject("Folder16", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon Folder32 {
- get {
- object obj = ResourceManager.GetObject("Folder32", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon Network16 {
- get {
- object obj = ResourceManager.GetObject("Network16", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon Network32 {
- get {
- object obj = ResourceManager.GetObject("Network32", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon Service16 {
- get {
- object obj = ResourceManager.GetObject("Service16", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon Service32 {
- get {
- object obj = ResourceManager.GetObject("Service32", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon Tool16 {
- get {
- object obj = ResourceManager.GetObject("Tool16", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon Tool32 {
- get {
- object obj = ResourceManager.GetObject("Tool32", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon World16 {
- get {
- object obj = ResourceManager.GetObject("World16", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
-
- internal static System.Drawing.Icon World32 {
- get {
- object obj = ResourceManager.GetObject("World32", resourceCulture);
- return ((System.Drawing.Icon)(obj));
- }
- }
- }
-}
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Properties/Resources.resx b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Properties/Resources.resx
deleted file mode 100644
index 1e11f25c..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Properties/Resources.resx
+++ /dev/null
@@ -1,157 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
-
-
-
- ..\Resources\Computer16.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Computer32.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Folder16.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Folder32.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Network16.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Network32.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Service16.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Service32.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Tool16.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Tool32.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\World16.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\World32.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Computer16.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Computer16.ico
deleted file mode 100644
index c897d0b1..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Computer16.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Computer32.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Computer32.ico
deleted file mode 100644
index 3a748010..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Computer32.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Folder16.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Folder16.ico
deleted file mode 100644
index 9a3997fe..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Folder16.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Folder32.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Folder32.ico
deleted file mode 100644
index 74b3cfed..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Folder32.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Network16.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Network16.ico
deleted file mode 100644
index cc3e55e4..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Network16.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Network32.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Network32.ico
deleted file mode 100644
index 079bf865..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Network32.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Service16.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Service16.ico
deleted file mode 100644
index 24450b83..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Service16.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Service32.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Service32.ico
deleted file mode 100644
index 93487a27..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Service32.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Tool16.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Tool16.ico
deleted file mode 100644
index fabc1ac5..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Tool16.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Tool32.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Tool32.ico
deleted file mode 100644
index b1b76737..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/Tool32.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/WebSitePanel.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/WebSitePanel.ico
deleted file mode 100644
index 10fcb36c..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/WebSitePanel.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/World16.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/World16.ico
deleted file mode 100644
index 3809be96..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/World16.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/World32.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/World32.ico
deleted file mode 100644
index 7e774ed4..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Resources/World32.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Updater.exe b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Updater.exe
deleted file mode 100644
index 7e9327c6..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/Updater.exe and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/WebsitePanel.Installer.csproj b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/WebsitePanel.Installer.csproj
deleted file mode 100644
index 2e547b11..00000000
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/WebsitePanel.Installer.csproj
+++ /dev/null
@@ -1,297 +0,0 @@
-
-
-
- Debug
- AnyCPU
- 9.0.30729
- 2.0
- {A358C6E2-F57D-4AB9-B13D-FD3048134143}
- WinExe
- Properties
- WebsitePanel.Installer
- WebsitePanel.Installer
- websitepanel.ico
-
-
- 3.5
-
-
- v4.0
- false
- publish\
- true
- Disk
- false
- Foreground
- 7
- Days
- false
- false
- true
- 0
- 1.0.0.%2a
- false
- true
-
-
-
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
- AllRules.ruleset
- false
-
-
- none
- true
- bin\Release\
- TRACE
- prompt
- 4
- AllRules.ruleset
-
-
- Always
-
-
-
- False
- ..\..\Lib\Ionic.Zip.Reduced.dll
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- VersionInfo.cs
-
-
- Form
-
-
- ApplicationForm.cs
-
-
-
-
- Code
-
-
- UserControl
-
-
- Form
-
-
- Loader.cs
-
-
-
-
- UserControl
-
-
- ComponentsControl.cs
-
-
- UserControl
-
-
- ComponentControl.cs
-
-
- UserControl
-
-
- UserControl
-
-
- SettingsControl.cs
-
-
- UserControl
-
-
- ServiceControl.cs
-
-
- UserControl
-
-
- ServerControl.cs
-
-
- Component
-
-
- LineBox.cs
-
-
- UserControl
-
-
- ServersControl.cs
-
-
- UserControl
-
-
- TopLogoControl.cs
-
-
-
-
- Designer
- ApplicationForm.cs
-
-
- ComponentsControl.cs
- Designer
-
-
- ComponentControl.cs
- Designer
-
-
- Designer
- Loader.cs
-
-
- SettingsControl.cs
- Designer
-
-
- ServiceControl.cs
- Designer
-
-
- ServerControl.cs
- Designer
-
-
- Designer
- ServersControl.cs
-
-
- Designer
- TopLogoControl.cs
-
-
- ResXFileCodeGenerator
- Resources.Designer.cs
- Designer
-
-
- True
- Resources.resx
- True
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Designer
- ProgressIcon.cs
-
-
-
-
-
-
-
-
-
-
-
-
- False
- .NET Framework 3.5 SP1 Client Profile
- false
-
-
- False
- .NET Framework 3.5 SP1
- true
-
-
- False
- Windows Installer 3.1
- true
-
-
-
-
- {0E4A3F5B-0BB1-4F63-863D-7B0182B378CF}
- WebsitePanel.Installer.Core
-
-
-
-
-
-
-
-
- COPY "$(ProjectDir)App.$(ConfigurationName).config" "$(ProjectDir)App.config" /Y
-
-
-
\ No newline at end of file
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/application.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/application.ico
deleted file mode 100644
index 09b98f81..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/application.ico and /dev/null differ
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/websitepanel.ico b/WebsitePanel.Installer/Sources/WebsitePanel.Installer/websitepanel.ico
deleted file mode 100644
index 10fcb36c..00000000
Binary files a/WebsitePanel.Installer/Sources/WebsitePanel.Installer/websitepanel.ico and /dev/null differ