Commit before update
This commit is contained in:
parent
be85aeff52
commit
ab54e937f5
@ -11,9 +11,8 @@ using System.Windows.Forms;
|
|||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
public static class Config {
|
public static class Config {
|
||||||
private static readonly char[] _equals = new char[] { '=' };
|
private static readonly string _dirName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "RCM");
|
||||||
private static readonly char[] _brackets = new char[] { '[', ']' };
|
private static readonly string _fileName = Path.Combine(_dirName, "RCM.conf");
|
||||||
private static readonly string _fileName = "RCM.conf";
|
|
||||||
|
|
||||||
private static Icon _emptyIcon;
|
private static Icon _emptyIcon;
|
||||||
public static ImageList IconList { get; } = new ImageList() { ColorDepth = ColorDepth.Depth32Bit, ImageSize = new Size(20, 20) };
|
public static ImageList IconList { get; } = new ImageList() { ColorDepth = ColorDepth.Depth32Bit, ImageSize = new Size(20, 20) };
|
||||||
@ -76,6 +75,9 @@ namespace RCM {
|
|||||||
JArray json = new JArray(DataSources.Select(dataSource => ConfigSerializer.ObjToJson(dataSource))
|
JArray json = new JArray(DataSources.Select(dataSource => ConfigSerializer.ObjToJson(dataSource))
|
||||||
.Union(ConfigSections.Values.Select(configSection => ConfigSerializer.ObjToJson(configSection)))
|
.Union(ConfigSections.Values.Select(configSection => ConfigSerializer.ObjToJson(configSection)))
|
||||||
.Union(_uknownSections));
|
.Union(_uknownSections));
|
||||||
|
if (!Directory.Exists(_dirName)) {
|
||||||
|
Directory.CreateDirectory(_dirName);
|
||||||
|
}
|
||||||
File.WriteAllText(_fileName, ConfigSerializer.JsonToString(json));
|
File.WriteAllText(_fileName, ConfigSerializer.JsonToString(json));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
8
RCM/ConfigForm.Designer.cs
generated
8
RCM/ConfigForm.Designer.cs
generated
@ -23,6 +23,7 @@
|
|||||||
/// the contents of this method with the code editor.
|
/// the contents of this method with the code editor.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void InitializeComponent() {
|
private void InitializeComponent() {
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigForm));
|
||||||
this.treeView = new System.Windows.Forms.TreeView();
|
this.treeView = new System.Windows.Forms.TreeView();
|
||||||
this.tabControl = new System.Windows.Forms.TabControl();
|
this.tabControl = new System.Windows.Forms.TabControl();
|
||||||
this.tabPage1 = new System.Windows.Forms.TabPage();
|
this.tabPage1 = new System.Windows.Forms.TabPage();
|
||||||
@ -103,7 +104,7 @@
|
|||||||
this.panelDataSource.Location = new System.Drawing.Point(10, 53);
|
this.panelDataSource.Location = new System.Drawing.Point(10, 53);
|
||||||
this.panelDataSource.Name = "panelDataSource";
|
this.panelDataSource.Name = "panelDataSource";
|
||||||
this.panelDataSource.Size = new System.Drawing.Size(307, 373);
|
this.panelDataSource.Size = new System.Drawing.Size(307, 373);
|
||||||
this.panelDataSource.TabIndex = 19;
|
this.panelDataSource.TabIndex = 2;
|
||||||
//
|
//
|
||||||
// buttonSave
|
// buttonSave
|
||||||
//
|
//
|
||||||
@ -112,7 +113,7 @@
|
|||||||
this.buttonSave.Location = new System.Drawing.Point(131, 432);
|
this.buttonSave.Location = new System.Drawing.Point(131, 432);
|
||||||
this.buttonSave.Name = "buttonSave";
|
this.buttonSave.Name = "buttonSave";
|
||||||
this.buttonSave.Size = new System.Drawing.Size(175, 23);
|
this.buttonSave.Size = new System.Drawing.Size(175, 23);
|
||||||
this.buttonSave.TabIndex = 18;
|
this.buttonSave.TabIndex = 3;
|
||||||
this.buttonSave.Text = "Save changes";
|
this.buttonSave.Text = "Save changes";
|
||||||
this.buttonSave.UseVisualStyleBackColor = true;
|
this.buttonSave.UseVisualStyleBackColor = true;
|
||||||
this.buttonSave.Click += new System.EventHandler(this.ButtonSave_Click);
|
this.buttonSave.Click += new System.EventHandler(this.ButtonSave_Click);
|
||||||
@ -123,7 +124,7 @@
|
|||||||
this.textBoxTitle.Location = new System.Drawing.Point(130, 9);
|
this.textBoxTitle.Location = new System.Drawing.Point(130, 9);
|
||||||
this.textBoxTitle.Name = "textBoxTitle";
|
this.textBoxTitle.Name = "textBoxTitle";
|
||||||
this.textBoxTitle.Size = new System.Drawing.Size(175, 20);
|
this.textBoxTitle.Size = new System.Drawing.Size(175, 20);
|
||||||
this.textBoxTitle.TabIndex = 17;
|
this.textBoxTitle.TabIndex = 1;
|
||||||
//
|
//
|
||||||
// labelTitle
|
// labelTitle
|
||||||
//
|
//
|
||||||
@ -140,6 +141,7 @@
|
|||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
this.ClientSize = new System.Drawing.Size(574, 496);
|
this.ClientSize = new System.Drawing.Size(574, 496);
|
||||||
this.Controls.Add(this.tabControl);
|
this.Controls.Add(this.tabControl);
|
||||||
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
this.Name = "ConfigForm";
|
this.Name = "ConfigForm";
|
||||||
this.Text = "Configuration - Remote Connection Manager";
|
this.Text = "Configuration - Remote Connection Manager";
|
||||||
this.tabControl.ResumeLayout(false);
|
this.tabControl.ResumeLayout(false);
|
||||||
|
@ -1,11 +1,4 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.ComponentModel;
|
|
||||||
using System.Data;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
@ -24,7 +17,6 @@ namespace RCM {
|
|||||||
treeView.ImageList = Config.IconList;
|
treeView.ImageList = Config.IconList;
|
||||||
treeView.ContextMenuStrip = GetNewDataSourceContextMenu();
|
treeView.ContextMenuStrip = GetNewDataSourceContextMenu();
|
||||||
foreach (IDataSource dataSource in Config.DataSources) {
|
foreach (IDataSource dataSource in Config.DataSources) {
|
||||||
string dataSourceType = dataSource.GetType().FullName;
|
|
||||||
treeView.Nodes.Add(CreateTreeNodeFromDataSource(dataSource));
|
treeView.Nodes.Add(CreateTreeNodeFromDataSource(dataSource));
|
||||||
SortTreeAndSelectNode(null);
|
SortTreeAndSelectNode(null);
|
||||||
}
|
}
|
||||||
@ -39,7 +31,7 @@ namespace RCM {
|
|||||||
#region TreeView display
|
#region TreeView display
|
||||||
private TreeNode CreateTreeNodeFromDataSource(IDataSource dataSource) {
|
private TreeNode CreateTreeNodeFromDataSource(IDataSource dataSource) {
|
||||||
string imageKey = dataSource.GetType().FullName;
|
string imageKey = dataSource.GetType().FullName;
|
||||||
return new TreeNode(dataSource.Title) { Tag = dataSource, ImageKey = imageKey, SelectedImageKey = imageKey, ContextMenuStrip = GetContextMenu(dataSource) };
|
return new TreeNode(dataSource.Title) { Tag = dataSource, ImageKey = imageKey, SelectedImageKey = imageKey, ContextMenuStrip = GetContextMenu() };
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SortTreeAndSelectNode(TreeNode node) {
|
private void SortTreeAndSelectNode(TreeNode node) {
|
||||||
@ -107,7 +99,8 @@ namespace RCM {
|
|||||||
IDataSource dataSource = (IDataSource)e.Node.Tag;
|
IDataSource dataSource = (IDataSource)e.Node.Tag;
|
||||||
dataSource.Title = e.Label;
|
dataSource.Title = e.Label;
|
||||||
Config.Save();
|
Config.Save();
|
||||||
BeginInvoke(new AfterLabelEditWorkaround(SortTreeAndSelectNode), new object[] { e.Node }); // Workaround for treeView.Sort() triggering relabel on every sorted node. See note in https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.listview.afterlabeledit?view=netframework-4.6
|
// Workaround for treeView.Sort() triggering relabel on every sorted node. See note in https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.listview.afterlabeledit?view=netframework-4.6
|
||||||
|
BeginInvoke(new AfterLabelEditWorkaround(SortTreeAndSelectNode), new object[] { e.Node });
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ButtonSave_Click(object sender, EventArgs e) {
|
private void ButtonSave_Click(object sender, EventArgs e) {
|
||||||
@ -117,6 +110,7 @@ namespace RCM {
|
|||||||
dataSource.Title = selectedNode.Text = textBoxTitle.Text;
|
dataSource.Title = selectedNode.Text = textBoxTitle.Text;
|
||||||
Config.Save();
|
Config.Save();
|
||||||
SortTreeAndSelectNode(selectedNode);
|
SortTreeAndSelectNode(selectedNode);
|
||||||
|
MessageBox.Show("Data source changes saved", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void NewDataSourceContextMenuItem_Click(object sender, EventArgs e) {
|
private void NewDataSourceContextMenuItem_Click(object sender, EventArgs e) {
|
||||||
@ -159,7 +153,7 @@ namespace RCM {
|
|||||||
ContextMenuStrip menu = new ContextMenuStrip();
|
ContextMenuStrip menu = new ContextMenuStrip();
|
||||||
ToolStripMenuItem menuItem = new ToolStripMenuItem("New item");
|
ToolStripMenuItem menuItem = new ToolStripMenuItem("New item");
|
||||||
foreach (Type type in Config.DataSourceTypes) {
|
foreach (Type type in Config.DataSourceTypes) {
|
||||||
ToolStripMenuItem item = new ToolStripMenuItem(type.GetDisplayName()) { Tag = type };
|
ToolStripMenuItem item = new ToolStripMenuItem(type.GetDisplayName()) { Tag = type, Image = Config.IconList.Images[type.FullName] };
|
||||||
item.Click += NewDataSourceContextMenuItem_Click;
|
item.Click += NewDataSourceContextMenuItem_Click;
|
||||||
menuItem.DropDownItems.Add(item);
|
menuItem.DropDownItems.Add(item);
|
||||||
}
|
}
|
||||||
@ -167,7 +161,7 @@ namespace RCM {
|
|||||||
return menu;
|
return menu;
|
||||||
}
|
}
|
||||||
|
|
||||||
private ContextMenuStrip GetContextMenu(IDataSource dataSource) {
|
private ContextMenuStrip GetContextMenu() {
|
||||||
ContextMenuStrip menu = new ContextMenuStrip();
|
ContextMenuStrip menu = new ContextMenuStrip();
|
||||||
ToolStripMenuItem duplicateItem = new ToolStripMenuItem("Duplicate item");
|
ToolStripMenuItem duplicateItem = new ToolStripMenuItem("Duplicate item");
|
||||||
duplicateItem.Click += DuplicateDataSourceContextMenuItem_Click;
|
duplicateItem.Click += DuplicateDataSourceContextMenuItem_Click;
|
||||||
|
@ -117,4 +117,467 @@
|
|||||||
<resheader name="writer">
|
<resheader name="writer">
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAsAMDAQAAEABABoBgAAtgAAACAgEAABAAQA6AIAAB4HAAAYGBAAAQAEAOgBAAAGCgAAEBAQAAEA
|
||||||
|
BAAoAQAA7gsAADAwAAABAAgAqA4AABYNAAAgIAAAAQAIAKgIAAC+GwAAGBgAAAEACADIBgAAZiQAABAQ
|
||||||
|
AAABAAgAaAUAAC4rAAAwMAAAAQAgAKglAACWMAAAICAAAAEAIACoEAAAPlYAABAQAAABACAAaAQAAOZm
|
||||||
|
AAAoAAAAMAAAAGAAAAABAAQAAAAAAIAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAA
|
||||||
|
AACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAAAAAAAHAAAAAAAAAA
|
||||||
|
AAAAcAcHBxYWFhYWFhYWEAcAAAAAAAAAAAAAAI//////////////+AYAAAAAAAAAAAAAcP//////////
|
||||||
|
/////wEAAAAAAAAAAAAAcBiIiIiIj/iIiIiIhgcAAAAAAAAAAAAAAAAAAAAAf/cAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAHcHAHAAf/cABwBwABAAAAAAAAAAAAAAAAAAAABwf/cHAAAHAABwAAAAAAAAAAAAAAAAAAAAf/cA
|
||||||
|
AAAACHAAAAAAAABwAAAAAAAAAAAAf/cAAABwf/gAcAAAAAcAcHBxYWcWF2F2j/gWcWAAD/+AAAAAAAAI
|
||||||
|
//////////////////EAB//4AHAAAAAP//////////////////cHAH//gAAAAAAP/4iIiIeIiHiHiHiI
|
||||||
|
eHAAAAf/+ABwAAAP/wAAAAAAAAAAAAAAAABwAAB//4ABAAAP/wABYBYWAWFhBwFgcHAAAAAH//gAcAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAf/+AYAAP/wAAAAAAAAAAAAAAAAAAAAAACP/wAAAP/wAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAj/9wcAAP/wAAAAAAAAAAAAAAAAAAABAP//cAAAAP/wAAAAAAAAAAAAAAAAAABgD//3AAAAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAEAj/9wBwAAAP/wAAAAAAAAAAAAAAAAAHAP//cABwAAAP/wAAAAAAAAAAAAAA
|
||||||
|
AAAACP/3AAAAAAAP/wAAAAAAAAAAAAAAAAAAf/9wAHhwcAAP/wAAAAAAAAAAAAAAAAAAf/cAB4+AAAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAeP+AAAAP/wAAAAAAAAAAAAAAAAAAAAAHj/gAcAAP/wAAAAAAAAAAAAAA
|
||||||
|
AAAABwB//4AHAAAP/wAAAAAAAAAAAAAAAAAAAAf/+ABwAAAP/wAAAAAAAAAAAAAAAAAAAH//gAEAAAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAB//4AHAAAAAP/wBwAAAAAAAAAAAAAAAAf/+AAAAAAAAP/wAAAAAAAAAAAAAA
|
||||||
|
AABwf/9wBwAAAAAP/3B3FncWdxZxZxZxZwAACP/3AAAAAAAP//////////////////cAAI/4cAAAAAAP
|
||||||
|
//////////////////cHAA//9wAAAAcHeIh4h4h4h4iIeIh4iHAABwCP/3AAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AABwAAAP/4cAAAAHcBYBYWBwFgFhYBYWFnAAAAcAj/9wcAAAAAAAAAAAAAAAAAAAAAAAAAAAD/+AAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAHAI+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAcAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
||||||
|
/////wAA////////AAD/4AAAB/8AAP/AAAAD/wAA/8AAAAP/AAD/wAAAA/8AAP/AAAAD/wAA/+AAAAf/
|
||||||
|
AAD/8AAAB/8AAP//8A+B/wAA///wD4D/AADAAAAAAH8AAIAAAAAAPwAAgAAAAAAfAACAAAAAAA8AAIAA
|
||||||
|
AABgBwAAgAAAAHADAACAAAAB+AEAAID////8AQAAgP////wBAACA////+AEAAID////wAwAAgP///+AH
|
||||||
|
AACA////wAcAAID///+ABwAAgP///4ADAACA////gAEAAID///+AAQAAgP///4ABAACA////wAEAAID/
|
||||||
|
///gAwAAgP///+AHAACA////wA8AAID///+AHwAAgH///4A/AACAAAAAAD8AAIAAAAAAPwAAgAAAAAAf
|
||||||
|
AACAAAAAAA8AAIAAAABgBwAAwAAAAHADAADgAAAB+AEAAP/////8AQAA//////4BAAD//////wEAAP//
|
||||||
|
////gwAA////////AAD///////8AACgAAAAgAAAAQAAAAAEABAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
|
||||||
|
AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAAeHh3h3h3h3cAAAAAAAAAAP//
|
||||||
|
////////AAAAAAAAAAB3d3d/93d3cAAAAAAAAAAAAAAAD/AAAABwAAAAAAAAAAAAAA/wAABwAAAAAAAA
|
||||||
|
AAAHAAAP8AB3CPBwAAAAeHh4d3h4f/d3cAj/AAAAAP////////////AAj/AAAAD/d3d3d3d3d3cABwj/
|
||||||
|
cAAA/wAAAAAAAAAAcAAAj4BwAP8AAAAAAAAAAAAABwj/AAD/AAAAAAAAAAAAAAAP+AAA/wAAAAAAAAAA
|
||||||
|
AAAHj4BwAP8AAAAAAAAAAAAAePgAAAD/AAAAAAAAAAAAcP+ABwAA/wAAAAAAAAAAAAj4AHAAAP8AAAAA
|
||||||
|
AAAAAAAIgAf/AAD/AAAAAAAAAAAAcAB/9wAA/wAAAAAAAAAAAAcHj3AAAP8AAAAAAAAAAAAAf/cAAAD/
|
||||||
|
AAAAAAAAAAAAB/9wAAAA/wAAAAAABwAHBw/3AAAAAP93eHh4eHd4d3AH/3AAAAD////////////wcH/3
|
||||||
|
AAAAd3d3d3d3d3d3AAcH/3AAAAAAAAAAAAAAAHAAcH/3AAAAAAAAAAAAAAAAAAcHjwAAAAAAAAAAAAAA
|
||||||
|
AAAAcHcAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAAAAAAAAD//////wAA//4AAH/+AAB//gAAf/8A
|
||||||
|
AH///Dw/wAAAH4AAAA+AAAAHgAACA4AABwGH//+Bh///gYf//wGH//4Dh//8A4f//AGH//wBh//8AYf/
|
||||||
|
/gOH//4Hh//8D4AAAA+AAAAPgAAAB4AAAgPAAAcB////gf///8H////z/////ygAAAAYAAAAMAAAAAEA
|
||||||
|
BAAAAAAAIAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDA
|
||||||
|
wAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8AAAAAAAAAAAAAAAAAAAAHAAAWAAFgcAAAAAAA////
|
||||||
|
////AAAAAAAHB3Foh3BwcAAAAAAAAAAIgABwAAAAAHBwcHcIgHcIgAAAAIh4iHeP+HcH+AAAd/j4iPiI
|
||||||
|
iIcAf4AAd/AAAAAWAQcAB/gAd/AAAAAAAAAAAH9wd/AAAAAAAAAAcPgAd4AAAAAAAAAHD4CAd/AAAAAA
|
||||||
|
AAAA+ABwd/AAAAAAAAB4gHgQd4AAAAAAAAAAAI9gd/AAAAAAAAAHD/Bwd/AAAAAAAAAA/2EAd4BxZ3Fn
|
||||||
|
cWd48QAAd/h4d4eHeIcA/wAAAYj4+I+PiIdxb4AABwAAAAAABgEAcP8AAAAAAAAAAAAABw9wAAAAAAAA
|
||||||
|
AAAAAHAAAAAAAAAAAAAAAAAA////APgAHwD4AB8A+AAfAP/DHwDAAA8AgAAHAAAAAwAAAMEAD//hAA//
|
||||||
|
wQAP/4EAD/+BAA//AQAP/4EAD/+BAA//gwAAAAcAAAAHAIAAAwCAAMEA///hAP//8QD///8AKAAAABAA
|
||||||
|
AAAgAAAAAQAEAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICA
|
||||||
|
AACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAHiIiIiHAAAAAHCHcH
|
||||||
|
AAAAAAB3dwBwAHiIiI+IcPcADwdwcHBwD3B/cAAAAAB3hw9wAAAAAHhweHAAAAAHgAAPAAAAAAB3939w
|
||||||
|
AAAAB3gADwAAAAAHgAB/iIiIiHD3AAcHcHcHAHhwAAAAAAAAAIcAAAAAAAAAAP//AADgBwAA8A8AAPwn
|
||||||
|
AAAAAwAAABEAAB/wAAAf8QAAH+EAAB/gAAAf4QAAH+MAAAADAACAEQAA//gAAP//AAAoAAAAMAAAAGAA
|
||||||
|
AAABAAgAAAAAAAAJAAAAAAAAAAAAAAABAAAAAQAAAAAAAAUFBQAICAgADAwMABEREQAVFRUAGBgYAB0d
|
||||||
|
HQAgICAAJSUlACsrKwAtLS0AMjIyADU1NQA5OTkAPj4+AEFBQQBFRUUASkpKAExMTABRUVEAVlZWAFhY
|
||||||
|
WABdXV0AYGBgAGZmZgBpaWkAbGxsAHFxcQB1dXUAenp6AH5+fgCPj48AmJiYAKSkpACtra0AsbGxALW1
|
||||||
|
tQC7u7sAwcHBAMXFxQDJyckAzMzMANDQ0ADZ2dkA6urqAO3t7QD19fUA+fn5AP7+/gAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAGAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBcAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAfAAQRExMTExMTExMTExMTExMTExMTExMTBAAfAAAAAAAAAAAAAAAAAAAAAAAAAAAPACf/
|
||||||
|
////////////////////////////JwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAMAC7/////////////////
|
||||||
|
////////////LgALAAAAAAAAAAAAAAAAAAAAAAAAAAAXABMjJCQkJCQkJCQs//8sJCQkJCQkJCQjFAAU
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAAAAAAAAAAAf//8fAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAB8TDwwMDAwMBAAf//8fAAQMDAwMDAcAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAFwAf//8fABcAAAAAABcAAAAAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAf//8f
|
||||||
|
AAsAAAAAAAQEISEEAA8AAAAAAAAAAAAAGAQAAAAAAAAAAAAAAAAAAAAAAAAf//8fAAAAAAALEQAc//8n
|
||||||
|
BAAPAAAAAAAAAAAcAAQRExMTExMTExMTExMTExMTExMi//8iExMTEwsAAAAR////KQQADwAAAAAAAAAH
|
||||||
|
ACf///////////////////////////////////8RAAAAGP///ycEAA8AAAAAAAAEAP//////////////
|
||||||
|
//////////////////////8YAA8AABwv//8nBAAPAAAAAAAABC///yQkJCQkJCQkJCQkJCQkJCQkJCQk
|
||||||
|
JCQkJCAEBAAABAAY////KQQADwAAAAAAAC//LwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQA
|
||||||
|
GP///ycEAA8AAAAABC//LwQACQwMDAwMDAwMDAwMDAwMDAwMDAwMERgAAAAAAAAEABj///8nBAAdAAAA
|
||||||
|
AP//LgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY////JgAMAAAABC//LwAEAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAELP//LgAJAAAAAP//LwQAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAPAAQp////GAARAAAABC//LgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwA
|
||||||
|
BCn///8YAAQAAAAAAP//LwQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAEJ////xgABAAAAAAA
|
||||||
|
BC//LgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAQn////GAAEHwAAAAAAAP//LwQAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAABMABCn///8YAAAEHAAAAAAABC//LgQEAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAQEJ////xgAAAAAAAcAAAAAAP//LwAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAd////
|
||||||
|
GAAAABQkFAATAAAABC//LgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT/y8YAAAAGP//LgAJAAAA
|
||||||
|
AP//LwAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACwsAAAAY////JwAMAAAABC//LwQAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAABj///8pBAAcAAAAAP//LgAEAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAFwAAGP///ycHAA8AAAAABC//LwQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAY
|
||||||
|
////JwcADAAAAAAAAP//LgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABf///8pBAAMAAAAAAAA
|
||||||
|
BC//LwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAF////ycHAA8AAAAAAAAAAP//LwAEHQAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAR////KQQACwAAAAAAAAAABC//LwQAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAALEQAd////GAAAGAAAAAAAAAAAAP//LxMTExMTExMTExMTExMTExMTExMTExMTEwsAAAAEK///
|
||||||
|
/xQABAAAAAAAAAAEAC////////////////////////////////////8RAAQABCv///8UAAQAAAAAAAAE
|
||||||
|
AC7///////////////////////////////////8YABwLAAcp//8vFwAEAAAAAAARABMjIyQjJCMkIyQj
|
||||||
|
JCMkIyQjJCMkIyQjJCMkIyAEBAAADAAHKf///xQABAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAHAAAAAsAByv//y8XAAQAAAAAAB8TDwwMDAwMDAwMDAwMDAwMDAwMDAwMDAwPDxgAAAAAAAAL
|
||||||
|
AAcp//8vFAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAHKf//LgALAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAByn/JwALAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAQRBAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAFwQABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
||||||
|
/////wAA////////AAD/4AAAB/8AAP/AAAAD/wAA/8AAAAP/AAD/wAAAA/8AAP/AAAAD/wAA/+AAAAf/
|
||||||
|
AAD/8AAAB/8AAP//8A+B/wAA///wD4D/AADAAAAAAH8AAIAAAAAAPwAAgAAAAAAfAACAAAAAAA8AAIAA
|
||||||
|
AABgBwAAgAAAAHADAACAAAAB+AEAAID////8AQAAgP////wBAACA////+AEAAID////wAwAAgP///+AH
|
||||||
|
AACA////wAcAAID///+ABwAAgP///4ADAACA////gAEAAID///+AAQAAgP///4ABAACA////wAEAAID/
|
||||||
|
///gAwAAgP///+AHAACA////wA8AAID///+AHwAAgH///4A/AACAAAAAAD8AAIAAAAAAPwAAgAAAAAAf
|
||||||
|
AACAAAAAAA8AAIAAAABgBwAAwAAAAHADAADgAAAB+AEAAP/////8AQAA//////4BAAD//////wEAAP//
|
||||||
|
////gwAA////////AAD///////8AACgAAAAgAAAAQAAAAAEACAAAAAAAAAQAAAAAAAAAAAAAAAEAAAAB
|
||||||
|
AAAAAAAABQUFAAkJCQANDQ0AERERABUVFQAZGRkAHBwcACIiIgAlJSUAKCgoAC0tLQA3NzcAOTk5AD09
|
||||||
|
PQBBQUEARUVFAElJSQBMTEwAUlJSAFVVVQBiYmIAZWVlAGlpaQBsbGwAcXFxAHZ2dgB5eXkAfX19AIaG
|
||||||
|
hgCJiYkApaWlALKysgC4uLgAv7+/AN7e3gDl5eUA7e3tAPHx8QD29vYA+fn5AP7+/gAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0GBQUFBQUFBQUFBQUF
|
||||||
|
BQwAAAAAAAAAAAAAAAAAAAAFEx0dHR0dHR0dHR0dHR0dEwUAAAAAAAAAAAAAAAAAAAAmKSkpKSkpKSkp
|
||||||
|
KSkpKSkmAAAAAAAAAAAAAAAAAAAABREaGhoaGhopJhsaGhoaGhEFAAAAAAAAAAAAAAAAAAAAEQoICAgE
|
||||||
|
ACkpAAUGCAgEABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSYAAAAAAAoFBAYAAAAAAAAAAA0GBQUFBQUF
|
||||||
|
BQUFBAApKQAEBg0YACMkCgYAAAAAAAAEEx4dHR0dHR0dHR0dHikmHh4eEwAAICkkCgYAAAAAAAAmKSkp
|
||||||
|
KSkpKSkpKSkpKSkpKSkkAAgEICkkCgYAAAAAACkpGxoaGhoaGhoaGhoaGhoaGxEGAA0EICkkCgYAAAAA
|
||||||
|
KSYEBAgICAgICAgICAgICAgKEQAAABEAISkkCggAAAApJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAoEISkk
|
||||||
|
AAAAACkpAAAAAAAAAAAAAAAAAAAAAAAAAAAABQokKSAAAAAAKSYEAAAAAAAAAAAAAAAAAAAAAAAAAAYK
|
||||||
|
JCkhBBEAAAApJgAAAAAAAAAAAAAAAAAAAAAAAAAGCiQpIQANAAAAACkpAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
CAokKSEEAA0AAAAAKSYEAAAAAAAAAAAAAAAAAAAAAAAAJCkhAAAREQUAAAApJgAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAfHwQAGCkmAAAAACkpAAAAAAAAAAAAAAAAAAAAAAAAFQQAABUpKRgEAAAAKSYEAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAFQAYKSkYAAAAAAApJgAAAAAAAAAAAAAAAAAAAAAAAAAAGCkpGAAAAAAAACkpAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAABBUpKRgAAAAAAAAAKSYEAAYFBQUFBQUFBQUFBQUGDRUAJikfAA0AAAAAAAApKR0d
|
||||||
|
HR0dHR0dHR0dHR0dHR4TAAAaKSkVBAAAAAAAACYpKSkpKSkpKSkpKSkpKSkpKSQAEQAaKSkVAAAAAAAF
|
||||||
|
ERoaGhoaGhoaGhoaGhoaGhobEQYAGwAaKSkVAAAAAAARCggICAgICAgICAgICAgICAoRAAAAGwAaKSkV
|
||||||
|
BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGwAaKSQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
GwAVEwUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABERAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAP//////AAD//gAAf/4AAH/+AAB//wAAf//8PD/AAAAfgAAAD4AAAAeAAAIDgAAHAYf/
|
||||||
|
/4GH//+Bh///AYf//gOH//wDh//8AYf//AGH//wBh//+A4f//geH//wPgAAAD4AAAA+AAAAHgAACA8AA
|
||||||
|
BwH///+B////wf////P/////KAAAABgAAAAwAAAAAQAIAAAAAABAAgAAAAAAAAAAAAAAAQAAAAEAAAAA
|
||||||
|
AAAEBAQACQkJAAwMDAASEhIAFhYWABkZGQAcHBwAISEhACUlJQAzMzMANDQ0ADo6OgA+Pj4AQUFBAEpK
|
||||||
|
SgBOTk4AUVFRAFVVVQBYWFgAZWVlAGlpaQBsbGwAcXFxAHV1dQB/f38AgICAAIaGhgCUlJQAm5ubAKOj
|
||||||
|
owCkpKQAra2tAL6+vgDAwMAA0dHRANXV1QDY2NgA6enpAOzs7ADx8fEA+fn5AP7+/gAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcGCQkJCQkJCQkJCQYWAAAAAAAAAAAAAAYnKioq
|
||||||
|
KioqKioqKicGAAAAAAAAAAAAABANExMTEyQkExMTEw0QAAAAAAAAAAAAAAAAAAAABiIiBgAAFAAKAAAA
|
||||||
|
AAAAABEQEA8QEA8QAiIiAhAXDxsdBAAAAAAACh4eHh4eHh4eHiYmHh4TABYqHgQAAAAWGSolJCQkJSQl
|
||||||
|
JSQkJSUbDQkXKh4EAAAUGSoABgYGBgYGBgYGBgYPAAAJFyofBAAUGSkCAAAAAAAAAAAAAAAAAAAAAB0q
|
||||||
|
FgAUGSoAAAAAAAAAAAAAAAAAAAARDSckBgAUGSoCAAAAAAAAAAAAAAAAABENJyUGGwAUGSkCAAAAAAAA
|
||||||
|
AAAAAAAAAA0nJAYAEQAUGSoAAAAAAAAAAAAAAAAAER8lBgYiEQAUGSoCAAAAAAAAAAAAAAAAAAYCBiQp
|
||||||
|
CgAUGSkCAAAAAAAAAAAAAAAAABcGJCkKEQAUGSoAAAAAAAAAAAAAAAAAAAYkJw0QAAAUGSoADxAPEBAP
|
||||||
|
EBAPEBAXDR8qEQkAAAAWGSoeHh4eHh4eHh4eHh4TAA8pIwQAAAAAECQlJCQkJCUkJCQlJCUbEA8NKSMG
|
||||||
|
AAAAEwkGBgYGBgYGBgYGBgYPAAAPDSkjBAAAAAAAAAAAAAAAAAAAAAAAAAAADw0pFgAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAABEGBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A+AAfAPgAHwD4AB8A/8MfAMAA
|
||||||
|
DwCAAAcAAAADAAAAwQAP/+EAD//BAA//gQAP/4EAD/8BAA//gQAP/4EAD/+DAAAABwAAAAcAgAADAIAA
|
||||||
|
wQD//+EA///xAP///wAoAAAAEAAAACAAAAABAAgAAAAAAAABAAAAAAAAAAAAAAABAAAAAQAAAAAAACkp
|
||||||
|
KQAsLCwAMjIyADU1NQA5OTkAPj4+AEBAQABEREQASEhIAE5OTgBRUVEAWVlZAF5eXgBiYmIAZ2dnAGho
|
||||||
|
aABsbGwAcnJyAHZ2dgB7e3sAf39/AJycnACmpqYAs7OzALS0tADCwsIA1tbWANnZ2QDh4eEA5+fnAOjo
|
||||||
|
6AD4+PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAARGBoaGhoaGhgRAAAAAAAAAAkJCRYWCQkDAAAAAAAAAAAAAA8VFREACQoA
|
||||||
|
AAANGBoaGhoaHR0aCgMdCwAACSAJCQkKCQkJCgoACR0LAAkgCgAAAAAAAAAAABUTHQ8JIAoAAAAAAAAA
|
||||||
|
AAALHwYACSAKAAAAAAAAAAAKHQMDAAkgCgAAAAAAAAAACQETGw8JIAoAAAAAAAAAABURHQMACSABAAAA
|
||||||
|
AAAAAAANHQEAAAogGhoaGhoaGhoKAR0RAAAACQkJCgkJCgkKCgAGHREAAAAAAAAAAAAAAAAAAAMXEQAA
|
||||||
|
AAAAAAAAAAAAAAAAAAD//wAA4AcAAPAPAAD8JwAAAAMAAAARAAAf8AAAH/EAAB/hAAAf4AAAH+EAAB/j
|
||||||
|
AAAAAwAAgBEAAP/4AAD//wAAKAAAADAAAABgAAAAAQAgAAAAAACAJQAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAA
|
||||||
|
AC8AAABWAAAAawAAAHAAAAByAAAAcgAAAHIAAAByAAAAcgAAAHIAAAByAAAAcgAAAHIAAAByAAAAcgAA
|
||||||
|
AHIAAAByAAAAcgAAAHIAAAByAAAAcAAAAGsAAABZAAAAMQAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAgAAAAngAAAO8AAAD9AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD9AAAA8AAAAKMAAAAjAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAMAAACCAAAA/A4ODv9HR0f/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tL
|
||||||
|
S/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9HR0f/EBAQ/wAA
|
||||||
|
AP0AAACGAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAADEAAAA/8PDw/7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+//7+
|
||||||
|
/v7+/v7+yMjI/wAAAP4AAADFAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADNAAAA/+7u7v7+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+//7+/v7+/v7+7u7u/wAAAP4AAADOAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAClAAAA/0tL
|
||||||
|
S/+tra3/sbGx/7Gxsf+xsbH/sbGx/7Gxsf+xsbH/sbGx/7Gxsf/Y2Nj//v7+///////Y2Nj/sbGx/7Gx
|
||||||
|
sf+xsbH/sbGx/7Gxsf+xsbH/sbGx/7Gxsf+urq7/UFBQ/wAAAP4AAACpAAAABgAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAABEAAAA2wAAAP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP9/f3/+/v7+/v7+
|
||||||
|
/v9/f3/+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD+AAAA/gAAAOIAAABKAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAGAAAAMwAAAIQAAACzAAAAxwAAAMwAAADMAAAAzAAAAMwAAADNAAAA8wAA
|
||||||
|
AP5/f3/+/v7+/v7+/v9/f3/+AAAA/gAAAPMAAADNAAAAzAAAAMwAAADMAAAAzwAAAOEAAAD7AAAA/QAA
|
||||||
|
AMsAAABrAAAAGwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABAAAAAQAAAAEAAAABAAA
|
||||||
|
AAQAAAAGAAAAowAAAP9/f3///v7+//////9/f3//AAAA/gAAAKMAAAAGAAAABAAAAAQAAAAEAAAAGAAA
|
||||||
|
AKUAAAD8AAAA/wAAAP8AAAD7AAAAuQAAAC0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAADQAAAC0AAABTAAAAZAAAAGsAAABrAAAAawAAAGsAAABrAAAAawAAAGsAAABrAAAAawAA
|
||||||
|
AGsAAABrAAAAawAAAGsAAABsAAAA0gAAAP5/f3/+/v7+/v7+/v9/f3/+AAAA/gAAANEAAABqAAAAXQAA
|
||||||
|
AD8AAAAaAAAARAAAAPQPDw/+mZmZ/5iYmP4RERH+AAAA/gAAAMQAAAAuAAAAAQAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAlAAAAnwAAAO8AAAD9AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP9/f3///v7+//7+/v9/f3//AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAPoAAADTAAAAugAAAP5wcHD//v7+//7+/v/Gxsb/ERER/wAAAP4AAADEAAAALQAA
|
||||||
|
AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAACUAAAA/Q0NDf9GRkb+S0tL/ktLS/9LS0v+S0tL/ktL
|
||||||
|
S/9LS0v+S0tL/0tLS/5LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/+lpaX+/v7+/v//
|
||||||
|
//+kpKT+S0tL/ktLS/9LS0v+S0tL/iwsLP8AAAD+AAAA/gAAAP5GRkb++/v7//7+/v7+/v7+yMjI/xER
|
||||||
|
Ef4AAAD+AAAAxgAAAC0AAAABAAAAAAAAAAAAAAAAAAAAAAAAABcAAADfAAAA/sTExP/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+//7+/v7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/vn5+f9ERET+AAAA/gAAAP4AAAD+ZWVl//z8
|
||||||
|
/P7+/v7+/v7+/8bGxv4SEhL+AAAA/gAAAMQAAAAuAAAAAQAAAAAAAAAAAAAAAAAAACkAAAD2BwcH/vf3
|
||||||
|
9//+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+//7+/v7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v9oaGj+AAAA/gAA
|
||||||
|
AMgAAAD2AAAA/mdnZ/77+/v+/v7+//7+/v7Gxsb+EhIS/wAAAP4AAADEAAAALgAAAAEAAAAAAAAAAAAA
|
||||||
|
ADMAAAD7CAgI//f39//+/v7/+/v7/7W1tf+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Ky
|
||||||
|
sv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/4+P
|
||||||
|
j/8MDAz/AAAA8QAAAEgAAAB7AAAA9gAAAP9mZmb/+vr6///////+/v7/yMjI/xISEv8AAAD+AAAAxQAA
|
||||||
|
AC4AAAABAAAAAAAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD3AAAAlAAAAA8AAAAMAAAAewAAAPcAAAD+ZmZm//v7+/7+/v7+/v7+/8XF
|
||||||
|
xf4TExP+AAAA/gAAAMEAAAAnAAAAAAAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAAD+AAAA2wAA
|
||||||
|
AMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAA
|
||||||
|
AMwAAADMAAAAzAAAAMsAAADKAAAAvwAAAJ8AAABaAAAAFQAAAAAAAAAAAAAADAAAAH0AAAD2AAAA/mho
|
||||||
|
aP76+vr+/v7+//7+/v7FxcX+EhIS/wAAAP0AAACNAAAABAAAADYAAAD9CAgI//f39//+/v7/9PT0/wkJ
|
||||||
|
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
|
||||||
|
APoAAADTAAAAvQAAAP53d3f//v7+//7+/v/+/v7/Z2dn/wAAAP8AAAD+AAAAoAAAAAwAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAADUAAAD8CAgI/vf39//+/v7+9/f3/lJSUv9LS0v+S0tL/ktLS/9LS0v+S0tL/0tL
|
||||||
|
S/5LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktL
|
||||||
|
S/9LS0v+S0tL/iwsLP8AAAD+AAAA/gAAAP4UFBT+0dHR//7+/v7+/v7++vr6/1dXV/4AAAD+AAAA9AAA
|
||||||
|
AHAAAAALAAAAAAAAAAAAAAAAAAAAAAAAAC4AAAD4CAgI/vf39//+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+//7+/v7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/vn5+f9ERET+AAAA/gAAAPUAAAD+FxcX/9LS0v7+/v7+/v7+//f3
|
||||||
|
9/5YWFj+AAAA/gAAAPIAAABwAAAACwAAAAAAAAAAAAAAAAAAACAAAADtAwMD/+zs7P/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v9paWn/AAAA/gAAAJMAAADQAAAA/hkZ
|
||||||
|
Gf/R0dH//v7+//7+/v/39/f/WFhY/wAAAP8AAADyAAAAcAAAAAoAAAAAAAAAAAAAAAwAAAC7AAAA/ktL
|
||||||
|
S/+urq7+srKy/rKysv+ysrL+srKy/rKysv+ysrL+srKy/7Kysv6ysrL+srKy/rKysv+ysrL+srKy/rKy
|
||||||
|
sv+ysrL+srKy/rKysv+ysrL+srKy/rKysv+ysrL+srKy/rKysv+ysrL+srKy/o+Pj/8MDAz+AAAA8QAA
|
||||||
|
ADkAAAA0AAAA0AAAAP4YGBj+0NDQ//7+/v7+/v7++fn5/1hYWP4AAAD+AAAA8wAAAG8AAAAKAAAAAAAA
|
||||||
|
AAEAAABMAAAA3QAAAP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP8AAAD3AAAAlQAAAA8AAAABAAAANAAAANEAAAD+GBgY/9HR0f7+/v7+/v7+//f39/5ZWVn+AAAA/gAA
|
||||||
|
AO4AAABUAAAAAQAAAAAAAAAGAAAANAAAAIQAAAC1AAAAxwAAAMsAAADMAAAAzAAAAMwAAADMAAAAzAAA
|
||||||
|
AMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAA
|
||||||
|
AMsAAADKAAAAvwAAAKAAAABbAAAAFQAAAAAAAAAAAAAAAQAAADYAAADRAAAA/hkZGf/R0dH//v7+//7+
|
||||||
|
/v/39/f/VlZW/wAAAP4AAAC0AAAACQAAAAAAAAAAAAAAAAAAAAAAAAACAAAABAAAAAYAAAAHAAAACAAA
|
||||||
|
AAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAA
|
||||||
|
AAgAAAAIAAAACAAAAAcAAAAGAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAA1AAAA0AAA
|
||||||
|
AP4YGBj+0NDQ//7+/v7+/v7+6urq/wICAv4AAADYAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAABAAAANQAAANEAAAD+GBgY/9DQ0P7+/v7+wsLC/wAAAP4AAADPAAAADwAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAADYAAADOAAAA/g4ODv9CQkL/Dg4O/wAAAP0AAACOAAAABQAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAvAAAApwAAAOsAAAD4AAAA6QAA
|
||||||
|
AJ8AAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAA
|
||||||
|
ACUAAAA1AAAAJgAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////wAA/+AAAAf/AAD/wAAAA/8AAP+A
|
||||||
|
AAAB/wAA/4AAAAH/AAD/gAAAAf8AAP+AAAAB/wAA/8AAAAP/AAD/wAAAAf8AAP/4AAAAfwAAwAAAAAA/
|
||||||
|
AACAAAAAAB8AAAAAAAAADwAAAAAAAAAHAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAABAAAAAAAAYAAAAAAA
|
||||||
|
AAHwAAAAAH////AAAAAAf///8AAAAAB////gAAAAAH///8ABAAAAf///gAMAAAB///8AAQAAAH///wAA
|
||||||
|
AAAAf///AAAAAAB///8AAAAAAH///wAAAAAAf///AAAAAAB///+AAQAAAH///4ABAAAAf///AAMAAAB/
|
||||||
|
//8ABwAAAAAAAAAPAAAAAAAAAB8AAAAAAAAADwAAAAAAAAAHAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAAA
|
||||||
|
AACAAAAAYAAAAPAAAAHwAAAA//////gAAAD//////AAAAP/////+AQAA//////+DAAD///////8AACgA
|
||||||
|
AAAgAAAAQAAAAAEAIAAAAAAAgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAMAAAAHAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAA
|
||||||
|
AAgAAAAIAAAABwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAIAAABYAAAAxgAAAOYAAADsAAAA7QAAAO0AAADtAAAA7QAAAO0AAADtAAAA7QAA
|
||||||
|
AO0AAADtAAAA7QAAAOwAAADnAAAAyAAAAFwAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAIQAAAO9UVFT/h4eH/4eHh/+Hh4f/h4eH/4eHh/+Hh4f/h4eH/4eH
|
||||||
|
h/+Hh4f/h4eH/4eHh/+Hh4f/h4eH/4eHh/9XV1f/AAAA8AAAACIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAA/vLy8v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//Pz8/8AAAD+AAAAPAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAADrR0dH/3Z2dv92dnb/dnZ2/3Z2
|
||||||
|
dv92dnb/enp6//v7+//7+/v/eXl5/3Z2dv92dnb/dnZ2/3Z2dv92dnb/SUlJ/wAAAO0AAAAgAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAEsAAAC2AAAA1wAA
|
||||||
|
AN0AAADdAAAA3QAAAO4GBgb++Pj4//j4+P8GBgb+AAAA7gAAAN0AAADdAAAA3gAAAPAAAAD+AAAArQAA
|
||||||
|
ACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAGAAAABwAAAAcAAAAHAAAABwAA
|
||||||
|
AAgAAAAKAAAACwAAAAsAAAALAAAAdQYGBv74+Pj/+Pj4/wYGBv4AAAB1AAAACQAAAAUAAAAWAAAA0g4O
|
||||||
|
Dv4ODg7+AAAA3gAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAABaAAAAxAAAAOQAAADpAAAA6QAA
|
||||||
|
AOkAAADpAAAA6QAAAOkAAADpAAAA6QAAAOkAAAD1BgYG//j4+P/4+Pj/BgYG/gAAAPUAAADjAAAAwwAA
|
||||||
|
AJQCAgL+3d3d/+Xl5f8pKSn+AAAA5QAAADsAAAAAAAAAAAAAAAAAAAAAAAAALgAAAPNUVFT/hoaG/4aG
|
||||||
|
hv+Ghob/hoaG/4aGhv+Ghob/hoaG/4aGhv+Ghob/hoaG/4aGhv+JiYn/+/v7//v7+/+JiYn/hoaG/4aG
|
||||||
|
hv9SUlL/AAAA/gAAAP6ysrL//v7+/+bm5v8pKSn+AAAA5QAAADwAAAAAAAAAAAAAAAAAAABlAwMD/vb2
|
||||||
|
9v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+/+3t7f8BAQH+AAAA4ggICP64uLj//v7+/+bm5v8pKSn+AAAA5QAAADwAAAAAAAAAAAAA
|
||||||
|
AHYFBQX++fn5//v7+/96enr/d3d3/3d3d/93d3f/d3d3/3d3d/93d3f/d3d3/3d3d/93d3f/d3d3/3d3
|
||||||
|
d/93d3f/d3d3/3d3d/93d3f/RUVF/gAAAOoAAAA2AAAAvgkJCf64uLj//v7+/+bm5v8pKSn+AAAA5QAA
|
||||||
|
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
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
@ -1,11 +1,4 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.ComponentModel;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Data;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
@ -22,6 +15,7 @@ namespace RCM {
|
|||||||
private void ButtonSave_Click(object sender, EventArgs e) {
|
private void ButtonSave_Click(object sender, EventArgs e) {
|
||||||
_configSection.UpdateFromControl();
|
_configSection.UpdateFromControl();
|
||||||
Config.Save();
|
Config.Save();
|
||||||
|
MessageBox.Show(string.Format("{0} changes saved", _configSection.GetType().GetDisplayName()), "Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -24,7 +24,7 @@ namespace RCM {
|
|||||||
|
|
||||||
public static string JsonToString(JToken json) {
|
public static string JsonToString(JToken json) {
|
||||||
var stringWriter = new StringWriter();
|
var stringWriter = new StringWriter();
|
||||||
var jsonWriter = new JsonTextWriter(stringWriter) { StringEscapeHandling = StringEscapeHandling.EscapeNonAscii };
|
var jsonWriter = new JsonTextWriter(stringWriter) { Formatting = Formatting.Indented };
|
||||||
new JsonSerializer().Serialize(jsonWriter, json);
|
new JsonSerializer().Serialize(jsonWriter, json);
|
||||||
return stringWriter.ToString();
|
return stringWriter.ToString();
|
||||||
}
|
}
|
||||||
@ -50,7 +50,7 @@ namespace RCM {
|
|||||||
Array.Copy(cipherbytes, salt, 16);
|
Array.Copy(cipherbytes, salt, 16);
|
||||||
Array.Copy(cipherbytes, 16, iv, 0, 16);
|
Array.Copy(cipherbytes, 16, iv, 0, 16);
|
||||||
using (AesManaged aes = new AesManaged() { KeySize = 128 })
|
using (AesManaged aes = new AesManaged() { KeySize = 128 })
|
||||||
using (Rfc2898DeriveBytes pbkdf2 = new Rfc2898DeriveBytes(password, salt, 1024))
|
using (Rfc2898DeriveBytes pbkdf2 = new Rfc2898DeriveBytes(password, salt, 16))
|
||||||
using (ICryptoTransform decryptor = aes.CreateDecryptor(pbkdf2.GetBytes(16), iv))
|
using (ICryptoTransform decryptor = aes.CreateDecryptor(pbkdf2.GetBytes(16), iv))
|
||||||
using (MemoryStream memoryStream = new MemoryStream())
|
using (MemoryStream memoryStream = new MemoryStream())
|
||||||
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, decryptor, CryptoStreamMode.Write))
|
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, decryptor, CryptoStreamMode.Write))
|
||||||
@ -62,7 +62,7 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static object DecryptObject(byte[] cipherbytes, string password) {
|
public static object DecryptObject(byte[] cipherbytes, string password) {
|
||||||
return StringToObj(Encoding.ASCII.GetString(Decrypt(cipherbytes, password)));
|
return StringToObj(Encoding.Unicode.GetString(Decrypt(cipherbytes, password)));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static byte[] Encrypt(byte[] plaintext, string password) {
|
public static byte[] Encrypt(byte[] plaintext, string password) {
|
||||||
@ -71,7 +71,7 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
using (AesManaged aes = new AesManaged() { KeySize = 128 }) {
|
using (AesManaged aes = new AesManaged() { KeySize = 128 }) {
|
||||||
aes.GenerateIV();
|
aes.GenerateIV();
|
||||||
using (Rfc2898DeriveBytes pbkdf2 = new Rfc2898DeriveBytes(password, 16, 1024))
|
using (Rfc2898DeriveBytes pbkdf2 = new Rfc2898DeriveBytes(password, 16, 16))
|
||||||
using (ICryptoTransform encryptor = aes.CreateEncryptor(pbkdf2.GetBytes(16), aes.IV))
|
using (ICryptoTransform encryptor = aes.CreateEncryptor(pbkdf2.GetBytes(16), aes.IV))
|
||||||
using (MemoryStream memoryStream = new MemoryStream())
|
using (MemoryStream memoryStream = new MemoryStream())
|
||||||
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, encryptor, CryptoStreamMode.Write))
|
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, encryptor, CryptoStreamMode.Write))
|
||||||
@ -84,7 +84,7 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static byte[] EncryptObject(object obj, string password) {
|
public static byte[] EncryptObject(object obj, string password) {
|
||||||
return Encrypt(Encoding.ASCII.GetBytes(ObjToString(obj)), password);
|
return Encrypt(Encoding.Unicode.GetBytes(ObjToString(obj)), password);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
10
RCM/DataSource/MySQL/MySQLControl.Designer.cs
generated
10
RCM/DataSource/MySQL/MySQLControl.Designer.cs
generated
@ -103,7 +103,7 @@
|
|||||||
this.buttonUnmaskEncPassword.Location = new System.Drawing.Point(273, 104);
|
this.buttonUnmaskEncPassword.Location = new System.Drawing.Point(273, 104);
|
||||||
this.buttonUnmaskEncPassword.Name = "buttonUnmaskEncPassword";
|
this.buttonUnmaskEncPassword.Name = "buttonUnmaskEncPassword";
|
||||||
this.buttonUnmaskEncPassword.Size = new System.Drawing.Size(22, 22);
|
this.buttonUnmaskEncPassword.Size = new System.Drawing.Size(22, 22);
|
||||||
this.buttonUnmaskEncPassword.TabIndex = 17;
|
this.buttonUnmaskEncPassword.TabIndex = 7;
|
||||||
this.buttonUnmaskEncPassword.Text = "●";
|
this.buttonUnmaskEncPassword.Text = "●";
|
||||||
this.buttonUnmaskEncPassword.UseVisualStyleBackColor = true;
|
this.buttonUnmaskEncPassword.UseVisualStyleBackColor = true;
|
||||||
this.buttonUnmaskEncPassword.Click += new System.EventHandler(this.ButtonUnmaskEncPassword_Click);
|
this.buttonUnmaskEncPassword.Click += new System.EventHandler(this.ButtonUnmaskEncPassword_Click);
|
||||||
@ -113,7 +113,7 @@
|
|||||||
this.textBoxEncPassword.Location = new System.Drawing.Point(120, 105);
|
this.textBoxEncPassword.Location = new System.Drawing.Point(120, 105);
|
||||||
this.textBoxEncPassword.Name = "textBoxEncPassword";
|
this.textBoxEncPassword.Name = "textBoxEncPassword";
|
||||||
this.textBoxEncPassword.Size = new System.Drawing.Size(147, 20);
|
this.textBoxEncPassword.Size = new System.Drawing.Size(147, 20);
|
||||||
this.textBoxEncPassword.TabIndex = 16;
|
this.textBoxEncPassword.TabIndex = 6;
|
||||||
this.textBoxEncPassword.UseSystemPasswordChar = true;
|
this.textBoxEncPassword.UseSystemPasswordChar = true;
|
||||||
//
|
//
|
||||||
// textBoxDatabase
|
// textBoxDatabase
|
||||||
@ -121,7 +121,7 @@
|
|||||||
this.textBoxDatabase.Location = new System.Drawing.Point(120, 79);
|
this.textBoxDatabase.Location = new System.Drawing.Point(120, 79);
|
||||||
this.textBoxDatabase.Name = "textBoxDatabase";
|
this.textBoxDatabase.Name = "textBoxDatabase";
|
||||||
this.textBoxDatabase.Size = new System.Drawing.Size(175, 20);
|
this.textBoxDatabase.Size = new System.Drawing.Size(175, 20);
|
||||||
this.textBoxDatabase.TabIndex = 15;
|
this.textBoxDatabase.TabIndex = 5;
|
||||||
//
|
//
|
||||||
// label1
|
// label1
|
||||||
//
|
//
|
||||||
@ -146,7 +146,7 @@
|
|||||||
this.buttonTestConnection.Location = new System.Drawing.Point(120, 132);
|
this.buttonTestConnection.Location = new System.Drawing.Point(120, 132);
|
||||||
this.buttonTestConnection.Name = "buttonTestConnection";
|
this.buttonTestConnection.Name = "buttonTestConnection";
|
||||||
this.buttonTestConnection.Size = new System.Drawing.Size(175, 23);
|
this.buttonTestConnection.Size = new System.Drawing.Size(175, 23);
|
||||||
this.buttonTestConnection.TabIndex = 20;
|
this.buttonTestConnection.TabIndex = 8;
|
||||||
this.buttonTestConnection.Text = "Test connection";
|
this.buttonTestConnection.Text = "Test connection";
|
||||||
this.buttonTestConnection.UseVisualStyleBackColor = true;
|
this.buttonTestConnection.UseVisualStyleBackColor = true;
|
||||||
this.buttonTestConnection.Click += new System.EventHandler(this.ButtonTestConnection_Click);
|
this.buttonTestConnection.Click += new System.EventHandler(this.ButtonTestConnection_Click);
|
||||||
@ -156,7 +156,7 @@
|
|||||||
this.buttonCreateSchema.Location = new System.Drawing.Point(120, 161);
|
this.buttonCreateSchema.Location = new System.Drawing.Point(120, 161);
|
||||||
this.buttonCreateSchema.Name = "buttonCreateSchema";
|
this.buttonCreateSchema.Name = "buttonCreateSchema";
|
||||||
this.buttonCreateSchema.Size = new System.Drawing.Size(175, 23);
|
this.buttonCreateSchema.Size = new System.Drawing.Size(175, 23);
|
||||||
this.buttonCreateSchema.TabIndex = 21;
|
this.buttonCreateSchema.TabIndex = 9;
|
||||||
this.buttonCreateSchema.Text = "Create schema";
|
this.buttonCreateSchema.Text = "Create schema";
|
||||||
this.buttonCreateSchema.UseVisualStyleBackColor = true;
|
this.buttonCreateSchema.UseVisualStyleBackColor = true;
|
||||||
this.buttonCreateSchema.Click += new System.EventHandler(this.ButtonCreateSchema_Click);
|
this.buttonCreateSchema.Click += new System.EventHandler(this.ButtonCreateSchema_Click);
|
||||||
|
120
RCM/DataSource/MySQL/MySQLControl.resx
Normal file
120
RCM/DataSource/MySQL/MySQLControl.resx
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
</root>
|
12
RCM/DataSource/SQLite/SQLiteControl.Designer.cs
generated
12
RCM/DataSource/SQLite/SQLiteControl.Designer.cs
generated
@ -39,7 +39,7 @@
|
|||||||
this.buttonSelectDatabase.Location = new System.Drawing.Point(273, -1);
|
this.buttonSelectDatabase.Location = new System.Drawing.Point(273, -1);
|
||||||
this.buttonSelectDatabase.Name = "buttonSelectDatabase";
|
this.buttonSelectDatabase.Name = "buttonSelectDatabase";
|
||||||
this.buttonSelectDatabase.Size = new System.Drawing.Size(22, 22);
|
this.buttonSelectDatabase.Size = new System.Drawing.Size(22, 22);
|
||||||
this.buttonSelectDatabase.TabIndex = 4;
|
this.buttonSelectDatabase.TabIndex = 2;
|
||||||
this.buttonSelectDatabase.Text = "⋯";
|
this.buttonSelectDatabase.Text = "⋯";
|
||||||
this.buttonSelectDatabase.UseVisualStyleBackColor = true;
|
this.buttonSelectDatabase.UseVisualStyleBackColor = true;
|
||||||
this.buttonSelectDatabase.Click += new System.EventHandler(this.ButtonSelectDatabase_Click);
|
this.buttonSelectDatabase.Click += new System.EventHandler(this.ButtonSelectDatabase_Click);
|
||||||
@ -49,7 +49,7 @@
|
|||||||
this.buttonUnmaskEncPassword.Location = new System.Drawing.Point(273, 25);
|
this.buttonUnmaskEncPassword.Location = new System.Drawing.Point(273, 25);
|
||||||
this.buttonUnmaskEncPassword.Name = "buttonUnmaskEncPassword";
|
this.buttonUnmaskEncPassword.Name = "buttonUnmaskEncPassword";
|
||||||
this.buttonUnmaskEncPassword.Size = new System.Drawing.Size(22, 22);
|
this.buttonUnmaskEncPassword.Size = new System.Drawing.Size(22, 22);
|
||||||
this.buttonUnmaskEncPassword.TabIndex = 17;
|
this.buttonUnmaskEncPassword.TabIndex = 4;
|
||||||
this.buttonUnmaskEncPassword.Text = "●";
|
this.buttonUnmaskEncPassword.Text = "●";
|
||||||
this.buttonUnmaskEncPassword.UseVisualStyleBackColor = true;
|
this.buttonUnmaskEncPassword.UseVisualStyleBackColor = true;
|
||||||
this.buttonUnmaskEncPassword.Click += new System.EventHandler(this.ButtonUnmaskEncPassword_Click);
|
this.buttonUnmaskEncPassword.Click += new System.EventHandler(this.ButtonUnmaskEncPassword_Click);
|
||||||
@ -59,7 +59,7 @@
|
|||||||
this.textBoxEncPassword.Location = new System.Drawing.Point(120, 26);
|
this.textBoxEncPassword.Location = new System.Drawing.Point(120, 26);
|
||||||
this.textBoxEncPassword.Name = "textBoxEncPassword";
|
this.textBoxEncPassword.Name = "textBoxEncPassword";
|
||||||
this.textBoxEncPassword.Size = new System.Drawing.Size(147, 20);
|
this.textBoxEncPassword.Size = new System.Drawing.Size(147, 20);
|
||||||
this.textBoxEncPassword.TabIndex = 16;
|
this.textBoxEncPassword.TabIndex = 3;
|
||||||
this.textBoxEncPassword.UseSystemPasswordChar = true;
|
this.textBoxEncPassword.UseSystemPasswordChar = true;
|
||||||
//
|
//
|
||||||
// textBoxDatabase
|
// textBoxDatabase
|
||||||
@ -67,7 +67,7 @@
|
|||||||
this.textBoxDatabase.Location = new System.Drawing.Point(120, 0);
|
this.textBoxDatabase.Location = new System.Drawing.Point(120, 0);
|
||||||
this.textBoxDatabase.Name = "textBoxDatabase";
|
this.textBoxDatabase.Name = "textBoxDatabase";
|
||||||
this.textBoxDatabase.Size = new System.Drawing.Size(147, 20);
|
this.textBoxDatabase.Size = new System.Drawing.Size(147, 20);
|
||||||
this.textBoxDatabase.TabIndex = 15;
|
this.textBoxDatabase.TabIndex = 1;
|
||||||
//
|
//
|
||||||
// labelEncPassword
|
// labelEncPassword
|
||||||
//
|
//
|
||||||
@ -92,7 +92,7 @@
|
|||||||
this.buttonTestConnection.Location = new System.Drawing.Point(120, 53);
|
this.buttonTestConnection.Location = new System.Drawing.Point(120, 53);
|
||||||
this.buttonTestConnection.Name = "buttonTestConnection";
|
this.buttonTestConnection.Name = "buttonTestConnection";
|
||||||
this.buttonTestConnection.Size = new System.Drawing.Size(175, 23);
|
this.buttonTestConnection.Size = new System.Drawing.Size(175, 23);
|
||||||
this.buttonTestConnection.TabIndex = 20;
|
this.buttonTestConnection.TabIndex = 5;
|
||||||
this.buttonTestConnection.Text = "Test connection";
|
this.buttonTestConnection.Text = "Test connection";
|
||||||
this.buttonTestConnection.UseVisualStyleBackColor = true;
|
this.buttonTestConnection.UseVisualStyleBackColor = true;
|
||||||
this.buttonTestConnection.Click += new System.EventHandler(this.ButtonTestConnection_Click);
|
this.buttonTestConnection.Click += new System.EventHandler(this.ButtonTestConnection_Click);
|
||||||
@ -102,7 +102,7 @@
|
|||||||
this.buttonCreateSchema.Location = new System.Drawing.Point(120, 82);
|
this.buttonCreateSchema.Location = new System.Drawing.Point(120, 82);
|
||||||
this.buttonCreateSchema.Name = "buttonCreateSchema";
|
this.buttonCreateSchema.Name = "buttonCreateSchema";
|
||||||
this.buttonCreateSchema.Size = new System.Drawing.Size(175, 23);
|
this.buttonCreateSchema.Size = new System.Drawing.Size(175, 23);
|
||||||
this.buttonCreateSchema.TabIndex = 21;
|
this.buttonCreateSchema.TabIndex = 6;
|
||||||
this.buttonCreateSchema.Text = "Create schema";
|
this.buttonCreateSchema.Text = "Create schema";
|
||||||
this.buttonCreateSchema.UseVisualStyleBackColor = true;
|
this.buttonCreateSchema.UseVisualStyleBackColor = true;
|
||||||
this.buttonCreateSchema.Click += new System.EventHandler(this.ButtonCreateSchema_Click);
|
this.buttonCreateSchema.Click += new System.EventHandler(this.ButtonCreateSchema_Click);
|
||||||
|
123
RCM/DataSource/SQLite/SQLiteControl.resx
Normal file
123
RCM/DataSource/SQLite/SQLiteControl.resx
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<metadata name="saveFileDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
</root>
|
@ -1,6 +1,4 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
public class DisplayName : Attribute {
|
public class DisplayName : Attribute {
|
||||||
|
@ -1,11 +1,10 @@
|
|||||||
using Newtonsoft.Json;
|
using System;
|
||||||
using System;
|
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
[Serializable]
|
[Serializable]
|
||||||
[DisplayName("Group")]
|
[DisplayName("Group")]
|
||||||
public class Group : IRecord { // TODO: Prvni v poradi new items
|
public class Group : IRecord {
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
public string Title { get; set; }
|
public string Title { get; set; }
|
||||||
public Guid GroupId { get; set; }
|
public Guid GroupId { get; set; }
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
using System.Collections.Generic;
|
using System.Windows.Forms;
|
||||||
using System.Windows.Forms;
|
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
public interface IConfigSection {
|
public interface IConfigSection {
|
||||||
|
@ -6,8 +6,6 @@ namespace RCM {
|
|||||||
Guid Id { get; set; }
|
Guid Id { get; set; }
|
||||||
string Title { get; set; }
|
string Title { get; set; }
|
||||||
Guid GroupId { get; set; }
|
Guid GroupId { get; set; }
|
||||||
// DateTime LastUpdate { get; set; }
|
|
||||||
|
|
||||||
IAction[] GetActions();
|
IAction[] GetActions();
|
||||||
UserControl GetControl();
|
UserControl GetControl();
|
||||||
void UpdateFromControl();
|
void UpdateFromControl();
|
||||||
|
78
RCM/MainForm.Designer.cs
generated
78
RCM/MainForm.Designer.cs
generated
@ -29,6 +29,7 @@
|
|||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
this.components = new System.ComponentModel.Container();
|
this.components = new System.ComponentModel.Container();
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
|
||||||
this.treeView = new System.Windows.Forms.TreeView();
|
this.treeView = new System.Windows.Forms.TreeView();
|
||||||
this.splitContainer = new System.Windows.Forms.SplitContainer();
|
this.splitContainer = new System.Windows.Forms.SplitContainer();
|
||||||
this.buttonConfig = new System.Windows.Forms.Button();
|
this.buttonConfig = new System.Windows.Forms.Button();
|
||||||
@ -42,12 +43,17 @@
|
|||||||
this.timerDataSourceRefresh = new System.Windows.Forms.Timer(this.components);
|
this.timerDataSourceRefresh = new System.Windows.Forms.Timer(this.components);
|
||||||
this.statusStrip = new System.Windows.Forms.StatusStrip();
|
this.statusStrip = new System.Windows.Forms.StatusStrip();
|
||||||
this.toolStripStatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
|
this.toolStripStatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
|
||||||
this.toolStripStatusLastRefresh = new System.Windows.Forms.ToolStripStatusLabel();
|
this.toolStripStatusFailedFlag = new System.Windows.Forms.ToolStripStatusLabel();
|
||||||
|
this.notifyIcon = new System.Windows.Forms.NotifyIcon(this.components);
|
||||||
|
this.contextMenuNotifyIcon = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||||
|
this.toolStripMenuShowMainForm = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.toolStripMenuCloseMainForm = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();
|
((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();
|
||||||
this.splitContainer.Panel1.SuspendLayout();
|
this.splitContainer.Panel1.SuspendLayout();
|
||||||
this.splitContainer.Panel2.SuspendLayout();
|
this.splitContainer.Panel2.SuspendLayout();
|
||||||
this.splitContainer.SuspendLayout();
|
this.splitContainer.SuspendLayout();
|
||||||
this.statusStrip.SuspendLayout();
|
this.statusStrip.SuspendLayout();
|
||||||
|
this.contextMenuNotifyIcon.SuspendLayout();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
// treeView
|
// treeView
|
||||||
@ -62,7 +68,7 @@
|
|||||||
this.treeView.Location = new System.Drawing.Point(3, 30);
|
this.treeView.Location = new System.Drawing.Point(3, 30);
|
||||||
this.treeView.Name = "treeView";
|
this.treeView.Name = "treeView";
|
||||||
this.treeView.Size = new System.Drawing.Size(244, 440);
|
this.treeView.Size = new System.Drawing.Size(244, 440);
|
||||||
this.treeView.TabIndex = 0;
|
this.treeView.TabIndex = 3;
|
||||||
this.treeView.AfterLabelEdit += new System.Windows.Forms.NodeLabelEditEventHandler(this.TreeView_AfterLabelEdit);
|
this.treeView.AfterLabelEdit += new System.Windows.Forms.NodeLabelEditEventHandler(this.TreeView_AfterLabelEdit);
|
||||||
this.treeView.AfterCollapse += new System.Windows.Forms.TreeViewEventHandler(this.TreeView_AfterCollapse);
|
this.treeView.AfterCollapse += new System.Windows.Forms.TreeViewEventHandler(this.TreeView_AfterCollapse);
|
||||||
this.treeView.AfterExpand += new System.Windows.Forms.TreeViewEventHandler(this.TreeView_AfterExpand);
|
this.treeView.AfterExpand += new System.Windows.Forms.TreeViewEventHandler(this.TreeView_AfterExpand);
|
||||||
@ -105,7 +111,7 @@
|
|||||||
this.buttonConfig.Location = new System.Drawing.Point(3, 1);
|
this.buttonConfig.Location = new System.Drawing.Point(3, 1);
|
||||||
this.buttonConfig.Name = "buttonConfig";
|
this.buttonConfig.Name = "buttonConfig";
|
||||||
this.buttonConfig.Size = new System.Drawing.Size(24, 24);
|
this.buttonConfig.Size = new System.Drawing.Size(24, 24);
|
||||||
this.buttonConfig.TabIndex = 2;
|
this.buttonConfig.TabIndex = 1;
|
||||||
this.buttonConfig.UseVisualStyleBackColor = true;
|
this.buttonConfig.UseVisualStyleBackColor = true;
|
||||||
this.buttonConfig.Click += new System.EventHandler(this.ButtonConfig_Click);
|
this.buttonConfig.Click += new System.EventHandler(this.ButtonConfig_Click);
|
||||||
//
|
//
|
||||||
@ -118,7 +124,7 @@
|
|||||||
this.comboBoxDatabase.Location = new System.Drawing.Point(33, 3);
|
this.comboBoxDatabase.Location = new System.Drawing.Point(33, 3);
|
||||||
this.comboBoxDatabase.Name = "comboBoxDatabase";
|
this.comboBoxDatabase.Name = "comboBoxDatabase";
|
||||||
this.comboBoxDatabase.Size = new System.Drawing.Size(214, 21);
|
this.comboBoxDatabase.Size = new System.Drawing.Size(214, 21);
|
||||||
this.comboBoxDatabase.TabIndex = 1;
|
this.comboBoxDatabase.TabIndex = 2;
|
||||||
this.comboBoxDatabase.SelectedIndexChanged += new System.EventHandler(this.ComboBoxDatabase_SelectedIndexChanged);
|
this.comboBoxDatabase.SelectedIndexChanged += new System.EventHandler(this.ComboBoxDatabase_SelectedIndexChanged);
|
||||||
//
|
//
|
||||||
// panelRecord
|
// panelRecord
|
||||||
@ -129,7 +135,7 @@
|
|||||||
this.panelRecord.Location = new System.Drawing.Point(11, 82);
|
this.panelRecord.Location = new System.Drawing.Point(11, 82);
|
||||||
this.panelRecord.Name = "panelRecord";
|
this.panelRecord.Name = "panelRecord";
|
||||||
this.panelRecord.Size = new System.Drawing.Size(306, 350);
|
this.panelRecord.Size = new System.Drawing.Size(306, 350);
|
||||||
this.panelRecord.TabIndex = 15;
|
this.panelRecord.TabIndex = 3;
|
||||||
//
|
//
|
||||||
// buttonSave
|
// buttonSave
|
||||||
//
|
//
|
||||||
@ -138,7 +144,7 @@
|
|||||||
this.buttonSave.Location = new System.Drawing.Point(131, 438);
|
this.buttonSave.Location = new System.Drawing.Point(131, 438);
|
||||||
this.buttonSave.Name = "buttonSave";
|
this.buttonSave.Name = "buttonSave";
|
||||||
this.buttonSave.Size = new System.Drawing.Size(175, 23);
|
this.buttonSave.Size = new System.Drawing.Size(175, 23);
|
||||||
this.buttonSave.TabIndex = 14;
|
this.buttonSave.TabIndex = 4;
|
||||||
this.buttonSave.Text = "Save changes";
|
this.buttonSave.Text = "Save changes";
|
||||||
this.buttonSave.UseVisualStyleBackColor = true;
|
this.buttonSave.UseVisualStyleBackColor = true;
|
||||||
this.buttonSave.Click += new System.EventHandler(this.ButtonSave_Click);
|
this.buttonSave.Click += new System.EventHandler(this.ButtonSave_Click);
|
||||||
@ -160,7 +166,7 @@
|
|||||||
this.comboBoxGroup.Location = new System.Drawing.Point(131, 39);
|
this.comboBoxGroup.Location = new System.Drawing.Point(131, 39);
|
||||||
this.comboBoxGroup.Name = "comboBoxGroup";
|
this.comboBoxGroup.Name = "comboBoxGroup";
|
||||||
this.comboBoxGroup.Size = new System.Drawing.Size(175, 21);
|
this.comboBoxGroup.Size = new System.Drawing.Size(175, 21);
|
||||||
this.comboBoxGroup.TabIndex = 12;
|
this.comboBoxGroup.TabIndex = 2;
|
||||||
//
|
//
|
||||||
// textBoxTitle
|
// textBoxTitle
|
||||||
//
|
//
|
||||||
@ -181,14 +187,14 @@
|
|||||||
//
|
//
|
||||||
// timerDataSourceRefresh
|
// timerDataSourceRefresh
|
||||||
//
|
//
|
||||||
this.timerDataSourceRefresh.Interval = 30000;
|
this.timerDataSourceRefresh.Interval = 120000;
|
||||||
this.timerDataSourceRefresh.Tick += new System.EventHandler(this.TimerDataSourceRefresh_Tick);
|
this.timerDataSourceRefresh.Tick += new System.EventHandler(this.TimerDataSourceRefresh_Tick);
|
||||||
//
|
//
|
||||||
// statusStrip
|
// statusStrip
|
||||||
//
|
//
|
||||||
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
this.toolStripStatusLabel,
|
this.toolStripStatusLabel,
|
||||||
this.toolStripStatusLastRefresh});
|
this.toolStripStatusFailedFlag});
|
||||||
this.statusStrip.Location = new System.Drawing.Point(0, 474);
|
this.statusStrip.Location = new System.Drawing.Point(0, 474);
|
||||||
this.statusStrip.Name = "statusStrip";
|
this.statusStrip.Name = "statusStrip";
|
||||||
this.statusStrip.Size = new System.Drawing.Size(574, 22);
|
this.statusStrip.Size = new System.Drawing.Size(574, 22);
|
||||||
@ -197,15 +203,47 @@
|
|||||||
//
|
//
|
||||||
// toolStripStatusLabel
|
// toolStripStatusLabel
|
||||||
//
|
//
|
||||||
|
this.toolStripStatusLabel.ForeColor = System.Drawing.SystemColors.ControlDark;
|
||||||
this.toolStripStatusLabel.Name = "toolStripStatusLabel";
|
this.toolStripStatusLabel.Name = "toolStripStatusLabel";
|
||||||
this.toolStripStatusLabel.Size = new System.Drawing.Size(134, 17);
|
this.toolStripStatusLabel.Size = new System.Drawing.Size(166, 17);
|
||||||
this.toolStripStatusLabel.Text = "Last data source refresh:";
|
this.toolStripStatusLabel.Text = "Last data source refresh: never";
|
||||||
//
|
//
|
||||||
// toolStripStatusLastRefresh
|
// toolStripStatusFailedFlag
|
||||||
//
|
//
|
||||||
this.toolStripStatusLastRefresh.Name = "toolStripStatusLastRefresh";
|
this.toolStripStatusFailedFlag.ForeColor = System.Drawing.SystemColors.ControlDark;
|
||||||
this.toolStripStatusLastRefresh.Size = new System.Drawing.Size(36, 17);
|
this.toolStripStatusFailedFlag.Name = "toolStripStatusFailedFlag";
|
||||||
this.toolStripStatusLastRefresh.Text = "never";
|
this.toolStripStatusFailedFlag.Size = new System.Drawing.Size(136, 17);
|
||||||
|
this.toolStripStatusFailedFlag.Text = "(data source not loaded)";
|
||||||
|
//
|
||||||
|
// notifyIcon
|
||||||
|
//
|
||||||
|
this.notifyIcon.ContextMenuStrip = this.contextMenuNotifyIcon;
|
||||||
|
this.notifyIcon.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon.Icon")));
|
||||||
|
this.notifyIcon.Text = "Remote Connection Manager";
|
||||||
|
this.notifyIcon.Visible = true;
|
||||||
|
this.notifyIcon.MouseClick += new System.Windows.Forms.MouseEventHandler(this.NotifyIcon_MouseClick);
|
||||||
|
//
|
||||||
|
// contextMenuNotifyIcon
|
||||||
|
//
|
||||||
|
this.contextMenuNotifyIcon.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.toolStripMenuShowMainForm,
|
||||||
|
this.toolStripMenuCloseMainForm});
|
||||||
|
this.contextMenuNotifyIcon.Name = "contextMenuNotifyIcon";
|
||||||
|
this.contextMenuNotifyIcon.Size = new System.Drawing.Size(179, 48);
|
||||||
|
//
|
||||||
|
// toolStripMenuShowMainForm
|
||||||
|
//
|
||||||
|
this.toolStripMenuShowMainForm.Name = "toolStripMenuShowMainForm";
|
||||||
|
this.toolStripMenuShowMainForm.Size = new System.Drawing.Size(178, 22);
|
||||||
|
this.toolStripMenuShowMainForm.Text = "Show main window";
|
||||||
|
this.toolStripMenuShowMainForm.Click += new System.EventHandler(this.ToolStripMenuShowMainForm_Click);
|
||||||
|
//
|
||||||
|
// toolStripMenuCloseMainForm
|
||||||
|
//
|
||||||
|
this.toolStripMenuCloseMainForm.Name = "toolStripMenuCloseMainForm";
|
||||||
|
this.toolStripMenuCloseMainForm.Size = new System.Drawing.Size(178, 22);
|
||||||
|
this.toolStripMenuCloseMainForm.Text = "Exit application";
|
||||||
|
this.toolStripMenuCloseMainForm.Click += new System.EventHandler(this.ToolStripMenuCloseMainForm_Click);
|
||||||
//
|
//
|
||||||
// MainForm
|
// MainForm
|
||||||
//
|
//
|
||||||
@ -214,8 +252,11 @@
|
|||||||
this.ClientSize = new System.Drawing.Size(574, 496);
|
this.ClientSize = new System.Drawing.Size(574, 496);
|
||||||
this.Controls.Add(this.statusStrip);
|
this.Controls.Add(this.statusStrip);
|
||||||
this.Controls.Add(this.splitContainer);
|
this.Controls.Add(this.splitContainer);
|
||||||
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
this.Name = "MainForm";
|
this.Name = "MainForm";
|
||||||
this.Text = "Remote Connection Manager";
|
this.Text = "Remote Connection Manager";
|
||||||
|
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing);
|
||||||
|
this.Resize += new System.EventHandler(this.MainForm_Resize);
|
||||||
this.splitContainer.Panel1.ResumeLayout(false);
|
this.splitContainer.Panel1.ResumeLayout(false);
|
||||||
this.splitContainer.Panel2.ResumeLayout(false);
|
this.splitContainer.Panel2.ResumeLayout(false);
|
||||||
this.splitContainer.Panel2.PerformLayout();
|
this.splitContainer.Panel2.PerformLayout();
|
||||||
@ -223,6 +264,7 @@
|
|||||||
this.splitContainer.ResumeLayout(false);
|
this.splitContainer.ResumeLayout(false);
|
||||||
this.statusStrip.ResumeLayout(false);
|
this.statusStrip.ResumeLayout(false);
|
||||||
this.statusStrip.PerformLayout();
|
this.statusStrip.PerformLayout();
|
||||||
|
this.contextMenuNotifyIcon.ResumeLayout(false);
|
||||||
this.ResumeLayout(false);
|
this.ResumeLayout(false);
|
||||||
this.PerformLayout();
|
this.PerformLayout();
|
||||||
|
|
||||||
@ -243,7 +285,11 @@
|
|||||||
private System.Windows.Forms.Button buttonConfig;
|
private System.Windows.Forms.Button buttonConfig;
|
||||||
private System.Windows.Forms.StatusStrip statusStrip;
|
private System.Windows.Forms.StatusStrip statusStrip;
|
||||||
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel;
|
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel;
|
||||||
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLastRefresh;
|
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusFailedFlag;
|
||||||
|
private System.Windows.Forms.NotifyIcon notifyIcon;
|
||||||
|
private System.Windows.Forms.ContextMenuStrip contextMenuNotifyIcon;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem toolStripMenuShowMainForm;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem toolStripMenuCloseMainForm;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
240
RCM/MainForm.cs
240
RCM/MainForm.cs
@ -3,12 +3,14 @@ using System.Collections.Generic;
|
|||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Collections.Specialized;
|
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
public partial class MainForm : Form {
|
public partial class MainForm : Form {
|
||||||
#region Form
|
#region Form
|
||||||
protected override CreateParams CreateParams { // Workaround for control flickering reduction
|
private bool allowClose = false;
|
||||||
|
|
||||||
|
protected override CreateParams CreateParams {
|
||||||
|
// Workaround for control flickering reduction
|
||||||
get {
|
get {
|
||||||
CreateParams cp = base.CreateParams;
|
CreateParams cp = base.CreateParams;
|
||||||
cp.ExStyle |= 0x02000000; // WS_EX_COMPOSITED
|
cp.ExStyle |= 0x02000000; // WS_EX_COMPOSITED
|
||||||
@ -24,6 +26,31 @@ namespace RCM {
|
|||||||
LoadDataSources(0);
|
LoadDataSources(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void MainForm_Resize(object sender, EventArgs e) {
|
||||||
|
if (WindowState == FormWindowState.Minimized) {
|
||||||
|
ShowInTaskbar = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Config.Save();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void NotifyIcon_MouseClick(object sender, MouseEventArgs e) {
|
||||||
|
if (e.Button == MouseButtons.Left) {
|
||||||
|
WindowState = FormWindowState.Normal;
|
||||||
|
ShowInTaskbar = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ToolStripMenuShowMainForm_Click(object sender, EventArgs e) {
|
||||||
|
WindowState = FormWindowState.Normal;
|
||||||
|
ShowInTaskbar = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ToolStripMenuCloseMainForm_Click(object sender, EventArgs e) {
|
||||||
|
allowClose = true;
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
|
||||||
private void LoadDataSources(int selectedIndex) {
|
private void LoadDataSources(int selectedIndex) {
|
||||||
comboBoxDatabase.Items.Clear();
|
comboBoxDatabase.Items.Clear();
|
||||||
comboBoxDatabase.Items.AddRange(Config.DataSources.ToArray());
|
comboBoxDatabase.Items.AddRange(Config.DataSources.ToArray());
|
||||||
@ -43,9 +70,18 @@ namespace RCM {
|
|||||||
configForm.Dispose();
|
configForm.Dispose();
|
||||||
LoadDataSources(selectedIndex);
|
LoadDataSources(selectedIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void MainForm_FormClosing(object sender, FormClosingEventArgs e) {
|
||||||
|
if (e.CloseReason == CloseReason.UserClosing && !allowClose) {
|
||||||
|
e.Cancel = true;
|
||||||
|
WindowState = FormWindowState.Minimized;
|
||||||
|
}
|
||||||
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region ComboBox & DataSource
|
#region ComboBox & DataSource
|
||||||
|
private IDataSource previouslySelectedDataSource = null;
|
||||||
|
|
||||||
private void RebuildGroupCombobox(IRecord record) {
|
private void RebuildGroupCombobox(IRecord record) {
|
||||||
List<GroupPath> groupPaths = new List<GroupPath>() { new GroupPath(null) };
|
List<GroupPath> groupPaths = new List<GroupPath>() { new GroupPath(null) };
|
||||||
groupPaths.AddRange(RebuildGroupCombobox(treeView.Nodes));
|
groupPaths.AddRange(RebuildGroupCombobox(treeView.Nodes));
|
||||||
@ -65,31 +101,66 @@ namespace RCM {
|
|||||||
return groupPaths;
|
return groupPaths;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ReloadDataSource() {
|
private void ShowDataSourceException(string failedAction, Exception ex) {
|
||||||
RebuildTreeView();
|
IDataSource dataSource = (IDataSource)comboBoxDatabase.SelectedItem;
|
||||||
timerDataSourceRefresh.Stop();
|
string message = String.Format("{0}\n\nData source \"{1}\" exception:\n{2}\n{3}", failedAction, dataSource.Title, ex.GetType().ToString(), ex.Message);
|
||||||
timerDataSourceRefresh.Start();
|
MessageBox.Show(message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ComboBoxDatabase_SelectedIndexChanged(object sender, EventArgs e) => ReloadDataSource();
|
private void ComboBoxDatabase_SelectedIndexChanged(object sender, EventArgs e) {
|
||||||
|
if (comboBoxDatabase.SelectedIndex == -1) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
treeView.Enabled = true;
|
||||||
|
ReloadTreeView(true);
|
||||||
|
previouslySelectedDataSource = (IDataSource)comboBoxDatabase.SelectedItem;
|
||||||
|
treeView.SelectedNode = null;
|
||||||
|
ChangeSelectedRecord();
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ShowDataSourceException("Failed to load data source.", ex);
|
||||||
|
if (previouslySelectedDataSource == null) {
|
||||||
|
treeView.Enabled = false;
|
||||||
|
treeView.Nodes.Clear();
|
||||||
|
comboBoxDatabase.SelectedIndex = -1;
|
||||||
|
toolStripStatusLabel.Text = "Last data source refresh: never";
|
||||||
|
toolStripStatusFailedFlag.Text = "(data source not loaded)";
|
||||||
|
} else {
|
||||||
|
comboBoxDatabase.SelectedItem = previouslySelectedDataSource;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void RefreshContextMenuItem_Click(object sender, EventArgs e) => ReloadDataSource();
|
private void RefreshContextMenuItem_Click(object sender, EventArgs e) {
|
||||||
|
try {
|
||||||
|
ReloadTreeView(true);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ShowDataSourceException("Failed to refresh data source.", ex);
|
||||||
|
toolStripStatusFailedFlag.Text = "(failed to refresh since then)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void TimerDataSourceRefresh_Tick(object sender, EventArgs e) {
|
private void TimerDataSourceRefresh_Tick(object sender, EventArgs e) {
|
||||||
RebuildTreeView();
|
try {
|
||||||
|
ReloadTreeView();
|
||||||
|
} catch (Exception ex) {
|
||||||
|
if (toolStripStatusFailedFlag.Text == String.Empty) {
|
||||||
|
ShowDataSourceException("Failed to refresh data source.", ex);
|
||||||
|
toolStripStatusFailedFlag.Text = "(failed to refresh since then)";
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region TreeView display
|
#region TreeView display
|
||||||
|
|
||||||
/* test */
|
private void ReloadTreeView(bool restartTimer = false) {
|
||||||
private void RebuildTreeView() {
|
|
||||||
// Select all records from database
|
// Select all records from database
|
||||||
IDataSource dataSource = (IDataSource)comboBoxDatabase.SelectedItem;
|
IDataSource dataSource = (IDataSource)comboBoxDatabase.SelectedItem;
|
||||||
Dictionary<Guid, IRecord> dataSourceRecords = dataSource.SelectAll();
|
Dictionary<Guid, IRecord> dataSourceRecords = dataSource.SelectAll();
|
||||||
Guid selectedGuid = treeView.SelectedNode == null ? Guid.Empty : ((IRecord)treeView.SelectedNode.Tag).Id;
|
Guid selectedGuid = treeView.SelectedNode == null ? Guid.Empty : ((IRecord)treeView.SelectedNode.Tag).Id;
|
||||||
|
|
||||||
// Flatten tree nodes
|
// Flatten existing tree nodes
|
||||||
List<TreeNode> flattenedTreeList = new List<TreeNode>();
|
List<TreeNode> flattenedTreeList = new List<TreeNode>();
|
||||||
int lastProcessPosition = 0;
|
int lastProcessPosition = 0;
|
||||||
flattenedTreeList.AddRange(treeView.Nodes.Cast<TreeNode>());
|
flattenedTreeList.AddRange(treeView.Nodes.Cast<TreeNode>());
|
||||||
@ -99,11 +170,13 @@ namespace RCM {
|
|||||||
Dictionary<Guid, TreeNode> flattenedTree = flattenedTreeList.ToDictionary(n => ((IRecord)n.Tag).Id, n => n);
|
Dictionary<Guid, TreeNode> flattenedTree = flattenedTreeList.ToDictionary(n => ((IRecord)n.Tag).Id, n => n);
|
||||||
|
|
||||||
// Iterate over existing nodes
|
// Iterate over existing nodes
|
||||||
|
HashSet<Guid> removeFromFlattenedTree = new HashSet<Guid>();
|
||||||
foreach (TreeNode node in flattenedTree.Values) {
|
foreach (TreeNode node in flattenedTree.Values) {
|
||||||
IRecord record = (IRecord)node.Tag;
|
IRecord record = (IRecord)node.Tag;
|
||||||
// Delete node if record no longer present in database
|
// Delete node if record no longer present in database
|
||||||
if (!dataSourceRecords.ContainsKey(record.Id)) {
|
if (!dataSourceRecords.ContainsKey(record.Id)) {
|
||||||
node.Remove();
|
node.Remove();
|
||||||
|
removeFromFlattenedTree.Add(record.Id);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
// Update existing record if it has changed since the last refresh
|
// Update existing record if it has changed since the last refresh
|
||||||
@ -123,17 +196,17 @@ namespace RCM {
|
|||||||
// Remove processed record
|
// Remove processed record
|
||||||
dataSourceRecords.Remove(record.Id);
|
dataSourceRecords.Remove(record.Id);
|
||||||
}
|
}
|
||||||
|
// Remove deleted records from flattened tree
|
||||||
|
foreach (Guid removedId in removeFromFlattenedTree) {
|
||||||
|
flattenedTree.Remove(removedId);
|
||||||
|
}
|
||||||
|
|
||||||
// Create nodes from unprocessed (new) records
|
// Create nodes from unprocessed (new) records
|
||||||
foreach (IRecord record in dataSourceRecords.Values) {
|
foreach (IRecord record in dataSourceRecords.Values) {
|
||||||
TreeNode node = CreateTreeNodeFromRecord(record);
|
flattenedTree.Add(record.Id, CreateTreeNodeFromRecord(record));
|
||||||
if (dataSource.ExpandedNodes.Contains(record.Id)) {
|
|
||||||
node.Expand();
|
|
||||||
}
|
|
||||||
flattenedTree.Add(record.Id, node);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Assign nodes to tree structure
|
// Assign nodes to tree structure (all nodes have to exist first)
|
||||||
foreach (IRecord record in dataSourceRecords.Values) {
|
foreach (IRecord record in dataSourceRecords.Values) {
|
||||||
TreeNode node = flattenedTree[record.Id];
|
TreeNode node = flattenedTree[record.Id];
|
||||||
if (record.GroupId == Guid.Empty) {
|
if (record.GroupId == Guid.Empty) {
|
||||||
@ -142,48 +215,41 @@ namespace RCM {
|
|||||||
flattenedTree[record.GroupId].Nodes.Add(node);
|
flattenedTree[record.GroupId].Nodes.Add(node);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// Expand nodes (all nodes have to be placed in tree first)
|
||||||
TreeNode selectedNode = flattenedTree.ContainsKey(selectedGuid) ? flattenedTree[selectedGuid] : null;
|
foreach (IRecord record in dataSourceRecords.Values) {
|
||||||
SortTreeAndSelectNode(selectedNode);
|
if (dataSource.ExpandedNodes.Contains(record.Id)) {
|
||||||
toolStripStatusLastRefresh.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
TreeNode node = flattenedTree[record.Id];
|
||||||
}
|
|
||||||
/* test end */
|
|
||||||
|
|
||||||
/*private void RebuildTreeView() {
|
|
||||||
IDataSource dataSource = (IDataSource)comboBoxDatabase.SelectedItem;
|
|
||||||
Dictionary<Guid, TreeNode> nodes = new Dictionary<Guid, TreeNode>();
|
|
||||||
|
|
||||||
try {
|
|
||||||
foreach (IRecord record in dataSource.SelectAll()) {
|
|
||||||
nodes.Add(record.Id, CreateTreeNodeFromRecord(record));
|
|
||||||
}
|
|
||||||
} catch {
|
|
||||||
MessageBox.Show("Failed to retieve records from data source", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
Guid selectedGuid = treeView.SelectedNode == null ? Guid.Empty : ((IRecord)treeView.SelectedNode.Tag).Id;
|
|
||||||
TreeNode selectedNode = null;
|
|
||||||
treeView.Nodes.Clear();
|
|
||||||
foreach (TreeNode node in nodes.Values) {
|
|
||||||
IRecord record = (IRecord)node.Tag;
|
|
||||||
if (record.GroupId == Guid.Empty) {
|
|
||||||
treeView.Nodes.Add(node);
|
|
||||||
} else {
|
|
||||||
nodes[record.GroupId].Nodes.Add(node);
|
|
||||||
}
|
|
||||||
if (record.Id == selectedGuid) {
|
|
||||||
selectedNode = node;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
SortTreeAndSelectNode(selectedNode);
|
|
||||||
foreach (TreeNode node in nodes.Values) {
|
|
||||||
if (dataSource.ExpandedNodes.Contains(((IRecord)node.Tag).Id)) {
|
|
||||||
node.Expand();
|
node.Expand();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
toolStripStatusLastRefresh.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
|
||||||
}*/
|
// Remove controls if selected node has been deleted
|
||||||
|
if (!flattenedTree.ContainsKey(selectedGuid)) {
|
||||||
|
SortTreeAndSelectNode(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Restart timer
|
||||||
|
toolStripStatusLabel.Text = String.Format("Last data source refresh: {0}", DateTime.Now.ToString("yyyy-MM-dd HH:mm"));
|
||||||
|
toolStripStatusFailedFlag.Text = String.Empty;
|
||||||
|
if (restartTimer) {
|
||||||
|
timerDataSourceRefresh.Stop();
|
||||||
|
timerDataSourceRefresh.Start();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete expanded nodes which no longer exist
|
||||||
|
HashSet<Guid> removeFromExpandedNodes = new HashSet<Guid>();
|
||||||
|
foreach (Guid recordId in dataSource.ExpandedNodes) {
|
||||||
|
if (!flattenedTree.ContainsKey(recordId)) {
|
||||||
|
removeFromExpandedNodes.Add(recordId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
foreach (Guid recordId in removeFromExpandedNodes) {
|
||||||
|
dataSource.ExpandedNodes.Remove(recordId);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Save expanded nodes
|
||||||
|
Config.Save();
|
||||||
|
}
|
||||||
|
|
||||||
private TreeNode CreateTreeNodeFromRecord(IRecord record) {
|
private TreeNode CreateTreeNodeFromRecord(IRecord record) {
|
||||||
string imageKey = record.GetType().FullName;
|
string imageKey = record.GetType().FullName;
|
||||||
@ -191,6 +257,9 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void SortTreeAndSelectNode(TreeNode node) {
|
private void SortTreeAndSelectNode(TreeNode node) {
|
||||||
|
/*if (node == null) {
|
||||||
|
return;
|
||||||
|
}*/
|
||||||
treeView.Sort();
|
treeView.Sort();
|
||||||
if (treeView.SelectedNode == node) {
|
if (treeView.SelectedNode == node) {
|
||||||
ChangeSelectedRecord();
|
ChangeSelectedRecord();
|
||||||
@ -253,7 +322,11 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void TreeView_KeyDown(object sender, KeyEventArgs e) {
|
private void TreeView_KeyDown(object sender, KeyEventArgs e) {
|
||||||
if (e.KeyCode == Keys.Delete) {
|
if (e.KeyCode == Keys.Return) {
|
||||||
|
if (treeView.SelectedNode != null) {
|
||||||
|
RunDefaultNodeAction(treeView.SelectedNode);
|
||||||
|
}
|
||||||
|
} else if (e.KeyCode == Keys.Delete) {
|
||||||
if (treeView.SelectedNode != null) {
|
if (treeView.SelectedNode != null) {
|
||||||
DeleteSelectedNode();
|
DeleteSelectedNode();
|
||||||
}
|
}
|
||||||
@ -262,18 +335,22 @@ namespace RCM {
|
|||||||
treeView.SelectedNode.BeginEdit();
|
treeView.SelectedNode.BeginEdit();
|
||||||
}
|
}
|
||||||
} else if (e.KeyCode == Keys.F5) {
|
} else if (e.KeyCode == Keys.F5) {
|
||||||
ReloadDataSource();
|
ReloadTreeView(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void TreeView_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e) {
|
private void RunDefaultNodeAction(TreeNode node) {
|
||||||
IAction[] actions = ((IRecord)e.Node.Tag).GetActions();
|
IAction[] actions = ((IRecord)node.Tag).GetActions();
|
||||||
if (actions.Length == 0) {
|
if (actions.Length == 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
actions[0].Run();
|
actions[0].Run();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void TreeView_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e) {
|
||||||
|
RunDefaultNodeAction(e.Node);
|
||||||
|
}
|
||||||
|
|
||||||
private void ChangeSelectedRecord() {
|
private void ChangeSelectedRecord() {
|
||||||
bool isSelected = treeView.SelectedNode != null;
|
bool isSelected = treeView.SelectedNode != null;
|
||||||
textBoxTitle.Enabled = isSelected;
|
textBoxTitle.Enabled = isSelected;
|
||||||
@ -291,6 +368,8 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
if (treeView.SelectedNode != null) {
|
if (treeView.SelectedNode != null) {
|
||||||
IRecord record = (IRecord)treeView.SelectedNode.Tag;
|
IRecord record = (IRecord)treeView.SelectedNode.Tag;
|
||||||
|
// Prevent refresh of currently selected node (which is possibly being edited)
|
||||||
|
//if (record.Id == panelRecord.
|
||||||
textBoxTitle.Text = record.Title;
|
textBoxTitle.Text = record.Title;
|
||||||
RebuildGroupCombobox(record);
|
RebuildGroupCombobox(record);
|
||||||
panelRecord.Controls.Add(record.GetControl());
|
panelRecord.Controls.Add(record.GetControl());
|
||||||
@ -315,9 +394,10 @@ namespace RCM {
|
|||||||
record.Title = e.Label;
|
record.Title = e.Label;
|
||||||
try {
|
try {
|
||||||
((IDataSource)comboBoxDatabase.SelectedItem).Update(record);
|
((IDataSource)comboBoxDatabase.SelectedItem).Update(record);
|
||||||
BeginInvoke(new AfterLabelEditWorkaround(SortTreeAndSelectNode), new object[] { e.Node }); // Workaround for treeView.Sort() triggering relabel on every sorted node. See note in https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.listview.afterlabeledit?view=netframework-4.6
|
// Workaround for treeView.Sort() triggering relabel on every sorted node. See note in https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.listview.afterlabeledit?view=netframework-4.6
|
||||||
|
BeginInvoke(new AfterLabelEditWorkaround(SortTreeAndSelectNode), new object[] { e.Node });
|
||||||
} catch {
|
} catch {
|
||||||
MessageBox.Show("Failed to update record in data source", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
MessageBox.Show("Failed to update record in data source.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
e.CancelEdit = true;
|
e.CancelEdit = true;
|
||||||
@ -335,7 +415,7 @@ namespace RCM {
|
|||||||
try {
|
try {
|
||||||
((IDataSource)comboBoxDatabase.SelectedItem).Update(record);
|
((IDataSource)comboBoxDatabase.SelectedItem).Update(record);
|
||||||
} catch {
|
} catch {
|
||||||
MessageBox.Show("Failed to update record in data source", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
MessageBox.Show("Failed to update record in data source.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (groupChanged) {
|
if (groupChanged) {
|
||||||
@ -359,8 +439,8 @@ namespace RCM {
|
|||||||
try {
|
try {
|
||||||
TreeNode node = InsertNewRecord(record, parentNode);
|
TreeNode node = InsertNewRecord(record, parentNode);
|
||||||
SortTreeAndSelectNode(node);
|
SortTreeAndSelectNode(node);
|
||||||
} catch {
|
} catch (Exception ex) {
|
||||||
MessageBox.Show("Failed to insert record into data source", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
ShowDataSourceException("Failed to insert record into data source.", ex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -368,8 +448,8 @@ namespace RCM {
|
|||||||
try {
|
try {
|
||||||
TreeNode node = DuplicateRecord(treeView.SelectedNode, treeView.SelectedNode.Parent);
|
TreeNode node = DuplicateRecord(treeView.SelectedNode, treeView.SelectedNode.Parent);
|
||||||
SortTreeAndSelectNode(node);
|
SortTreeAndSelectNode(node);
|
||||||
} catch {
|
} catch (Exception ex) {
|
||||||
MessageBox.Show("Failed to insert record into data source", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
ShowDataSourceException("Failed to insert record into data source.", ex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -405,8 +485,8 @@ namespace RCM {
|
|||||||
if (MessageBox.Show(message, "Confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) {
|
if (MessageBox.Show(message, "Confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) {
|
||||||
try {
|
try {
|
||||||
((IDataSource)comboBoxDatabase.SelectedItem).Delete(record);
|
((IDataSource)comboBoxDatabase.SelectedItem).Delete(record);
|
||||||
} catch {
|
} catch (Exception ex) {
|
||||||
MessageBox.Show("Failed to remove record from data source", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
ShowDataSourceException("Failed to remove record from data source.", ex);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
treeView.SelectedNode.Remove();
|
treeView.SelectedNode.Remove();
|
||||||
@ -421,8 +501,18 @@ namespace RCM {
|
|||||||
private ContextMenuStrip GetNewRecordContextMenu() {
|
private ContextMenuStrip GetNewRecordContextMenu() {
|
||||||
ContextMenuStrip menu = new ContextMenuStrip();
|
ContextMenuStrip menu = new ContextMenuStrip();
|
||||||
ToolStripMenuItem menuItemNew = new ToolStripMenuItem("New item");
|
ToolStripMenuItem menuItemNew = new ToolStripMenuItem("New item");
|
||||||
|
// Add group as the first type
|
||||||
|
Type groupType = typeof(Group);
|
||||||
|
ToolStripMenuItem groupItem = new ToolStripMenuItem(groupType.GetDisplayName()) { Tag = groupType, Image = Config.IconList.Images[groupType.FullName] };
|
||||||
|
groupItem.Click += NewRecordContextMenuItem_Click;
|
||||||
|
menuItemNew.DropDownItems.Add(groupItem);
|
||||||
|
menuItemNew.DropDownItems.Add(new ToolStripSeparator());
|
||||||
|
// Add all the rest
|
||||||
foreach (Type type in Config.RecordTypes) {
|
foreach (Type type in Config.RecordTypes) {
|
||||||
ToolStripMenuItem item = new ToolStripMenuItem(type.GetDisplayName()) { Tag = type };
|
if (type == groupType) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
ToolStripMenuItem item = new ToolStripMenuItem(type.GetDisplayName()) { Tag = type, Image = Config.IconList.Images[type.FullName] };
|
||||||
item.Click += NewRecordContextMenuItem_Click;
|
item.Click += NewRecordContextMenuItem_Click;
|
||||||
menuItemNew.DropDownItems.Add(item);
|
menuItemNew.DropDownItems.Add(item);
|
||||||
}
|
}
|
||||||
@ -459,5 +549,13 @@ namespace RCM {
|
|||||||
((IAction)((ToolStripMenuItem)sender).Tag).Run();
|
((IAction)((ToolStripMenuItem)sender).Tag).Run();
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
/*private void button1_Click(object sender, EventArgs e) {
|
||||||
|
List<IRecord> records = Importer.GetRecordsFromRDM();
|
||||||
|
IDataSource dataSource = ((IDataSource)comboBoxDatabase.SelectedItem);
|
||||||
|
foreach (IRecord record in records) {
|
||||||
|
dataSource.Insert(record);
|
||||||
|
}
|
||||||
|
}*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -123,7 +123,938 @@
|
|||||||
<metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>201, 17</value>
|
<value>201, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
<metadata name="notifyIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>310, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="contextMenuNotifyIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>416, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="notifyIcon.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAsAMDAQAAEABABoBgAAtgAAACAgEAABAAQA6AIAAB4HAAAYGBAAAQAEAOgBAAAGCgAAEBAQAAEA
|
||||||
|
BAAoAQAA7gsAADAwAAABAAgAqA4AABYNAAAgIAAAAQAIAKgIAAC+GwAAGBgAAAEACADIBgAAZiQAABAQ
|
||||||
|
AAABAAgAaAUAAC4rAAAwMAAAAQAgAKglAACWMAAAICAAAAEAIACoEAAAPlYAABAQAAABACAAaAQAAOZm
|
||||||
|
AAAoAAAAMAAAAGAAAAABAAQAAAAAAIAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAA
|
||||||
|
AACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAAAAAAAHAAAAAAAAAA
|
||||||
|
AAAAcAcHBxYWFhYWFhYWEAcAAAAAAAAAAAAAAI//////////////+AYAAAAAAAAAAAAAcP//////////
|
||||||
|
/////wEAAAAAAAAAAAAAcBiIiIiIj/iIiIiIhgcAAAAAAAAAAAAAAAAAAAAAf/cAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAHcHAHAAf/cABwBwABAAAAAAAAAAAAAAAAAAAABwf/cHAAAHAABwAAAAAAAAAAAAAAAAAAAAf/cA
|
||||||
|
AAAACHAAAAAAAABwAAAAAAAAAAAAf/cAAABwf/gAcAAAAAcAcHBxYWcWF2F2j/gWcWAAD/+AAAAAAAAI
|
||||||
|
//////////////////EAB//4AHAAAAAP//////////////////cHAH//gAAAAAAP/4iIiIeIiHiHiHiI
|
||||||
|
eHAAAAf/+ABwAAAP/wAAAAAAAAAAAAAAAABwAAB//4ABAAAP/wABYBYWAWFhBwFgcHAAAAAH//gAcAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAf/+AYAAP/wAAAAAAAAAAAAAAAAAAAAAACP/wAAAP/wAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAj/9wcAAP/wAAAAAAAAAAAAAAAAAAABAP//cAAAAP/wAAAAAAAAAAAAAAAAAABgD//3AAAAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAEAj/9wBwAAAP/wAAAAAAAAAAAAAAAAAHAP//cABwAAAP/wAAAAAAAAAAAAAA
|
||||||
|
AAAACP/3AAAAAAAP/wAAAAAAAAAAAAAAAAAAf/9wAHhwcAAP/wAAAAAAAAAAAAAAAAAAf/cAB4+AAAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAeP+AAAAP/wAAAAAAAAAAAAAAAAAAAAAHj/gAcAAP/wAAAAAAAAAAAAAA
|
||||||
|
AAAABwB//4AHAAAP/wAAAAAAAAAAAAAAAAAAAAf/+ABwAAAP/wAAAAAAAAAAAAAAAAAAAH//gAEAAAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAB//4AHAAAAAP/wBwAAAAAAAAAAAAAAAAf/+AAAAAAAAP/wAAAAAAAAAAAAAA
|
||||||
|
AABwf/9wBwAAAAAP/3B3FncWdxZxZxZxZwAACP/3AAAAAAAP//////////////////cAAI/4cAAAAAAP
|
||||||
|
//////////////////cHAA//9wAAAAcHeIh4h4h4h4iIeIh4iHAABwCP/3AAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AABwAAAP/4cAAAAHcBYBYWBwFgFhYBYWFnAAAAcAj/9wcAAAAAAAAAAAAAAAAAAAAAAAAAAAD/+AAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAHAI+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAcAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
||||||
|
/////wAA////////AAD/4AAAB/8AAP/AAAAD/wAA/8AAAAP/AAD/wAAAA/8AAP/AAAAD/wAA/+AAAAf/
|
||||||
|
AAD/8AAAB/8AAP//8A+B/wAA///wD4D/AADAAAAAAH8AAIAAAAAAPwAAgAAAAAAfAACAAAAAAA8AAIAA
|
||||||
|
AABgBwAAgAAAAHADAACAAAAB+AEAAID////8AQAAgP////wBAACA////+AEAAID////wAwAAgP///+AH
|
||||||
|
AACA////wAcAAID///+ABwAAgP///4ADAACA////gAEAAID///+AAQAAgP///4ABAACA////wAEAAID/
|
||||||
|
///gAwAAgP///+AHAACA////wA8AAID///+AHwAAgH///4A/AACAAAAAAD8AAIAAAAAAPwAAgAAAAAAf
|
||||||
|
AACAAAAAAA8AAIAAAABgBwAAwAAAAHADAADgAAAB+AEAAP/////8AQAA//////4BAAD//////wEAAP//
|
||||||
|
////gwAA////////AAD///////8AACgAAAAgAAAAQAAAAAEABAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
|
||||||
|
AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAAeHh3h3h3h3cAAAAAAAAAAP//
|
||||||
|
////////AAAAAAAAAAB3d3d/93d3cAAAAAAAAAAAAAAAD/AAAABwAAAAAAAAAAAAAA/wAABwAAAAAAAA
|
||||||
|
AAAHAAAP8AB3CPBwAAAAeHh4d3h4f/d3cAj/AAAAAP////////////AAj/AAAAD/d3d3d3d3d3cABwj/
|
||||||
|
cAAA/wAAAAAAAAAAcAAAj4BwAP8AAAAAAAAAAAAABwj/AAD/AAAAAAAAAAAAAAAP+AAA/wAAAAAAAAAA
|
||||||
|
AAAHj4BwAP8AAAAAAAAAAAAAePgAAAD/AAAAAAAAAAAAcP+ABwAA/wAAAAAAAAAAAAj4AHAAAP8AAAAA
|
||||||
|
AAAAAAAIgAf/AAD/AAAAAAAAAAAAcAB/9wAA/wAAAAAAAAAAAAcHj3AAAP8AAAAAAAAAAAAAf/cAAAD/
|
||||||
|
AAAAAAAAAAAAB/9wAAAA/wAAAAAABwAHBw/3AAAAAP93eHh4eHd4d3AH/3AAAAD////////////wcH/3
|
||||||
|
AAAAd3d3d3d3d3d3AAcH/3AAAAAAAAAAAAAAAHAAcH/3AAAAAAAAAAAAAAAAAAcHjwAAAAAAAAAAAAAA
|
||||||
|
AAAAcHcAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAAAAAAAAD//////wAA//4AAH/+AAB//gAAf/8A
|
||||||
|
AH///Dw/wAAAH4AAAA+AAAAHgAACA4AABwGH//+Bh///gYf//wGH//4Dh//8A4f//AGH//wBh//8AYf/
|
||||||
|
/gOH//4Hh//8D4AAAA+AAAAPgAAAB4AAAgPAAAcB////gf///8H////z/////ygAAAAYAAAAMAAAAAEA
|
||||||
|
BAAAAAAAIAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDA
|
||||||
|
wAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8AAAAAAAAAAAAAAAAAAAAHAAAWAAFgcAAAAAAA////
|
||||||
|
////AAAAAAAHB3Foh3BwcAAAAAAAAAAIgABwAAAAAHBwcHcIgHcIgAAAAIh4iHeP+HcH+AAAd/j4iPiI
|
||||||
|
iIcAf4AAd/AAAAAWAQcAB/gAd/AAAAAAAAAAAH9wd/AAAAAAAAAAcPgAd4AAAAAAAAAHD4CAd/AAAAAA
|
||||||
|
AAAA+ABwd/AAAAAAAAB4gHgQd4AAAAAAAAAAAI9gd/AAAAAAAAAHD/Bwd/AAAAAAAAAA/2EAd4BxZ3Fn
|
||||||
|
cWd48QAAd/h4d4eHeIcA/wAAAYj4+I+PiIdxb4AABwAAAAAABgEAcP8AAAAAAAAAAAAABw9wAAAAAAAA
|
||||||
|
AAAAAHAAAAAAAAAAAAAAAAAA////APgAHwD4AB8A+AAfAP/DHwDAAA8AgAAHAAAAAwAAAMEAD//hAA//
|
||||||
|
wQAP/4EAD/+BAA//AQAP/4EAD/+BAA//gwAAAAcAAAAHAIAAAwCAAMEA///hAP//8QD///8AKAAAABAA
|
||||||
|
AAAgAAAAAQAEAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICA
|
||||||
|
AACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAHiIiIiHAAAAAHCHcH
|
||||||
|
AAAAAAB3dwBwAHiIiI+IcPcADwdwcHBwD3B/cAAAAAB3hw9wAAAAAHhweHAAAAAHgAAPAAAAAAB3939w
|
||||||
|
AAAAB3gADwAAAAAHgAB/iIiIiHD3AAcHcHcHAHhwAAAAAAAAAIcAAAAAAAAAAP//AADgBwAA8A8AAPwn
|
||||||
|
AAAAAwAAABEAAB/wAAAf8QAAH+EAAB/gAAAf4QAAH+MAAAADAACAEQAA//gAAP//AAAoAAAAMAAAAGAA
|
||||||
|
AAABAAgAAAAAAAAJAAAAAAAAAAAAAAABAAAAAQAAAAAAAAUFBQAICAgADAwMABEREQAVFRUAGBgYAB0d
|
||||||
|
HQAgICAAJSUlACsrKwAtLS0AMjIyADU1NQA5OTkAPj4+AEFBQQBFRUUASkpKAExMTABRUVEAVlZWAFhY
|
||||||
|
WABdXV0AYGBgAGZmZgBpaWkAbGxsAHFxcQB1dXUAenp6AH5+fgCPj48AmJiYAKSkpACtra0AsbGxALW1
|
||||||
|
tQC7u7sAwcHBAMXFxQDJyckAzMzMANDQ0ADZ2dkA6urqAO3t7QD19fUA+fn5AP7+/gAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAGAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBcAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAfAAQRExMTExMTExMTExMTExMTExMTExMTBAAfAAAAAAAAAAAAAAAAAAAAAAAAAAAPACf/
|
||||||
|
////////////////////////////JwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAMAC7/////////////////
|
||||||
|
////////////LgALAAAAAAAAAAAAAAAAAAAAAAAAAAAXABMjJCQkJCQkJCQs//8sJCQkJCQkJCQjFAAU
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAAAAAAAAAAAf//8fAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAB8TDwwMDAwMBAAf//8fAAQMDAwMDAcAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAFwAf//8fABcAAAAAABcAAAAAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAf//8f
|
||||||
|
AAsAAAAAAAQEISEEAA8AAAAAAAAAAAAAGAQAAAAAAAAAAAAAAAAAAAAAAAAf//8fAAAAAAALEQAc//8n
|
||||||
|
BAAPAAAAAAAAAAAcAAQRExMTExMTExMTExMTExMTExMi//8iExMTEwsAAAAR////KQQADwAAAAAAAAAH
|
||||||
|
ACf///////////////////////////////////8RAAAAGP///ycEAA8AAAAAAAAEAP//////////////
|
||||||
|
//////////////////////8YAA8AABwv//8nBAAPAAAAAAAABC///yQkJCQkJCQkJCQkJCQkJCQkJCQk
|
||||||
|
JCQkJCAEBAAABAAY////KQQADwAAAAAAAC//LwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQA
|
||||||
|
GP///ycEAA8AAAAABC//LwQACQwMDAwMDAwMDAwMDAwMDAwMDAwMERgAAAAAAAAEABj///8nBAAdAAAA
|
||||||
|
AP//LgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY////JgAMAAAABC//LwAEAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAELP//LgAJAAAAAP//LwQAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAPAAQp////GAARAAAABC//LgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwA
|
||||||
|
BCn///8YAAQAAAAAAP//LwQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAEJ////xgABAAAAAAA
|
||||||
|
BC//LgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAQn////GAAEHwAAAAAAAP//LwQAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAABMABCn///8YAAAEHAAAAAAABC//LgQEAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAQEJ////xgAAAAAAAcAAAAAAP//LwAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAd////
|
||||||
|
GAAAABQkFAATAAAABC//LgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT/y8YAAAAGP//LgAJAAAA
|
||||||
|
AP//LwAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACwsAAAAY////JwAMAAAABC//LwQAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAABj///8pBAAcAAAAAP//LgAEAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAFwAAGP///ycHAA8AAAAABC//LwQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAY
|
||||||
|
////JwcADAAAAAAAAP//LgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABf///8pBAAMAAAAAAAA
|
||||||
|
BC//LwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAF////ycHAA8AAAAAAAAAAP//LwAEHQAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAR////KQQACwAAAAAAAAAABC//LwQAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAALEQAd////GAAAGAAAAAAAAAAAAP//LxMTExMTExMTExMTExMTExMTExMTExMTEwsAAAAEK///
|
||||||
|
/xQABAAAAAAAAAAEAC////////////////////////////////////8RAAQABCv///8UAAQAAAAAAAAE
|
||||||
|
AC7///////////////////////////////////8YABwLAAcp//8vFwAEAAAAAAARABMjIyQjJCMkIyQj
|
||||||
|
JCMkIyQjJCMkIyQjJCMkIyAEBAAADAAHKf///xQABAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAHAAAAAsAByv//y8XAAQAAAAAAB8TDwwMDAwMDAwMDAwMDAwMDAwMDAwMDAwPDxgAAAAAAAAL
|
||||||
|
AAcp//8vFAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAHKf//LgALAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAByn/JwALAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAQRBAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAFwQABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
||||||
|
/////wAA////////AAD/4AAAB/8AAP/AAAAD/wAA/8AAAAP/AAD/wAAAA/8AAP/AAAAD/wAA/+AAAAf/
|
||||||
|
AAD/8AAAB/8AAP//8A+B/wAA///wD4D/AADAAAAAAH8AAIAAAAAAPwAAgAAAAAAfAACAAAAAAA8AAIAA
|
||||||
|
AABgBwAAgAAAAHADAACAAAAB+AEAAID////8AQAAgP////wBAACA////+AEAAID////wAwAAgP///+AH
|
||||||
|
AACA////wAcAAID///+ABwAAgP///4ADAACA////gAEAAID///+AAQAAgP///4ABAACA////wAEAAID/
|
||||||
|
///gAwAAgP///+AHAACA////wA8AAID///+AHwAAgH///4A/AACAAAAAAD8AAIAAAAAAPwAAgAAAAAAf
|
||||||
|
AACAAAAAAA8AAIAAAABgBwAAwAAAAHADAADgAAAB+AEAAP/////8AQAA//////4BAAD//////wEAAP//
|
||||||
|
////gwAA////////AAD///////8AACgAAAAgAAAAQAAAAAEACAAAAAAAAAQAAAAAAAAAAAAAAAEAAAAB
|
||||||
|
AAAAAAAABQUFAAkJCQANDQ0AERERABUVFQAZGRkAHBwcACIiIgAlJSUAKCgoAC0tLQA3NzcAOTk5AD09
|
||||||
|
PQBBQUEARUVFAElJSQBMTEwAUlJSAFVVVQBiYmIAZWVlAGlpaQBsbGwAcXFxAHZ2dgB5eXkAfX19AIaG
|
||||||
|
hgCJiYkApaWlALKysgC4uLgAv7+/AN7e3gDl5eUA7e3tAPHx8QD29vYA+fn5AP7+/gAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0GBQUFBQUFBQUFBQUF
|
||||||
|
BQwAAAAAAAAAAAAAAAAAAAAFEx0dHR0dHR0dHR0dHR0dEwUAAAAAAAAAAAAAAAAAAAAmKSkpKSkpKSkp
|
||||||
|
KSkpKSkmAAAAAAAAAAAAAAAAAAAABREaGhoaGhopJhsaGhoaGhEFAAAAAAAAAAAAAAAAAAAAEQoICAgE
|
||||||
|
ACkpAAUGCAgEABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSYAAAAAAAoFBAYAAAAAAAAAAA0GBQUFBQUF
|
||||||
|
BQUFBAApKQAEBg0YACMkCgYAAAAAAAAEEx4dHR0dHR0dHR0dHikmHh4eEwAAICkkCgYAAAAAAAAmKSkp
|
||||||
|
KSkpKSkpKSkpKSkpKSkkAAgEICkkCgYAAAAAACkpGxoaGhoaGhoaGhoaGhoaGxEGAA0EICkkCgYAAAAA
|
||||||
|
KSYEBAgICAgICAgICAgICAgKEQAAABEAISkkCggAAAApJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAoEISkk
|
||||||
|
AAAAACkpAAAAAAAAAAAAAAAAAAAAAAAAAAAABQokKSAAAAAAKSYEAAAAAAAAAAAAAAAAAAAAAAAAAAYK
|
||||||
|
JCkhBBEAAAApJgAAAAAAAAAAAAAAAAAAAAAAAAAGCiQpIQANAAAAACkpAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
CAokKSEEAA0AAAAAKSYEAAAAAAAAAAAAAAAAAAAAAAAAJCkhAAAREQUAAAApJgAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAfHwQAGCkmAAAAACkpAAAAAAAAAAAAAAAAAAAAAAAAFQQAABUpKRgEAAAAKSYEAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAFQAYKSkYAAAAAAApJgAAAAAAAAAAAAAAAAAAAAAAAAAAGCkpGAAAAAAAACkpAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAABBUpKRgAAAAAAAAAKSYEAAYFBQUFBQUFBQUFBQUGDRUAJikfAA0AAAAAAAApKR0d
|
||||||
|
HR0dHR0dHR0dHR0dHR4TAAAaKSkVBAAAAAAAACYpKSkpKSkpKSkpKSkpKSkpKSQAEQAaKSkVAAAAAAAF
|
||||||
|
ERoaGhoaGhoaGhoaGhoaGhobEQYAGwAaKSkVAAAAAAARCggICAgICAgICAgICAgICAoRAAAAGwAaKSkV
|
||||||
|
BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGwAaKSQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
GwAVEwUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABERAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAP//////AAD//gAAf/4AAH/+AAB//wAAf//8PD/AAAAfgAAAD4AAAAeAAAIDgAAHAYf/
|
||||||
|
/4GH//+Bh///AYf//gOH//wDh//8AYf//AGH//wBh//+A4f//geH//wPgAAAD4AAAA+AAAAHgAACA8AA
|
||||||
|
BwH///+B////wf////P/////KAAAABgAAAAwAAAAAQAIAAAAAABAAgAAAAAAAAAAAAAAAQAAAAEAAAAA
|
||||||
|
AAAEBAQACQkJAAwMDAASEhIAFhYWABkZGQAcHBwAISEhACUlJQAzMzMANDQ0ADo6OgA+Pj4AQUFBAEpK
|
||||||
|
SgBOTk4AUVFRAFVVVQBYWFgAZWVlAGlpaQBsbGwAcXFxAHV1dQB/f38AgICAAIaGhgCUlJQAm5ubAKOj
|
||||||
|
owCkpKQAra2tAL6+vgDAwMAA0dHRANXV1QDY2NgA6enpAOzs7ADx8fEA+fn5AP7+/gAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcGCQkJCQkJCQkJCQYWAAAAAAAAAAAAAAYnKioq
|
||||||
|
KioqKioqKicGAAAAAAAAAAAAABANExMTEyQkExMTEw0QAAAAAAAAAAAAAAAAAAAABiIiBgAAFAAKAAAA
|
||||||
|
AAAAABEQEA8QEA8QAiIiAhAXDxsdBAAAAAAACh4eHh4eHh4eHiYmHh4TABYqHgQAAAAWGSolJCQkJSQl
|
||||||
|
JSQkJSUbDQkXKh4EAAAUGSoABgYGBgYGBgYGBgYPAAAJFyofBAAUGSkCAAAAAAAAAAAAAAAAAAAAAB0q
|
||||||
|
FgAUGSoAAAAAAAAAAAAAAAAAAAARDSckBgAUGSoCAAAAAAAAAAAAAAAAABENJyUGGwAUGSkCAAAAAAAA
|
||||||
|
AAAAAAAAAA0nJAYAEQAUGSoAAAAAAAAAAAAAAAAAER8lBgYiEQAUGSoCAAAAAAAAAAAAAAAAAAYCBiQp
|
||||||
|
CgAUGSkCAAAAAAAAAAAAAAAAABcGJCkKEQAUGSoAAAAAAAAAAAAAAAAAAAYkJw0QAAAUGSoADxAPEBAP
|
||||||
|
EBAPEBAXDR8qEQkAAAAWGSoeHh4eHh4eHh4eHh4TAA8pIwQAAAAAECQlJCQkJCUkJCQlJCUbEA8NKSMG
|
||||||
|
AAAAEwkGBgYGBgYGBgYGBgYPAAAPDSkjBAAAAAAAAAAAAAAAAAAAAAAAAAAADw0pFgAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAABEGBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A+AAfAPgAHwD4AB8A/8MfAMAA
|
||||||
|
DwCAAAcAAAADAAAAwQAP/+EAD//BAA//gQAP/4EAD/8BAA//gQAP/4EAD/+DAAAABwAAAAcAgAADAIAA
|
||||||
|
wQD//+EA///xAP///wAoAAAAEAAAACAAAAABAAgAAAAAAAABAAAAAAAAAAAAAAABAAAAAQAAAAAAACkp
|
||||||
|
KQAsLCwAMjIyADU1NQA5OTkAPj4+AEBAQABEREQASEhIAE5OTgBRUVEAWVlZAF5eXgBiYmIAZ2dnAGho
|
||||||
|
aABsbGwAcnJyAHZ2dgB7e3sAf39/AJycnACmpqYAs7OzALS0tADCwsIA1tbWANnZ2QDh4eEA5+fnAOjo
|
||||||
|
6AD4+PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAARGBoaGhoaGhgRAAAAAAAAAAkJCRYWCQkDAAAAAAAAAAAAAA8VFREACQoA
|
||||||
|
AAANGBoaGhoaHR0aCgMdCwAACSAJCQkKCQkJCgoACR0LAAkgCgAAAAAAAAAAABUTHQ8JIAoAAAAAAAAA
|
||||||
|
AAALHwYACSAKAAAAAAAAAAAKHQMDAAkgCgAAAAAAAAAACQETGw8JIAoAAAAAAAAAABURHQMACSABAAAA
|
||||||
|
AAAAAAANHQEAAAogGhoaGhoaGhoKAR0RAAAACQkJCgkJCgkKCgAGHREAAAAAAAAAAAAAAAAAAAMXEQAA
|
||||||
|
AAAAAAAAAAAAAAAAAAD//wAA4AcAAPAPAAD8JwAAAAMAAAARAAAf8AAAH/EAAB/hAAAf4AAAH+EAAB/j
|
||||||
|
AAAAAwAAgBEAAP/4AAD//wAAKAAAADAAAABgAAAAAQAgAAAAAACAJQAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAA
|
||||||
|
AC8AAABWAAAAawAAAHAAAAByAAAAcgAAAHIAAAByAAAAcgAAAHIAAAByAAAAcgAAAHIAAAByAAAAcgAA
|
||||||
|
AHIAAAByAAAAcgAAAHIAAAByAAAAcAAAAGsAAABZAAAAMQAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAgAAAAngAAAO8AAAD9AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD9AAAA8AAAAKMAAAAjAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAMAAACCAAAA/A4ODv9HR0f/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tL
|
||||||
|
S/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9HR0f/EBAQ/wAA
|
||||||
|
AP0AAACGAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAADEAAAA/8PDw/7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+//7+
|
||||||
|
/v7+/v7+yMjI/wAAAP4AAADFAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
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
|
||||||
|
/P7+/v7+/v7+/8bGxv4SEhL+AAAA/gAAAMQAAAAuAAAAAQAAAAAAAAAAAAAAAAAAACkAAAD2BwcH/vf3
|
||||||
|
9//+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+//7+/v7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v9oaGj+AAAA/gAA
|
||||||
|
AMgAAAD2AAAA/mdnZ/77+/v+/v7+//7+/v7Gxsb+EhIS/wAAAP4AAADEAAAALgAAAAEAAAAAAAAAAAAA
|
||||||
|
ADMAAAD7CAgI//f39//+/v7/+/v7/7W1tf+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Ky
|
||||||
|
sv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/4+P
|
||||||
|
j/8MDAz/AAAA8QAAAEgAAAB7AAAA9gAAAP9mZmb/+vr6///////+/v7/yMjI/xISEv8AAAD+AAAAxQAA
|
||||||
|
AC4AAAABAAAAAAAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD3AAAAlAAAAA8AAAAMAAAAewAAAPcAAAD+ZmZm//v7+/7+/v7+/v7+/8XF
|
||||||
|
xf4TExP+AAAA/gAAAMEAAAAnAAAAAAAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAAD+AAAA2wAA
|
||||||
|
AMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAA
|
||||||
|
AMwAAADMAAAAzAAAAMsAAADKAAAAvwAAAJ8AAABaAAAAFQAAAAAAAAAAAAAADAAAAH0AAAD2AAAA/mho
|
||||||
|
aP76+vr+/v7+//7+/v7FxcX+EhIS/wAAAP0AAACNAAAABAAAADYAAAD9CAgI//f39//+/v7/9PT0/wkJ
|
||||||
|
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
|
||||||
|
APoAAADTAAAAvQAAAP53d3f//v7+//7+/v/+/v7/Z2dn/wAAAP8AAAD+AAAAoAAAAAwAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAADUAAAD8CAgI/vf39//+/v7+9/f3/lJSUv9LS0v+S0tL/ktLS/9LS0v+S0tL/0tL
|
||||||
|
S/5LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktL
|
||||||
|
S/9LS0v+S0tL/iwsLP8AAAD+AAAA/gAAAP4UFBT+0dHR//7+/v7+/v7++vr6/1dXV/4AAAD+AAAA9AAA
|
||||||
|
AHAAAAALAAAAAAAAAAAAAAAAAAAAAAAAAC4AAAD4CAgI/vf39//+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+//7+/v7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/vn5+f9ERET+AAAA/gAAAPUAAAD+FxcX/9LS0v7+/v7+/v7+//f3
|
||||||
|
9/5YWFj+AAAA/gAAAPIAAABwAAAACwAAAAAAAAAAAAAAAAAAACAAAADtAwMD/+zs7P/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v9paWn/AAAA/gAAAJMAAADQAAAA/hkZ
|
||||||
|
Gf/R0dH//v7+//7+/v/39/f/WFhY/wAAAP8AAADyAAAAcAAAAAoAAAAAAAAAAAAAAAwAAAC7AAAA/ktL
|
||||||
|
S/+urq7+srKy/rKysv+ysrL+srKy/rKysv+ysrL+srKy/7Kysv6ysrL+srKy/rKysv+ysrL+srKy/rKy
|
||||||
|
sv+ysrL+srKy/rKysv+ysrL+srKy/rKysv+ysrL+srKy/rKysv+ysrL+srKy/o+Pj/8MDAz+AAAA8QAA
|
||||||
|
ADkAAAA0AAAA0AAAAP4YGBj+0NDQ//7+/v7+/v7++fn5/1hYWP4AAAD+AAAA8wAAAG8AAAAKAAAAAAAA
|
||||||
|
AAEAAABMAAAA3QAAAP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP8AAAD3AAAAlQAAAA8AAAABAAAANAAAANEAAAD+GBgY/9HR0f7+/v7+/v7+//f39/5ZWVn+AAAA/gAA
|
||||||
|
AO4AAABUAAAAAQAAAAAAAAAGAAAANAAAAIQAAAC1AAAAxwAAAMsAAADMAAAAzAAAAMwAAADMAAAAzAAA
|
||||||
|
AMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAA
|
||||||
|
AMsAAADKAAAAvwAAAKAAAABbAAAAFQAAAAAAAAAAAAAAAQAAADYAAADRAAAA/hkZGf/R0dH//v7+//7+
|
||||||
|
/v/39/f/VlZW/wAAAP4AAAC0AAAACQAAAAAAAAAAAAAAAAAAAAAAAAACAAAABAAAAAYAAAAHAAAACAAA
|
||||||
|
AAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAA
|
||||||
|
AAgAAAAIAAAACAAAAAcAAAAGAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAA1AAAA0AAA
|
||||||
|
AP4YGBj+0NDQ//7+/v7+/v7+6urq/wICAv4AAADYAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAABAAAANQAAANEAAAD+GBgY/9DQ0P7+/v7+wsLC/wAAAP4AAADPAAAADwAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAADYAAADOAAAA/g4ODv9CQkL/Dg4O/wAAAP0AAACOAAAABQAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAvAAAApwAAAOsAAAD4AAAA6QAA
|
||||||
|
AJ8AAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAA
|
||||||
|
ACUAAAA1AAAAJgAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////wAA/+AAAAf/AAD/wAAAA/8AAP+A
|
||||||
|
AAAB/wAA/4AAAAH/AAD/gAAAAf8AAP+AAAAB/wAA/8AAAAP/AAD/wAAAAf8AAP/4AAAAfwAAwAAAAAA/
|
||||||
|
AACAAAAAAB8AAAAAAAAADwAAAAAAAAAHAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAABAAAAAAAAYAAAAAAA
|
||||||
|
AAHwAAAAAH////AAAAAAf///8AAAAAB////gAAAAAH///8ABAAAAf///gAMAAAB///8AAQAAAH///wAA
|
||||||
|
AAAAf///AAAAAAB///8AAAAAAH///wAAAAAAf///AAAAAAB///+AAQAAAH///4ABAAAAf///AAMAAAB/
|
||||||
|
//8ABwAAAAAAAAAPAAAAAAAAAB8AAAAAAAAADwAAAAAAAAAHAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAAA
|
||||||
|
AACAAAAAYAAAAPAAAAHwAAAA//////gAAAD//////AAAAP/////+AQAA//////+DAAD///////8AACgA
|
||||||
|
AAAgAAAAQAAAAAEAIAAAAAAAgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAMAAAAHAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAA
|
||||||
|
AAgAAAAIAAAABwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAIAAABYAAAAxgAAAOYAAADsAAAA7QAAAO0AAADtAAAA7QAAAO0AAADtAAAA7QAA
|
||||||
|
AO0AAADtAAAA7QAAAOwAAADnAAAAyAAAAFwAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAIQAAAO9UVFT/h4eH/4eHh/+Hh4f/h4eH/4eHh/+Hh4f/h4eH/4eH
|
||||||
|
h/+Hh4f/h4eH/4eHh/+Hh4f/h4eH/4eHh/9XV1f/AAAA8AAAACIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAA/vLy8v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//Pz8/8AAAD+AAAAPAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAADrR0dH/3Z2dv92dnb/dnZ2/3Z2
|
||||||
|
dv92dnb/enp6//v7+//7+/v/eXl5/3Z2dv92dnb/dnZ2/3Z2dv92dnb/SUlJ/wAAAO0AAAAgAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAEsAAAC2AAAA1wAA
|
||||||
|
AN0AAADdAAAA3QAAAO4GBgb++Pj4//j4+P8GBgb+AAAA7gAAAN0AAADdAAAA3gAAAPAAAAD+AAAArQAA
|
||||||
|
ACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAGAAAABwAAAAcAAAAHAAAABwAA
|
||||||
|
AAgAAAAKAAAACwAAAAsAAAALAAAAdQYGBv74+Pj/+Pj4/wYGBv4AAAB1AAAACQAAAAUAAAAWAAAA0g4O
|
||||||
|
Dv4ODg7+AAAA3gAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAABaAAAAxAAAAOQAAADpAAAA6QAA
|
||||||
|
AOkAAADpAAAA6QAAAOkAAADpAAAA6QAAAOkAAAD1BgYG//j4+P/4+Pj/BgYG/gAAAPUAAADjAAAAwwAA
|
||||||
|
AJQCAgL+3d3d/+Xl5f8pKSn+AAAA5QAAADsAAAAAAAAAAAAAAAAAAAAAAAAALgAAAPNUVFT/hoaG/4aG
|
||||||
|
hv+Ghob/hoaG/4aGhv+Ghob/hoaG/4aGhv+Ghob/hoaG/4aGhv+JiYn/+/v7//v7+/+JiYn/hoaG/4aG
|
||||||
|
hv9SUlL/AAAA/gAAAP6ysrL//v7+/+bm5v8pKSn+AAAA5QAAADwAAAAAAAAAAAAAAAAAAABlAwMD/vb2
|
||||||
|
9v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+/+3t7f8BAQH+AAAA4ggICP64uLj//v7+/+bm5v8pKSn+AAAA5QAAADwAAAAAAAAAAAAA
|
||||||
|
AHYFBQX++fn5//v7+/96enr/d3d3/3d3d/93d3f/d3d3/3d3d/93d3f/d3d3/3d3d/93d3f/d3d3/3d3
|
||||||
|
d/93d3f/d3d3/3d3d/93d3f/RUVF/gAAAOoAAAA2AAAAvgkJCf64uLj//v7+/+bm5v8pKSn+AAAA5QAA
|
||||||
|
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
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>39</value>
|
<value>39</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAsAMDAQAAEABABoBgAAtgAAACAgEAABAAQA6AIAAB4HAAAYGBAAAQAEAOgBAAAGCgAAEBAQAAEA
|
||||||
|
BAAoAQAA7gsAADAwAAABAAgAqA4AABYNAAAgIAAAAQAIAKgIAAC+GwAAGBgAAAEACADIBgAAZiQAABAQ
|
||||||
|
AAABAAgAaAUAAC4rAAAwMAAAAQAgAKglAACWMAAAICAAAAEAIACoEAAAPlYAABAQAAABACAAaAQAAOZm
|
||||||
|
AAAoAAAAMAAAAGAAAAABAAQAAAAAAIAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAA
|
||||||
|
AACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAAAAAAAHAAAAAAAAAA
|
||||||
|
AAAAcAcHBxYWFhYWFhYWEAcAAAAAAAAAAAAAAI//////////////+AYAAAAAAAAAAAAAcP//////////
|
||||||
|
/////wEAAAAAAAAAAAAAcBiIiIiIj/iIiIiIhgcAAAAAAAAAAAAAAAAAAAAAf/cAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAHcHAHAAf/cABwBwABAAAAAAAAAAAAAAAAAAAABwf/cHAAAHAABwAAAAAAAAAAAAAAAAAAAAf/cA
|
||||||
|
AAAACHAAAAAAAABwAAAAAAAAAAAAf/cAAABwf/gAcAAAAAcAcHBxYWcWF2F2j/gWcWAAD/+AAAAAAAAI
|
||||||
|
//////////////////EAB//4AHAAAAAP//////////////////cHAH//gAAAAAAP/4iIiIeIiHiHiHiI
|
||||||
|
eHAAAAf/+ABwAAAP/wAAAAAAAAAAAAAAAABwAAB//4ABAAAP/wABYBYWAWFhBwFgcHAAAAAH//gAcAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAf/+AYAAP/wAAAAAAAAAAAAAAAAAAAAAACP/wAAAP/wAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAj/9wcAAP/wAAAAAAAAAAAAAAAAAAABAP//cAAAAP/wAAAAAAAAAAAAAAAAAABgD//3AAAAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAEAj/9wBwAAAP/wAAAAAAAAAAAAAAAAAHAP//cABwAAAP/wAAAAAAAAAAAAAA
|
||||||
|
AAAACP/3AAAAAAAP/wAAAAAAAAAAAAAAAAAAf/9wAHhwcAAP/wAAAAAAAAAAAAAAAAAAf/cAB4+AAAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAeP+AAAAP/wAAAAAAAAAAAAAAAAAAAAAHj/gAcAAP/wAAAAAAAAAAAAAA
|
||||||
|
AAAABwB//4AHAAAP/wAAAAAAAAAAAAAAAAAAAAf/+ABwAAAP/wAAAAAAAAAAAAAAAAAAAH//gAEAAAAP
|
||||||
|
/wAAAAAAAAAAAAAAAAAAB//4AHAAAAAP/wBwAAAAAAAAAAAAAAAAf/+AAAAAAAAP/wAAAAAAAAAAAAAA
|
||||||
|
AABwf/9wBwAAAAAP/3B3FncWdxZxZxZxZwAACP/3AAAAAAAP//////////////////cAAI/4cAAAAAAP
|
||||||
|
//////////////////cHAA//9wAAAAcHeIh4h4h4h4iIeIh4iHAABwCP/3AAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AABwAAAP/4cAAAAHcBYBYWBwFgFhYBYWFnAAAAcAj/9wcAAAAAAAAAAAAAAAAAAAAAAAAAAAD/+AAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAHAI+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAcAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
||||||
|
/////wAA////////AAD/4AAAB/8AAP/AAAAD/wAA/8AAAAP/AAD/wAAAA/8AAP/AAAAD/wAA/+AAAAf/
|
||||||
|
AAD/8AAAB/8AAP//8A+B/wAA///wD4D/AADAAAAAAH8AAIAAAAAAPwAAgAAAAAAfAACAAAAAAA8AAIAA
|
||||||
|
AABgBwAAgAAAAHADAACAAAAB+AEAAID////8AQAAgP////wBAACA////+AEAAID////wAwAAgP///+AH
|
||||||
|
AACA////wAcAAID///+ABwAAgP///4ADAACA////gAEAAID///+AAQAAgP///4ABAACA////wAEAAID/
|
||||||
|
///gAwAAgP///+AHAACA////wA8AAID///+AHwAAgH///4A/AACAAAAAAD8AAIAAAAAAPwAAgAAAAAAf
|
||||||
|
AACAAAAAAA8AAIAAAABgBwAAwAAAAHADAADgAAAB+AEAAP/////8AQAA//////4BAAD//////wEAAP//
|
||||||
|
////gwAA////////AAD///////8AACgAAAAgAAAAQAAAAAEABAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
|
||||||
|
AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAAeHh3h3h3h3cAAAAAAAAAAP//
|
||||||
|
////////AAAAAAAAAAB3d3d/93d3cAAAAAAAAAAAAAAAD/AAAABwAAAAAAAAAAAAAA/wAABwAAAAAAAA
|
||||||
|
AAAHAAAP8AB3CPBwAAAAeHh4d3h4f/d3cAj/AAAAAP////////////AAj/AAAAD/d3d3d3d3d3cABwj/
|
||||||
|
cAAA/wAAAAAAAAAAcAAAj4BwAP8AAAAAAAAAAAAABwj/AAD/AAAAAAAAAAAAAAAP+AAA/wAAAAAAAAAA
|
||||||
|
AAAHj4BwAP8AAAAAAAAAAAAAePgAAAD/AAAAAAAAAAAAcP+ABwAA/wAAAAAAAAAAAAj4AHAAAP8AAAAA
|
||||||
|
AAAAAAAIgAf/AAD/AAAAAAAAAAAAcAB/9wAA/wAAAAAAAAAAAAcHj3AAAP8AAAAAAAAAAAAAf/cAAAD/
|
||||||
|
AAAAAAAAAAAAB/9wAAAA/wAAAAAABwAHBw/3AAAAAP93eHh4eHd4d3AH/3AAAAD////////////wcH/3
|
||||||
|
AAAAd3d3d3d3d3d3AAcH/3AAAAAAAAAAAAAAAHAAcH/3AAAAAAAAAAAAAAAAAAcHjwAAAAAAAAAAAAAA
|
||||||
|
AAAAcHcAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAAAAAAAAD//////wAA//4AAH/+AAB//gAAf/8A
|
||||||
|
AH///Dw/wAAAH4AAAA+AAAAHgAACA4AABwGH//+Bh///gYf//wGH//4Dh//8A4f//AGH//wBh//8AYf/
|
||||||
|
/gOH//4Hh//8D4AAAA+AAAAPgAAAB4AAAgPAAAcB////gf///8H////z/////ygAAAAYAAAAMAAAAAEA
|
||||||
|
BAAAAAAAIAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDA
|
||||||
|
wAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8AAAAAAAAAAAAAAAAAAAAHAAAWAAFgcAAAAAAA////
|
||||||
|
////AAAAAAAHB3Foh3BwcAAAAAAAAAAIgABwAAAAAHBwcHcIgHcIgAAAAIh4iHeP+HcH+AAAd/j4iPiI
|
||||||
|
iIcAf4AAd/AAAAAWAQcAB/gAd/AAAAAAAAAAAH9wd/AAAAAAAAAAcPgAd4AAAAAAAAAHD4CAd/AAAAAA
|
||||||
|
AAAA+ABwd/AAAAAAAAB4gHgQd4AAAAAAAAAAAI9gd/AAAAAAAAAHD/Bwd/AAAAAAAAAA/2EAd4BxZ3Fn
|
||||||
|
cWd48QAAd/h4d4eHeIcA/wAAAYj4+I+PiIdxb4AABwAAAAAABgEAcP8AAAAAAAAAAAAABw9wAAAAAAAA
|
||||||
|
AAAAAHAAAAAAAAAAAAAAAAAA////APgAHwD4AB8A+AAfAP/DHwDAAA8AgAAHAAAAAwAAAMEAD//hAA//
|
||||||
|
wQAP/4EAD/+BAA//AQAP/4EAD/+BAA//gwAAAAcAAAAHAIAAAwCAAMEA///hAP//8QD///8AKAAAABAA
|
||||||
|
AAAgAAAAAQAEAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICA
|
||||||
|
AACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAHiIiIiHAAAAAHCHcH
|
||||||
|
AAAAAAB3dwBwAHiIiI+IcPcADwdwcHBwD3B/cAAAAAB3hw9wAAAAAHhweHAAAAAHgAAPAAAAAAB3939w
|
||||||
|
AAAAB3gADwAAAAAHgAB/iIiIiHD3AAcHcHcHAHhwAAAAAAAAAIcAAAAAAAAAAP//AADgBwAA8A8AAPwn
|
||||||
|
AAAAAwAAABEAAB/wAAAf8QAAH+EAAB/gAAAf4QAAH+MAAAADAACAEQAA//gAAP//AAAoAAAAMAAAAGAA
|
||||||
|
AAABAAgAAAAAAAAJAAAAAAAAAAAAAAABAAAAAQAAAAAAAAUFBQAICAgADAwMABEREQAVFRUAGBgYAB0d
|
||||||
|
HQAgICAAJSUlACsrKwAtLS0AMjIyADU1NQA5OTkAPj4+AEFBQQBFRUUASkpKAExMTABRUVEAVlZWAFhY
|
||||||
|
WABdXV0AYGBgAGZmZgBpaWkAbGxsAHFxcQB1dXUAenp6AH5+fgCPj48AmJiYAKSkpACtra0AsbGxALW1
|
||||||
|
tQC7u7sAwcHBAMXFxQDJyckAzMzMANDQ0ADZ2dkA6urqAO3t7QD19fUA+fn5AP7+/gAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAGAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBcAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAfAAQRExMTExMTExMTExMTExMTExMTExMTBAAfAAAAAAAAAAAAAAAAAAAAAAAAAAAPACf/
|
||||||
|
////////////////////////////JwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAMAC7/////////////////
|
||||||
|
////////////LgALAAAAAAAAAAAAAAAAAAAAAAAAAAAXABMjJCQkJCQkJCQs//8sJCQkJCQkJCQjFAAU
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAAAAAAAAAAAf//8fAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAB8TDwwMDAwMBAAf//8fAAQMDAwMDAcAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAFwAf//8fABcAAAAAABcAAAAAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAf//8f
|
||||||
|
AAsAAAAAAAQEISEEAA8AAAAAAAAAAAAAGAQAAAAAAAAAAAAAAAAAAAAAAAAf//8fAAAAAAALEQAc//8n
|
||||||
|
BAAPAAAAAAAAAAAcAAQRExMTExMTExMTExMTExMTExMi//8iExMTEwsAAAAR////KQQADwAAAAAAAAAH
|
||||||
|
ACf///////////////////////////////////8RAAAAGP///ycEAA8AAAAAAAAEAP//////////////
|
||||||
|
//////////////////////8YAA8AABwv//8nBAAPAAAAAAAABC///yQkJCQkJCQkJCQkJCQkJCQkJCQk
|
||||||
|
JCQkJCAEBAAABAAY////KQQADwAAAAAAAC//LwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQA
|
||||||
|
GP///ycEAA8AAAAABC//LwQACQwMDAwMDAwMDAwMDAwMDAwMDAwMERgAAAAAAAAEABj///8nBAAdAAAA
|
||||||
|
AP//LgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY////JgAMAAAABC//LwAEAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAELP//LgAJAAAAAP//LwQAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAPAAQp////GAARAAAABC//LgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwA
|
||||||
|
BCn///8YAAQAAAAAAP//LwQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAEJ////xgABAAAAAAA
|
||||||
|
BC//LgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAQn////GAAEHwAAAAAAAP//LwQAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAABMABCn///8YAAAEHAAAAAAABC//LgQEAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAQEJ////xgAAAAAAAcAAAAAAP//LwAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAd////
|
||||||
|
GAAAABQkFAATAAAABC//LgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT/y8YAAAAGP//LgAJAAAA
|
||||||
|
AP//LwAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACwsAAAAY////JwAMAAAABC//LwQAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAABj///8pBAAcAAAAAP//LgAEAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAFwAAGP///ycHAA8AAAAABC//LwQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAY
|
||||||
|
////JwcADAAAAAAAAP//LgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABf///8pBAAMAAAAAAAA
|
||||||
|
BC//LwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAF////ycHAA8AAAAAAAAAAP//LwAEHQAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAR////KQQACwAAAAAAAAAABC//LwQAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAALEQAd////GAAAGAAAAAAAAAAAAP//LxMTExMTExMTExMTExMTExMTExMTExMTEwsAAAAEK///
|
||||||
|
/xQABAAAAAAAAAAEAC////////////////////////////////////8RAAQABCv///8UAAQAAAAAAAAE
|
||||||
|
AC7///////////////////////////////////8YABwLAAcp//8vFwAEAAAAAAARABMjIyQjJCMkIyQj
|
||||||
|
JCMkIyQjJCMkIyQjJCMkIyAEBAAADAAHKf///xQABAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAHAAAAAsAByv//y8XAAQAAAAAAB8TDwwMDAwMDAwMDAwMDAwMDAwMDAwMDAwPDxgAAAAAAAAL
|
||||||
|
AAcp//8vFAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAHKf//LgALAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAByn/JwALAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAQRBAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAFwQABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
||||||
|
/////wAA////////AAD/4AAAB/8AAP/AAAAD/wAA/8AAAAP/AAD/wAAAA/8AAP/AAAAD/wAA/+AAAAf/
|
||||||
|
AAD/8AAAB/8AAP//8A+B/wAA///wD4D/AADAAAAAAH8AAIAAAAAAPwAAgAAAAAAfAACAAAAAAA8AAIAA
|
||||||
|
AABgBwAAgAAAAHADAACAAAAB+AEAAID////8AQAAgP////wBAACA////+AEAAID////wAwAAgP///+AH
|
||||||
|
AACA////wAcAAID///+ABwAAgP///4ADAACA////gAEAAID///+AAQAAgP///4ABAACA////wAEAAID/
|
||||||
|
///gAwAAgP///+AHAACA////wA8AAID///+AHwAAgH///4A/AACAAAAAAD8AAIAAAAAAPwAAgAAAAAAf
|
||||||
|
AACAAAAAAA8AAIAAAABgBwAAwAAAAHADAADgAAAB+AEAAP/////8AQAA//////4BAAD//////wEAAP//
|
||||||
|
////gwAA////////AAD///////8AACgAAAAgAAAAQAAAAAEACAAAAAAAAAQAAAAAAAAAAAAAAAEAAAAB
|
||||||
|
AAAAAAAABQUFAAkJCQANDQ0AERERABUVFQAZGRkAHBwcACIiIgAlJSUAKCgoAC0tLQA3NzcAOTk5AD09
|
||||||
|
PQBBQUEARUVFAElJSQBMTEwAUlJSAFVVVQBiYmIAZWVlAGlpaQBsbGwAcXFxAHZ2dgB5eXkAfX19AIaG
|
||||||
|
hgCJiYkApaWlALKysgC4uLgAv7+/AN7e3gDl5eUA7e3tAPHx8QD29vYA+fn5AP7+/gAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0GBQUFBQUFBQUFBQUF
|
||||||
|
BQwAAAAAAAAAAAAAAAAAAAAFEx0dHR0dHR0dHR0dHR0dEwUAAAAAAAAAAAAAAAAAAAAmKSkpKSkpKSkp
|
||||||
|
KSkpKSkmAAAAAAAAAAAAAAAAAAAABREaGhoaGhopJhsaGhoaGhEFAAAAAAAAAAAAAAAAAAAAEQoICAgE
|
||||||
|
ACkpAAUGCAgEABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSYAAAAAAAoFBAYAAAAAAAAAAA0GBQUFBQUF
|
||||||
|
BQUFBAApKQAEBg0YACMkCgYAAAAAAAAEEx4dHR0dHR0dHR0dHikmHh4eEwAAICkkCgYAAAAAAAAmKSkp
|
||||||
|
KSkpKSkpKSkpKSkpKSkkAAgEICkkCgYAAAAAACkpGxoaGhoaGhoaGhoaGhoaGxEGAA0EICkkCgYAAAAA
|
||||||
|
KSYEBAgICAgICAgICAgICAgKEQAAABEAISkkCggAAAApJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAoEISkk
|
||||||
|
AAAAACkpAAAAAAAAAAAAAAAAAAAAAAAAAAAABQokKSAAAAAAKSYEAAAAAAAAAAAAAAAAAAAAAAAAAAYK
|
||||||
|
JCkhBBEAAAApJgAAAAAAAAAAAAAAAAAAAAAAAAAGCiQpIQANAAAAACkpAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
CAokKSEEAA0AAAAAKSYEAAAAAAAAAAAAAAAAAAAAAAAAJCkhAAAREQUAAAApJgAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAfHwQAGCkmAAAAACkpAAAAAAAAAAAAAAAAAAAAAAAAFQQAABUpKRgEAAAAKSYEAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAFQAYKSkYAAAAAAApJgAAAAAAAAAAAAAAAAAAAAAAAAAAGCkpGAAAAAAAACkpAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAABBUpKRgAAAAAAAAAKSYEAAYFBQUFBQUFBQUFBQUGDRUAJikfAA0AAAAAAAApKR0d
|
||||||
|
HR0dHR0dHR0dHR0dHR4TAAAaKSkVBAAAAAAAACYpKSkpKSkpKSkpKSkpKSkpKSQAEQAaKSkVAAAAAAAF
|
||||||
|
ERoaGhoaGhoaGhoaGhoaGhobEQYAGwAaKSkVAAAAAAARCggICAgICAgICAgICAgICAoRAAAAGwAaKSkV
|
||||||
|
BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGwAaKSQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
GwAVEwUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABERAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAP//////AAD//gAAf/4AAH/+AAB//wAAf//8PD/AAAAfgAAAD4AAAAeAAAIDgAAHAYf/
|
||||||
|
/4GH//+Bh///AYf//gOH//wDh//8AYf//AGH//wBh//+A4f//geH//wPgAAAD4AAAA+AAAAHgAACA8AA
|
||||||
|
BwH///+B////wf////P/////KAAAABgAAAAwAAAAAQAIAAAAAABAAgAAAAAAAAAAAAAAAQAAAAEAAAAA
|
||||||
|
AAAEBAQACQkJAAwMDAASEhIAFhYWABkZGQAcHBwAISEhACUlJQAzMzMANDQ0ADo6OgA+Pj4AQUFBAEpK
|
||||||
|
SgBOTk4AUVFRAFVVVQBYWFgAZWVlAGlpaQBsbGwAcXFxAHV1dQB/f38AgICAAIaGhgCUlJQAm5ubAKOj
|
||||||
|
owCkpKQAra2tAL6+vgDAwMAA0dHRANXV1QDY2NgA6enpAOzs7ADx8fEA+fn5AP7+/gAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcGCQkJCQkJCQkJCQYWAAAAAAAAAAAAAAYnKioq
|
||||||
|
KioqKioqKicGAAAAAAAAAAAAABANExMTEyQkExMTEw0QAAAAAAAAAAAAAAAAAAAABiIiBgAAFAAKAAAA
|
||||||
|
AAAAABEQEA8QEA8QAiIiAhAXDxsdBAAAAAAACh4eHh4eHh4eHiYmHh4TABYqHgQAAAAWGSolJCQkJSQl
|
||||||
|
JSQkJSUbDQkXKh4EAAAUGSoABgYGBgYGBgYGBgYPAAAJFyofBAAUGSkCAAAAAAAAAAAAAAAAAAAAAB0q
|
||||||
|
FgAUGSoAAAAAAAAAAAAAAAAAAAARDSckBgAUGSoCAAAAAAAAAAAAAAAAABENJyUGGwAUGSkCAAAAAAAA
|
||||||
|
AAAAAAAAAA0nJAYAEQAUGSoAAAAAAAAAAAAAAAAAER8lBgYiEQAUGSoCAAAAAAAAAAAAAAAAAAYCBiQp
|
||||||
|
CgAUGSkCAAAAAAAAAAAAAAAAABcGJCkKEQAUGSoAAAAAAAAAAAAAAAAAAAYkJw0QAAAUGSoADxAPEBAP
|
||||||
|
EBAPEBAXDR8qEQkAAAAWGSoeHh4eHh4eHh4eHh4TAA8pIwQAAAAAECQlJCQkJCUkJCQlJCUbEA8NKSMG
|
||||||
|
AAAAEwkGBgYGBgYGBgYGBgYPAAAPDSkjBAAAAAAAAAAAAAAAAAAAAAAAAAAADw0pFgAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAABEGBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A+AAfAPgAHwD4AB8A/8MfAMAA
|
||||||
|
DwCAAAcAAAADAAAAwQAP/+EAD//BAA//gQAP/4EAD/8BAA//gQAP/4EAD/+DAAAABwAAAAcAgAADAIAA
|
||||||
|
wQD//+EA///xAP///wAoAAAAEAAAACAAAAABAAgAAAAAAAABAAAAAAAAAAAAAAABAAAAAQAAAAAAACkp
|
||||||
|
KQAsLCwAMjIyADU1NQA5OTkAPj4+AEBAQABEREQASEhIAE5OTgBRUVEAWVlZAF5eXgBiYmIAZ2dnAGho
|
||||||
|
aABsbGwAcnJyAHZ2dgB7e3sAf39/AJycnACmpqYAs7OzALS0tADCwsIA1tbWANnZ2QDh4eEA5+fnAOjo
|
||||||
|
6AD4+PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAARGBoaGhoaGhgRAAAAAAAAAAkJCRYWCQkDAAAAAAAAAAAAAA8VFREACQoA
|
||||||
|
AAANGBoaGhoaHR0aCgMdCwAACSAJCQkKCQkJCgoACR0LAAkgCgAAAAAAAAAAABUTHQ8JIAoAAAAAAAAA
|
||||||
|
AAALHwYACSAKAAAAAAAAAAAKHQMDAAkgCgAAAAAAAAAACQETGw8JIAoAAAAAAAAAABURHQMACSABAAAA
|
||||||
|
AAAAAAANHQEAAAogGhoaGhoaGhoKAR0RAAAACQkJCgkJCgkKCgAGHREAAAAAAAAAAAAAAAAAAAMXEQAA
|
||||||
|
AAAAAAAAAAAAAAAAAAD//wAA4AcAAPAPAAD8JwAAAAMAAAARAAAf8AAAH/EAAB/hAAAf4AAAH+EAAB/j
|
||||||
|
AAAAAwAAgBEAAP/4AAD//wAAKAAAADAAAABgAAAAAQAgAAAAAACAJQAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAA
|
||||||
|
AC8AAABWAAAAawAAAHAAAAByAAAAcgAAAHIAAAByAAAAcgAAAHIAAAByAAAAcgAAAHIAAAByAAAAcgAA
|
||||||
|
AHIAAAByAAAAcgAAAHIAAAByAAAAcAAAAGsAAABZAAAAMQAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAgAAAAngAAAO8AAAD9AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD9AAAA8AAAAKMAAAAjAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAMAAACCAAAA/A4ODv9HR0f/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tL
|
||||||
|
S/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9HR0f/EBAQ/wAA
|
||||||
|
AP0AAACGAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAADEAAAA/8PDw/7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+//7+
|
||||||
|
/v7+/v7+yMjI/wAAAP4AAADFAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADNAAAA/+7u7v7+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+//7+/v7+/v7+7u7u/wAAAP4AAADOAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAClAAAA/0tL
|
||||||
|
S/+tra3/sbGx/7Gxsf+xsbH/sbGx/7Gxsf+xsbH/sbGx/7Gxsf/Y2Nj//v7+///////Y2Nj/sbGx/7Gx
|
||||||
|
sf+xsbH/sbGx/7Gxsf+xsbH/sbGx/7Gxsf+urq7/UFBQ/wAAAP4AAACpAAAABgAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAABEAAAA2wAAAP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP9/f3/+/v7+/v7+
|
||||||
|
/v9/f3/+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD+AAAA/gAAAOIAAABKAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAGAAAAMwAAAIQAAACzAAAAxwAAAMwAAADMAAAAzAAAAMwAAADNAAAA8wAA
|
||||||
|
AP5/f3/+/v7+/v7+/v9/f3/+AAAA/gAAAPMAAADNAAAAzAAAAMwAAADMAAAAzwAAAOEAAAD7AAAA/QAA
|
||||||
|
AMsAAABrAAAAGwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABAAAAAQAAAAEAAAABAAA
|
||||||
|
AAQAAAAGAAAAowAAAP9/f3///v7+//////9/f3//AAAA/gAAAKMAAAAGAAAABAAAAAQAAAAEAAAAGAAA
|
||||||
|
AKUAAAD8AAAA/wAAAP8AAAD7AAAAuQAAAC0AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAADQAAAC0AAABTAAAAZAAAAGsAAABrAAAAawAAAGsAAABrAAAAawAAAGsAAABrAAAAawAA
|
||||||
|
AGsAAABrAAAAawAAAGsAAABsAAAA0gAAAP5/f3/+/v7+/v7+/v9/f3/+AAAA/gAAANEAAABqAAAAXQAA
|
||||||
|
AD8AAAAaAAAARAAAAPQPDw/+mZmZ/5iYmP4RERH+AAAA/gAAAMQAAAAuAAAAAQAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAlAAAAnwAAAO8AAAD9AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP9/f3///v7+//7+/v9/f3//AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAPoAAADTAAAAugAAAP5wcHD//v7+//7+/v/Gxsb/ERER/wAAAP4AAADEAAAALQAA
|
||||||
|
AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAACUAAAA/Q0NDf9GRkb+S0tL/ktLS/9LS0v+S0tL/ktL
|
||||||
|
S/9LS0v+S0tL/0tLS/5LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/+lpaX+/v7+/v//
|
||||||
|
//+kpKT+S0tL/ktLS/9LS0v+S0tL/iwsLP8AAAD+AAAA/gAAAP5GRkb++/v7//7+/v7+/v7+yMjI/xER
|
||||||
|
Ef4AAAD+AAAAxgAAAC0AAAABAAAAAAAAAAAAAAAAAAAAAAAAABcAAADfAAAA/sTExP/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+//7+/v7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/vn5+f9ERET+AAAA/gAAAP4AAAD+ZWVl//z8
|
||||||
|
/P7+/v7+/v7+/8bGxv4SEhL+AAAA/gAAAMQAAAAuAAAAAQAAAAAAAAAAAAAAAAAAACkAAAD2BwcH/vf3
|
||||||
|
9//+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+//7+/v7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v9oaGj+AAAA/gAA
|
||||||
|
AMgAAAD2AAAA/mdnZ/77+/v+/v7+//7+/v7Gxsb+EhIS/wAAAP4AAADEAAAALgAAAAEAAAAAAAAAAAAA
|
||||||
|
ADMAAAD7CAgI//f39//+/v7/+/v7/7W1tf+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Ky
|
||||||
|
sv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/4+P
|
||||||
|
j/8MDAz/AAAA8QAAAEgAAAB7AAAA9gAAAP9mZmb/+vr6///////+/v7/yMjI/xISEv8AAAD+AAAAxQAA
|
||||||
|
AC4AAAABAAAAAAAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD3AAAAlAAAAA8AAAAMAAAAewAAAPcAAAD+ZmZm//v7+/7+/v7+/v7+/8XF
|
||||||
|
xf4TExP+AAAA/gAAAMEAAAAnAAAAAAAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAAD+AAAA2wAA
|
||||||
|
AMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAA
|
||||||
|
AMwAAADMAAAAzAAAAMsAAADKAAAAvwAAAJ8AAABaAAAAFQAAAAAAAAAAAAAADAAAAH0AAAD2AAAA/mho
|
||||||
|
aP76+vr+/v7+//7+/v7FxcX+EhIS/wAAAP0AAACNAAAABAAAADYAAAD9CAgI//f39//+/v7/9PT0/wkJ
|
||||||
|
Cf8AAAD2AAAALwAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAA
|
||||||
|
AAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAcAAAAGAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAwAAAB/AAAA+gAAAP9nZ2f/+vr6///////+/v7/u7u7/wAAAP8AAADOAAAADgAAADYAAAD9CAgI/vf3
|
||||||
|
9//+/v7+9PT0/gkJCf8AAADzAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAEAAABCAAAA8AAAAP4TExP+29vb//7+/v7+/v7+7e3t/wICAv4AAADaAAAAEQAA
|
||||||
|
ADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAADzAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAADGAAAA/hISEv7FxcX+/v7+//7+/v77+/v+ZGRk/wAA
|
||||||
|
AP4AAAC5AAAACgAAADYAAAD9CAgI//f39//+/v7/9PT0/wkJCf8AAAD0AAAAJAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKwAAAMgAAAD+ERER/8jIyP/+/v7//v7+//r6
|
||||||
|
+v9nZ2f/AAAA/wAAAPIAAABaAAAAAQAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAADzAAAAJAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAxgAAAP4SEhL+xsbG//7+
|
||||||
|
/v7+/v7++/v7/2dnZ/4AAAD+AAAA9wAAAHsAAAAMAAAAAAAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJ
|
||||||
|
Cf8AAADzAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACoAAADGAAAA/hER
|
||||||
|
Ef7Gxsb+/v7+//7+/v77+/v+aGho/wAAAP4AAAD4AAAAgAAAAA4AAAAAAAAAAAAAADYAAAD9CAgI//f3
|
||||||
|
9//+/v7/9PT0/wkJCf8AAAD0AAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEwAA
|
||||||
|
ALEAAAD+ERER/8nJyf/+/v7//v7+//r6+v9mZmb/AAAA/wAAAP8AAADvAAAAkgAAADkAAAAHAAAAAAAA
|
||||||
|
ADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAADzAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAPgAAAPYQEBD+xsbG//7+/v7+/v7++/v7/2ZmZv4AAAD+AAAA/gAAAP4AAAD+AAAA/gAA
|
||||||
|
AOEAAABSAAAAAQAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAADzAAAAJAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAP50dHT+/v7+//7+/v77+/v+Z2dn/wAAAP4AAAD+AAAA/1NT
|
||||||
|
U/6zs7P+UlJS/wAAAP4AAAC1AAAACgAAADYAAAD9CAgI//f39//+/v7/9PT0/wkJCf8AAAD0AAAAJAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVgAAAP5MTEz/+vr6//n5+f9lZWX/AAAA/wAA
|
||||||
|
AP8AAAD/X19f//r6+v/+/v7/7e3t/wMDA/8AAADaAAAAEQAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJ
|
||||||
|
Cf8AAADzAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAN8AAAD+Li4u/ysr
|
||||||
|
K/4AAAD+AAAA/gAAAP5gYGD++Pj4//7+/v7+/v7+wMDA/wAAAP4AAADQAAAADwAAADYAAAD9CAgI/vf3
|
||||||
|
9//+/v7+9PT0/gkJCf8AAADzAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAA
|
||||||
|
AFwAAADQAAAA+QAAAP4AAAD+AAAA/15eXv74+Pj+/v7+//7+/v7Ly8v+FhYW/wAAAP4AAACSAAAABQAA
|
||||||
|
ADYAAAD9CAgI//f39//+/v7/9PT0/wkJCf8AAAD0AAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAMAAAAnAAAAqAAAAP8AAAD/Xl5e//r6+v/+/v7//v7+/8vLy/8VFRX/AAAA/gAA
|
||||||
|
AMUAAAApAAAAAAAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJCf8AAADzAAAAJAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAB1AAAA9AAAAP5fX1/++Pj4//7+/v7+/v7+y8vL/xUV
|
||||||
|
Ff4AAAD+AAAAygAAADIAAAABAAAAAAAAADYAAAD9CAgI//f39//+/v7/9PT0/wkJCf8AAADzAAAAJAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAGoAAADzAAAA/15eXv/5+fn//v7+//7+
|
||||||
|
/v/MzMz/FhYW/wAAAP4AAADKAAAAMwAAAAEAAAAAAAAAAAAAADYAAAD9CAgI/vf39//+/v7+9PT0/gkJ
|
||||||
|
Cf8AAAD0AAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgAAAOEAAAD+XV1d//v7
|
||||||
|
+/7+/v7+/v7+/8vLy/4VFRX+AAAA/gAAAMkAAAAyAAAAAQAAAAAAAAAAAAAAAAAAADYAAAD9CAgI/vf3
|
||||||
|
9//+/v7+9PT0/gkJCf8AAAD7AAAAjAAAAGsAAABrAAAAawAAAGsAAABrAAAAawAAAGsAAABrAAAAawAA
|
||||||
|
AGsAAABrAAAAawAAAGsAAABrAAAAawAAAGsAAABrAAAAawAAAGsAAABpAAAAXQAAAEAAAAAbAAAAXAAA
|
||||||
|
AP1DQ0P++fn5//7+/v7+/v7+zMzM/xQUFP4AAAD+AAAA0gAAADIAAAABAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
ADYAAAD9CAgI//f39//+/v7/9PT0/wkJCf8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
APoAAADTAAAAvQAAAP53d3f//v7+//7+/v/+/v7/Z2dn/wAAAP8AAAD+AAAAoAAAAAwAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAADUAAAD8CAgI/vf39//+/v7+9/f3/lJSUv9LS0v+S0tL/ktLS/9LS0v+S0tL/0tL
|
||||||
|
S/5LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktLS/9LS0v+S0tL/ktL
|
||||||
|
S/9LS0v+S0tL/iwsLP8AAAD+AAAA/gAAAP4UFBT+0dHR//7+/v7+/v7++vr6/1dXV/4AAAD+AAAA9AAA
|
||||||
|
AHAAAAALAAAAAAAAAAAAAAAAAAAAAAAAAC4AAAD4CAgI/vf39//+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+//7+/v7+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+/v/+/v7+/v7+/v7+
|
||||||
|
/v/+/v7+/v7+/v7+/v/+/v7+/v7+/vn5+f9ERET+AAAA/gAAAPUAAAD+FxcX/9LS0v7+/v7+/v7+//f3
|
||||||
|
9/5YWFj+AAAA/gAAAPIAAABwAAAACwAAAAAAAAAAAAAAAAAAACAAAADtAwMD/+zs7P/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v9paWn/AAAA/gAAAJMAAADQAAAA/hkZ
|
||||||
|
Gf/R0dH//v7+//7+/v/39/f/WFhY/wAAAP8AAADyAAAAcAAAAAoAAAAAAAAAAAAAAAwAAAC7AAAA/ktL
|
||||||
|
S/+urq7+srKy/rKysv+ysrL+srKy/rKysv+ysrL+srKy/7Kysv6ysrL+srKy/rKysv+ysrL+srKy/rKy
|
||||||
|
sv+ysrL+srKy/rKysv+ysrL+srKy/rKysv+ysrL+srKy/rKysv+ysrL+srKy/o+Pj/8MDAz+AAAA8QAA
|
||||||
|
ADkAAAA0AAAA0AAAAP4YGBj+0NDQ//7+/v7+/v7++fn5/1hYWP4AAAD+AAAA8wAAAG8AAAAKAAAAAAAA
|
||||||
|
AAEAAABMAAAA3QAAAP4AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP4AAAD+AAAA/gAA
|
||||||
|
AP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAAAP8AAAD+AAAA/gAA
|
||||||
|
AP8AAAD3AAAAlQAAAA8AAAABAAAANAAAANEAAAD+GBgY/9HR0f7+/v7+/v7+//f39/5ZWVn+AAAA/gAA
|
||||||
|
AO4AAABUAAAAAQAAAAAAAAAGAAAANAAAAIQAAAC1AAAAxwAAAMsAAADMAAAAzAAAAMwAAADMAAAAzAAA
|
||||||
|
AMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAAAMwAAADMAAAAzAAA
|
||||||
|
AMsAAADKAAAAvwAAAKAAAABbAAAAFQAAAAAAAAAAAAAAAQAAADYAAADRAAAA/hkZGf/R0dH//v7+//7+
|
||||||
|
/v/39/f/VlZW/wAAAP4AAAC0AAAACQAAAAAAAAAAAAAAAAAAAAAAAAACAAAABAAAAAYAAAAHAAAACAAA
|
||||||
|
AAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAA
|
||||||
|
AAgAAAAIAAAACAAAAAcAAAAGAAAAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAA1AAAA0AAA
|
||||||
|
AP4YGBj+0NDQ//7+/v7+/v7+6urq/wICAv4AAADYAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAABAAAANQAAANEAAAD+GBgY/9DQ0P7+/v7+wsLC/wAAAP4AAADPAAAADwAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAADYAAADOAAAA/g4ODv9CQkL/Dg4O/wAAAP0AAACOAAAABQAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAvAAAApwAAAOsAAAD4AAAA6QAA
|
||||||
|
AJ8AAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAA
|
||||||
|
ACUAAAA1AAAAJgAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////wAA/+AAAAf/AAD/wAAAA/8AAP+A
|
||||||
|
AAAB/wAA/4AAAAH/AAD/gAAAAf8AAP+AAAAB/wAA/8AAAAP/AAD/wAAAAf8AAP/4AAAAfwAAwAAAAAA/
|
||||||
|
AACAAAAAAB8AAAAAAAAADwAAAAAAAAAHAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAABAAAAAAAAYAAAAAAA
|
||||||
|
AAHwAAAAAH////AAAAAAf///8AAAAAB////gAAAAAH///8ABAAAAf///gAMAAAB///8AAQAAAH///wAA
|
||||||
|
AAAAf///AAAAAAB///8AAAAAAH///wAAAAAAf///AAAAAAB///+AAQAAAH///4ABAAAAf///AAMAAAB/
|
||||||
|
//8ABwAAAAAAAAAPAAAAAAAAAB8AAAAAAAAADwAAAAAAAAAHAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAAA
|
||||||
|
AACAAAAAYAAAAPAAAAHwAAAA//////gAAAD//////AAAAP/////+AQAA//////+DAAD///////8AACgA
|
||||||
|
AAAgAAAAQAAAAAEAIAAAAAAAgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAMAAAAHAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAA
|
||||||
|
AAgAAAAIAAAABwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAIAAABYAAAAxgAAAOYAAADsAAAA7QAAAO0AAADtAAAA7QAAAO0AAADtAAAA7QAA
|
||||||
|
AO0AAADtAAAA7QAAAOwAAADnAAAAyAAAAFwAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAIQAAAO9UVFT/h4eH/4eHh/+Hh4f/h4eH/4eHh/+Hh4f/h4eH/4eH
|
||||||
|
h/+Hh4f/h4eH/4eHh/+Hh4f/h4eH/4eHh/9XV1f/AAAA8AAAACIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAA/vLy8v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//Pz8/8AAAD+AAAAPAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAADrR0dH/3Z2dv92dnb/dnZ2/3Z2
|
||||||
|
dv92dnb/enp6//v7+//7+/v/eXl5/3Z2dv92dnb/dnZ2/3Z2dv92dnb/SUlJ/wAAAO0AAAAgAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAEsAAAC2AAAA1wAA
|
||||||
|
AN0AAADdAAAA3QAAAO4GBgb++Pj4//j4+P8GBgb+AAAA7gAAAN0AAADdAAAA3gAAAPAAAAD+AAAArQAA
|
||||||
|
ACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAGAAAABwAAAAcAAAAHAAAABwAA
|
||||||
|
AAgAAAAKAAAACwAAAAsAAAALAAAAdQYGBv74+Pj/+Pj4/wYGBv4AAAB1AAAACQAAAAUAAAAWAAAA0g4O
|
||||||
|
Dv4ODg7+AAAA3gAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAABaAAAAxAAAAOQAAADpAAAA6QAA
|
||||||
|
AOkAAADpAAAA6QAAAOkAAADpAAAA6QAAAOkAAAD1BgYG//j4+P/4+Pj/BgYG/gAAAPUAAADjAAAAwwAA
|
||||||
|
AJQCAgL+3d3d/+Xl5f8pKSn+AAAA5QAAADsAAAAAAAAAAAAAAAAAAAAAAAAALgAAAPNUVFT/hoaG/4aG
|
||||||
|
hv+Ghob/hoaG/4aGhv+Ghob/hoaG/4aGhv+Ghob/hoaG/4aGhv+JiYn/+/v7//v7+/+JiYn/hoaG/4aG
|
||||||
|
hv9SUlL/AAAA/gAAAP6ysrL//v7+/+bm5v8pKSn+AAAA5QAAADwAAAAAAAAAAAAAAAAAAABlAwMD/vb2
|
||||||
|
9v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||||
|
/v/+/v7//v7+/+3t7f8BAQH+AAAA4ggICP64uLj//v7+/+bm5v8pKSn+AAAA5QAAADwAAAAAAAAAAAAA
|
||||||
|
AHYFBQX++fn5//v7+/96enr/d3d3/3d3d/93d3f/d3d3/3d3d/93d3f/d3d3/3d3d/93d3f/d3d3/3d3
|
||||||
|
d/93d3f/d3d3/3d3d/93d3f/RUVF/gAAAOoAAAA2AAAAvgkJCf64uLj//v7+/+bm5v8pKSn+AAAA5QAA
|
||||||
|
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
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
@ -1,9 +1,9 @@
|
|||||||
using Newtonsoft.Json.Linq;
|
using System;
|
||||||
using System;
|
|
||||||
using System.ComponentModel;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.IO;
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
using System.Security.AccessControl;
|
||||||
|
using System.Security.Principal;
|
||||||
|
using System.Threading;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
@ -13,9 +13,30 @@ namespace RCM {
|
|||||||
Application.EnableVisualStyles();
|
Application.EnableVisualStyles();
|
||||||
Application.SetCompatibleTextRenderingDefault(false);
|
Application.SetCompatibleTextRenderingDefault(false);
|
||||||
|
|
||||||
|
string appGuid = ((GuidAttribute)Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(GuidAttribute), false).GetValue(0)).Value.ToString();
|
||||||
|
string mutexId = string.Format("Local\\{{{0}}}", appGuid);
|
||||||
|
|
||||||
|
using (Mutex mutex = new Mutex(false, mutexId)) {
|
||||||
|
bool hasHandle = false;
|
||||||
|
try {
|
||||||
|
try {
|
||||||
|
hasHandle = mutex.WaitOne(0, false);
|
||||||
|
if (hasHandle == false) {
|
||||||
|
MessageBox.Show("An instance of the application is already running", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} catch (AbandonedMutexException) {
|
||||||
|
hasHandle = true;
|
||||||
|
}
|
||||||
Config.LoadModules();
|
Config.LoadModules();
|
||||||
Config.LoadConfiguration();
|
Config.LoadConfiguration();
|
||||||
Application.Run(new MainForm());
|
Application.Run(new MainForm());
|
||||||
|
} finally {
|
||||||
|
if (hasHandle) {
|
||||||
|
mutex.ReleaseMutex();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
BIN
RCM/Program.ico
Normal file
BIN
RCM/Program.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 27 KiB |
@ -54,16 +54,20 @@
|
|||||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||||
<Prefer32Bit>true</Prefer32Bit>
|
<Prefer32Bit>true</Prefer32Bit>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<ApplicationIcon>Program.ico</ApplicationIcon>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="CredentialManagement, Version=1.0.2.0, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="Google.Protobuf">
|
||||||
<HintPath>..\packages\CredentialManagement.1.0.2\lib\net35\CredentialManagement.dll</HintPath>
|
<HintPath>..\packages\Google.Protobuf.3.10.1\lib\net45\Google.Protobuf.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.CSharp" />
|
<Reference Include="Microsoft.CSharp" />
|
||||||
<Reference Include="MySql.Data, Version=8.0.16.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
<Reference Include="Microsoft.VisualBasic" />
|
||||||
<HintPath>..\packages\MySql.Data.8.0.16\lib\net452\MySql.Data.dll</HintPath>
|
<Reference Include="MySql.Data, Version=8.0.15.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\MySql.Data.8.0.15\lib\net452\MySql.Data.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\Newtonsoft.Json.12.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
@ -71,7 +75,8 @@
|
|||||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.110.0\lib\net46\System.Data.SQLite.dll</HintPath>
|
<HintPath>..\packages\System.Data.SQLite.Core.1.0.110.0\lib\net46\System.Data.SQLite.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
<Reference Include="System.Management" />
|
<Reference Include="System.Drawing.Design" />
|
||||||
|
<Reference Include="System.Windows" />
|
||||||
<Reference Include="System.Windows.Forms" />
|
<Reference Include="System.Windows.Forms" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
@ -96,9 +101,17 @@
|
|||||||
<Compile Include="DataSource\SQLite\SQLiteControl.Designer.cs">
|
<Compile Include="DataSource\SQLite\SQLiteControl.Designer.cs">
|
||||||
<DependentUpon>SQLiteControl.cs</DependentUpon>
|
<DependentUpon>SQLiteControl.cs</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
|
<Compile Include="ZZImporter.cs" />
|
||||||
<Compile Include="Record\RDP\RDP.cs" />
|
<Compile Include="Record\RDP\RDP.cs" />
|
||||||
<Compile Include="Record\RDP\RDPAction.cs" />
|
<Compile Include="Record\RDP\RDPAction.cs" />
|
||||||
<Compile Include="Record\RDP\SMBAction.cs" />
|
<Compile Include="Record\RDP\SMBAction.cs" />
|
||||||
|
<Compile Include="Record\RDP\RDPConfigControl.cs">
|
||||||
|
<SubType>UserControl</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Record\RDP\RDPConfigControl.Designer.cs">
|
||||||
|
<DependentUpon>RDPConfigControl.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Record\RDP\RDPConfig.cs" />
|
||||||
<Compile Include="Record\SSH\SCPAction.cs" />
|
<Compile Include="Record\SSH\SCPAction.cs" />
|
||||||
<Compile Include="Record\SSH\SSH.cs" />
|
<Compile Include="Record\SSH\SSH.cs" />
|
||||||
<Compile Include="Record\SSH\SSHAction.cs" />
|
<Compile Include="Record\SSH\SSHAction.cs" />
|
||||||
@ -137,10 +150,16 @@
|
|||||||
<DependentUpon>MySQL.cs</DependentUpon>
|
<DependentUpon>MySQL.cs</DependentUpon>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="DataSource\MySQL\MySQLControl.resx">
|
||||||
|
<DependentUpon>MySQLControl.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="DataSource\SQLite\SQLite.resx">
|
<EmbeddedResource Include="DataSource\SQLite\SQLite.resx">
|
||||||
<DependentUpon>SQLite.cs</DependentUpon>
|
<DependentUpon>SQLite.cs</DependentUpon>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="DataSource\SQLite\SQLiteControl.resx">
|
||||||
|
<DependentUpon>SQLiteControl.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="MainForm.resx">
|
<EmbeddedResource Include="MainForm.resx">
|
||||||
<DependentUpon>MainForm.cs</DependentUpon>
|
<DependentUpon>MainForm.cs</DependentUpon>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
@ -191,10 +210,16 @@
|
|||||||
<DependentUpon>RDP.cs</DependentUpon>
|
<DependentUpon>RDP.cs</DependentUpon>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Record\RDP\RDPConfigControl.resx">
|
||||||
|
<DependentUpon>RDPConfigControl.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="Record\SSH\SSH.resx">
|
<EmbeddedResource Include="Record\SSH\SSH.resx">
|
||||||
<DependentUpon>SSH.cs</DependentUpon>
|
<DependentUpon>SSH.cs</DependentUpon>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Record\SSH\SSHConfigControl.resx">
|
||||||
|
<DependentUpon>SSHConfigControl.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="Record\WebSite\WebSite.resx">
|
<EmbeddedResource Include="Record\WebSite\WebSite.resx">
|
||||||
<DependentUpon>WebSite.cs</DependentUpon>
|
<DependentUpon>WebSite.cs</DependentUpon>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
@ -215,9 +240,12 @@
|
|||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<None Include="app.config" />
|
||||||
<None Include="packages.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup />
|
<ItemGroup>
|
||||||
|
<Content Include="Program.ico" />
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.110.0\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.110.0\build\net46\System.Data.SQLite.Core.targets')" />
|
<Import Project="..\packages\System.Data.SQLite.Core.1.0.110.0\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.110.0\build\net46\System.Data.SQLite.Core.targets')" />
|
||||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||||
|
@ -1,10 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using System.Diagnostics;
|
|
||||||
using CredentialManagement;
|
|
||||||
using System.IO;
|
|
||||||
using System.Threading;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
[Serializable]
|
[Serializable]
|
||||||
|
@ -1,20 +1,22 @@
|
|||||||
using CredentialManagement;
|
using System;
|
||||||
using System;
|
using System.ComponentModel;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Runtime.InteropServices;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
[DisplayName("Start Remote Desktop")]
|
[@DisplayName("Start Remote Desktop")]
|
||||||
public class RDPAction : IAction {
|
public class RDPAction : IAction {
|
||||||
private RDP _rdp;
|
private RDP _rdp;
|
||||||
|
private RDPConfig _config;
|
||||||
|
|
||||||
public RDPAction(RDP rdp) {
|
public RDPAction(RDP rdp) {
|
||||||
_rdp = rdp;
|
_rdp = rdp;
|
||||||
|
_config = (RDPConfig)Config.ConfigSections[typeof(RDPConfig)];
|
||||||
}
|
}
|
||||||
|
|
||||||
public async void Run() {
|
public async void Run() {
|
||||||
@ -27,29 +29,104 @@ namespace RCM {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
private void RunWin() {
|
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
|
||||||
string[] host = _rdp.Host.Split(new char[] { ':' });
|
private struct DATA_BLOB {
|
||||||
string[] username = _rdp.Username.Split(new char[] { '\\' });
|
public int cbData;
|
||||||
|
public IntPtr pbData;
|
||||||
|
}
|
||||||
|
|
||||||
|
[DllImport("crypt32.dll", SetLastError = true, CharSet = CharSet.Auto)]
|
||||||
|
private static extern bool CryptProtectData(ref DATA_BLOB pDataIn, string szDataDescr, IntPtr pOptionalEntropy, IntPtr pvReserved, IntPtr pPromptStruct, int dwFlags, ref DATA_BLOB pDataOut);
|
||||||
|
|
||||||
|
public static string EncryptPassword(string plainText) {
|
||||||
|
if (plainText == null) {
|
||||||
|
plainText = String.Empty;
|
||||||
|
}
|
||||||
|
byte[] plainBytes = Encoding.Unicode.GetBytes(plainText);
|
||||||
|
|
||||||
|
DATA_BLOB plainBlob = new DATA_BLOB();
|
||||||
|
DATA_BLOB cipherBlob = new DATA_BLOB();
|
||||||
|
|
||||||
|
try {
|
||||||
|
plainBlob.pbData = Marshal.AllocHGlobal(plainBytes.Length);
|
||||||
|
if (plainBlob.pbData == IntPtr.Zero) {
|
||||||
|
throw new Exception("Plaintext DATA_BLOB allocation exception");
|
||||||
|
}
|
||||||
|
plainBlob.cbData = plainBytes.Length;
|
||||||
|
Marshal.Copy(plainBytes, 0, plainBlob.pbData, plainBytes.Length);
|
||||||
|
|
||||||
|
bool result = CryptProtectData(ref plainBlob, String.Empty, IntPtr.Zero, IntPtr.Zero, IntPtr.Zero, 1, ref cipherBlob);
|
||||||
|
if (!result) {
|
||||||
|
throw new Exception("CryptProtectData exception", new Win32Exception(Marshal.GetLastWin32Error()));
|
||||||
|
}
|
||||||
|
byte[] cipherBytes = new byte[cipherBlob.cbData];
|
||||||
|
Marshal.Copy(cipherBlob.pbData, cipherBytes, 0, cipherBlob.cbData);
|
||||||
|
return BitConverter.ToString(cipherBytes).Replace("-", "");
|
||||||
|
} catch (Exception ex) {
|
||||||
|
throw new Exception("DPAPI encryption exception", ex);
|
||||||
|
} finally {
|
||||||
|
if (plainBlob.pbData != IntPtr.Zero) {
|
||||||
|
Marshal.FreeHGlobal(plainBlob.pbData);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (cipherBlob.pbData != IntPtr.Zero) {
|
||||||
|
Marshal.FreeHGlobal(cipherBlob.pbData);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private string CreateRdpFile() {
|
||||||
|
string domain = null;
|
||||||
|
string username;
|
||||||
|
string[] splitname = _rdp.Username.Split("\\".ToCharArray());
|
||||||
|
if (splitname.Length == 2) {
|
||||||
|
domain = splitname[0];
|
||||||
|
username = splitname[1];
|
||||||
|
} else {
|
||||||
|
username = _rdp.Username;
|
||||||
|
}
|
||||||
|
|
||||||
|
string rdpName = string.Format("{0}.{1}", _rdp.Title, Guid.NewGuid().ToString());
|
||||||
|
foreach (var c in Path.GetInvalidFileNameChars()) {
|
||||||
|
rdpName = rdpName.Replace(c, '_');
|
||||||
|
}
|
||||||
|
string rdpFile = Path.Combine(Path.GetTempPath(), string.Format("{0}.rdp", rdpName));
|
||||||
// https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/ff393699(v%3dws.10)
|
// https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/ff393699(v%3dws.10)
|
||||||
string rdpFile = Path.GetTempPath() + Guid.NewGuid().ToString() + ".rdp";
|
|
||||||
using (StreamWriter sw = new StreamWriter(rdpFile)) {
|
using (StreamWriter sw = new StreamWriter(rdpFile)) {
|
||||||
sw.Write("drivestoredirect:s:*\r\nredirectprinters:i:0\r\nredirectcomports:i:0\r\nredirectsmartcards:i:0\r\nredirectposdevices:i:0\r\nnetworkautodetect:i:0\r\nauthentication level:i:0\r\nprompt for credentials:i:0\r\nnegotiate security layer:i:1\r\npromptcredentialonce:i:0\r\nsmart sizing:i:0\r\nuse multimon:i:0\r\nbandwidthautodetect:i:1\r\n");
|
sw.Write("drivestoredirect:s:*\r\nredirectprinters:i:0\r\nredirectcomports:i:0\r\nredirectsmartcards:i:0\r\nredirectposdevices:i:0\r\nnetworkautodetect:i:0\r\nauthentication level:i:0\r\nprompt for credentials:i:0\r\nnegotiate security layer:i:1\r\npromptcredentialonce:i:0\r\nsmart sizing:i:0\r\nuse multimon:i:0\r\nbandwidthautodetect:i:1\r\n");
|
||||||
sw.Write(string.Format("full address:s:{0}\r\n", _rdp.Host));
|
sw.Write(string.Format("full address:s:{0}\r\n", _rdp.Host));
|
||||||
sw.Write(string.Format("username:s:{0}\r\n", _rdp.Username));
|
sw.Write(string.Format("username:s:{0}\r\n", username));
|
||||||
if (username.Length == 2) {
|
if (!string.IsNullOrEmpty(domain)) {
|
||||||
sw.Write(string.Format("domain:s:{0}\r\n", username[0]));
|
sw.Write(string.Format("domain:s:{0}\r\n", domain));
|
||||||
|
}
|
||||||
|
if (Environment.OSVersion.Platform == PlatformID.Unix) {
|
||||||
|
sw.Write(string.Format("password:s:{0}\r\n", _rdp.Password));
|
||||||
|
} else {
|
||||||
|
sw.Write(string.Format("password 51:b:{0}\r\n", EncryptPassword(_rdp.Password)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Credential credential = new Credential(_rdp.Username, _rdp.Password, string.Format("TERMSRV/{0}", host[0]));
|
return rdpFile;
|
||||||
credential.Save();
|
}
|
||||||
Process p = Process.Start("mstsc", string.Format("\"{0}\"", rdpFile));
|
|
||||||
|
private void RunWin() {
|
||||||
|
string rdpFile = CreateRdpFile();
|
||||||
|
Process.Start("mstsc", string.Format("\"{0}\"", rdpFile));
|
||||||
Thread.Sleep(1000);
|
Thread.Sleep(1000);
|
||||||
File.Delete(rdpFile);
|
File.Delete(rdpFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void RunUnix() {
|
private void RunUnix() {
|
||||||
// TODO
|
string rdpFile = CreateRdpFile();
|
||||||
|
string[] cmd = _config.LinuxRDPCommand.Replace("$RDP", rdpFile).Split(" ".ToCharArray(), 2);
|
||||||
|
if (cmd.Length == 0) {
|
||||||
|
MessageBox.Show("No RDP command was set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
} else if (cmd.Length == 1) {
|
||||||
|
Process.Start(cmd[0]);
|
||||||
|
} else {
|
||||||
|
Process.Start(cmd[0], cmd[1]);
|
||||||
|
}
|
||||||
|
Thread.Sleep(1000);
|
||||||
|
File.Delete(rdpFile);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
23
RCM/Record/RDP/RDPConfig.cs
Normal file
23
RCM/Record/RDP/RDPConfig.cs
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
using System;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace RCM {
|
||||||
|
[DisplayName("RDP")]
|
||||||
|
[Serializable]
|
||||||
|
public class RDPConfig : IConfigSection {
|
||||||
|
public string LinuxRDPCommand { get; set; }
|
||||||
|
[NonSerialized]
|
||||||
|
private RDPConfigControl _control;
|
||||||
|
|
||||||
|
public UserControl GetControl() {
|
||||||
|
if (_control == null || _control.IsDisposed) {
|
||||||
|
_control = new RDPConfigControl(this);
|
||||||
|
}
|
||||||
|
return _control;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void UpdateFromControl() {
|
||||||
|
LinuxRDPCommand = _control.textBoxLinuxRDPCommand.Text;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
89
RCM/Record/RDP/RDPConfigControl.Designer.cs
generated
Normal file
89
RCM/Record/RDP/RDPConfigControl.Designer.cs
generated
Normal file
@ -0,0 +1,89 @@
|
|||||||
|
namespace RCM {
|
||||||
|
partial class RDPConfigControl {
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing) {
|
||||||
|
if (disposing && (components != null)) {
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Component Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent() {
|
||||||
|
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||||
|
this.labelLinuxRDPCommandHelp = new System.Windows.Forms.Label();
|
||||||
|
this.textBoxLinuxRDPCommand = new System.Windows.Forms.TextBox();
|
||||||
|
this.labelLinuxSSHCommand = new System.Windows.Forms.Label();
|
||||||
|
this.groupBox1.SuspendLayout();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// groupBox1
|
||||||
|
//
|
||||||
|
this.groupBox1.Controls.Add(this.labelLinuxRDPCommandHelp);
|
||||||
|
this.groupBox1.Controls.Add(this.textBoxLinuxRDPCommand);
|
||||||
|
this.groupBox1.Controls.Add(this.labelLinuxSSHCommand);
|
||||||
|
this.groupBox1.Location = new System.Drawing.Point(3, 6);
|
||||||
|
this.groupBox1.Name = "groupBox1";
|
||||||
|
this.groupBox1.Size = new System.Drawing.Size(487, 68);
|
||||||
|
this.groupBox1.TabIndex = 10;
|
||||||
|
this.groupBox1.TabStop = false;
|
||||||
|
this.groupBox1.Text = "Linux";
|
||||||
|
//
|
||||||
|
// labelLinuxRDPCommandHelp
|
||||||
|
//
|
||||||
|
this.labelLinuxRDPCommandHelp.AutoSize = true;
|
||||||
|
this.labelLinuxRDPCommandHelp.Location = new System.Drawing.Point(129, 42);
|
||||||
|
this.labelLinuxRDPCommandHelp.Name = "labelLinuxRDPCommandHelp";
|
||||||
|
this.labelLinuxRDPCommandHelp.Size = new System.Drawing.Size(194, 13);
|
||||||
|
this.labelLinuxRDPCommandHelp.TabIndex = 7;
|
||||||
|
this.labelLinuxRDPCommandHelp.Text = "Use $RDP to inject the path to RDP file";
|
||||||
|
//
|
||||||
|
// textBoxLinuxRDPCommand
|
||||||
|
//
|
||||||
|
this.textBoxLinuxRDPCommand.Location = new System.Drawing.Point(132, 19);
|
||||||
|
this.textBoxLinuxRDPCommand.Name = "textBoxLinuxRDPCommand";
|
||||||
|
this.textBoxLinuxRDPCommand.Size = new System.Drawing.Size(342, 20);
|
||||||
|
this.textBoxLinuxRDPCommand.TabIndex = 1;
|
||||||
|
//
|
||||||
|
// labelLinuxSSHCommand
|
||||||
|
//
|
||||||
|
this.labelLinuxSSHCommand.AutoSize = true;
|
||||||
|
this.labelLinuxSSHCommand.Location = new System.Drawing.Point(19, 22);
|
||||||
|
this.labelLinuxSSHCommand.Name = "labelLinuxSSHCommand";
|
||||||
|
this.labelLinuxSSHCommand.Size = new System.Drawing.Size(113, 13);
|
||||||
|
this.labelLinuxSSHCommand.TabIndex = 0;
|
||||||
|
this.labelLinuxSSHCommand.Text = "Command to run RDP:";
|
||||||
|
//
|
||||||
|
// RDPConfigControl
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.Controls.Add(this.groupBox1);
|
||||||
|
this.Name = "RDPConfigControl";
|
||||||
|
this.Size = new System.Drawing.Size(499, 99);
|
||||||
|
this.groupBox1.ResumeLayout(false);
|
||||||
|
this.groupBox1.PerformLayout();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
private System.Windows.Forms.GroupBox groupBox1;
|
||||||
|
private System.Windows.Forms.Label labelLinuxRDPCommandHelp;
|
||||||
|
public System.Windows.Forms.TextBox textBoxLinuxRDPCommand;
|
||||||
|
private System.Windows.Forms.Label labelLinuxSSHCommand;
|
||||||
|
}
|
||||||
|
}
|
10
RCM/Record/RDP/RDPConfigControl.cs
Normal file
10
RCM/Record/RDP/RDPConfigControl.cs
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace RCM {
|
||||||
|
public partial class RDPConfigControl : UserControl {
|
||||||
|
public RDPConfigControl(RDPConfig rdpConfig) {
|
||||||
|
InitializeComponent();
|
||||||
|
textBoxLinuxRDPCommand.Text = rdpConfig.LinuxRDPCommand;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
120
RCM/Record/RDP/RDPConfigControl.resx
Normal file
120
RCM/Record/RDP/RDPConfigControl.resx
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
</root>
|
@ -1,9 +1,6 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Linq;
|
using System.Windows.Forms;
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
[DisplayName("Browse via SMB")]
|
[DisplayName("Browse via SMB")]
|
||||||
@ -15,12 +12,19 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void Run() {
|
public void Run() {
|
||||||
string[] host = _rdp.Host.Split(new char[] { ':' });
|
string[] host = _rdp.Host.Split(":".ToCharArray());
|
||||||
|
|
||||||
if (Environment.OSVersion.Platform == PlatformID.Unix) {
|
if (Environment.OSVersion.Platform == PlatformID.Unix) {
|
||||||
// TODO
|
MessageBox.Show("This feature is not yet implemented", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||||
|
// TODO: Implement
|
||||||
} else {
|
} else {
|
||||||
Process.Start("explorer.exe", string.Format("\\\\{0}", host[0])); // TODO: net use credentials?
|
Process netUse = Process.Start("net", string.Format("use \\\\{0} \"/USER:{1}\" \"{2}\"", host[0], _rdp.Username, _rdp.Password));
|
||||||
|
netUse.WaitForExit();
|
||||||
|
if (netUse.ExitCode == 0) {
|
||||||
|
Process.Start("explorer.exe", string.Format("\\\\{0}", host[0]));
|
||||||
|
} else {
|
||||||
|
MessageBox.Show("Unable to open the SMB share path", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Reflection;
|
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
@ -36,11 +35,11 @@ namespace RCM {
|
|||||||
MessageBox.Show("WinSCP path does not exist", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
MessageBox.Show("WinSCP path does not exist", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (string.IsNullOrWhiteSpace(_config.SSHKeys) && string.IsNullOrWhiteSpace(_ssh.Password)) {
|
if ((_config.SSHKeys == null || _config.SSHKeys.Length == 0) && string.IsNullOrWhiteSpace(_ssh.Password)) {
|
||||||
MessageBox.Show("No authentication method was set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
MessageBox.Show("No authentication method was set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!string.IsNullOrWhiteSpace(_config.SSHKeys)) {
|
if (_config.SSHKeys != null && _config.SSHKeys.Length != 0) {
|
||||||
if (string.IsNullOrWhiteSpace(_config.PageantPath)) {
|
if (string.IsNullOrWhiteSpace(_config.PageantPath)) {
|
||||||
MessageBox.Show("Pageant path is not set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
MessageBox.Show("Pageant path is not set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
return;
|
return;
|
||||||
@ -52,16 +51,23 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
|
|
||||||
StringBuilder scpParams = new StringBuilder();
|
StringBuilder scpParams = new StringBuilder();
|
||||||
if (!string.IsNullOrWhiteSpace(_config.SSHKeys)) {
|
if (_config.SSHKeys != null && _config.SSHKeys.Length != 0) {
|
||||||
Process.Start(_config.PageantPath, _config.SSHKeys);
|
StringBuilder pageantParams = new StringBuilder();
|
||||||
scpParams.Append(string.Format("/privatekey={0} ", _config.SSHKeys)); //TODO: Zvlada vic klicu?
|
foreach (string sshKey in _config.SSHKeys) {
|
||||||
|
pageantParams.AppendFormat("\"{0}\" ", sshKey);
|
||||||
|
}
|
||||||
|
Process.Start(_config.PageantPath, pageantParams.ToString());
|
||||||
|
}
|
||||||
|
scpParams.AppendFormat("sftp://{0}@{1}", _ssh.Username, _ssh.Host);
|
||||||
|
if (!string.IsNullOrWhiteSpace(_ssh.Password)) {
|
||||||
|
scpParams.AppendFormat(" \"/password={0}\"", _ssh.Password);
|
||||||
}
|
}
|
||||||
scpParams.AppendFormat("scp://{0}@{1}", _ssh.Username, _ssh.Host); // TODO: password?
|
|
||||||
Process.Start(_config.WinSCPPath, scpParams.ToString());
|
Process.Start(_config.WinSCPPath, scpParams.ToString());
|
||||||
}
|
}
|
||||||
|
|
||||||
private void RunUnix() {
|
private void RunUnix() {
|
||||||
// TOOD
|
MessageBox.Show("This feature is not yet implemented", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||||
|
// TODO: Implement
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,4 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Diagnostics;
|
|
||||||
using System.IO;
|
|
||||||
using System.Reflection;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
|
@ -35,11 +35,11 @@ namespace RCM {
|
|||||||
MessageBox.Show("PuTTY path does not exist", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
MessageBox.Show("PuTTY path does not exist", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (string.IsNullOrWhiteSpace(_config.SSHKeys) && string.IsNullOrWhiteSpace(_ssh.Password)) {
|
if ((_config.SSHKeys == null || _config.SSHKeys.Length == 0) && string.IsNullOrWhiteSpace(_ssh.Password)) {
|
||||||
MessageBox.Show("No authentication method was set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
MessageBox.Show("No authentication method was set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!string.IsNullOrWhiteSpace(_config.SSHKeys)) {
|
if (_config.SSHKeys != null && _config.SSHKeys.Length != 0) {
|
||||||
if (string.IsNullOrWhiteSpace(_config.PageantPath)) {
|
if (string.IsNullOrWhiteSpace(_config.PageantPath)) {
|
||||||
MessageBox.Show("Pageant path is not set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
MessageBox.Show("Pageant path is not set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
return;
|
return;
|
||||||
@ -50,23 +50,47 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
string[] host = _ssh.Host.Split(new char[] { ':' });
|
string[] host = _ssh.Host.Split(":".ToCharArray());
|
||||||
StringBuilder puttyParams = new StringBuilder();
|
StringBuilder puttyParams = new StringBuilder();
|
||||||
if (!string.IsNullOrWhiteSpace(_config.SSHKeys)) {
|
if (_config.SSHKeys != null && _config.SSHKeys.Length != 0) {
|
||||||
Process.Start(_config.PageantPath, _config.SSHKeys);
|
StringBuilder pageantParams = new StringBuilder();
|
||||||
puttyParams.AppendFormat("-i {0} ", _config.SSHKeys);
|
foreach (string sshKey in _config.SSHKeys) {
|
||||||
} else {
|
pageantParams.AppendFormat("\"{0}\" ", sshKey);
|
||||||
|
}
|
||||||
|
Process.Start(_config.PageantPath, pageantParams.ToString());
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrWhiteSpace(_ssh.Password)) {
|
||||||
puttyParams.AppendFormat("-pw {0} ", _ssh.Password);
|
puttyParams.AppendFormat("-pw {0} ", _ssh.Password);
|
||||||
}
|
}
|
||||||
if (host.Length > 1) {
|
if (host.Length > 1) {
|
||||||
puttyParams.AppendFormat("-P {0} ", host[1]);
|
puttyParams.AppendFormat("-P {0} ", host[1]);
|
||||||
}
|
}
|
||||||
puttyParams.AppendFormat("{0}@{1}", _ssh.Username, host[0]);
|
if (!string.IsNullOrWhiteSpace(_ssh.Username)) {
|
||||||
|
puttyParams.AppendFormat("{0}@", _ssh.Username);
|
||||||
|
}
|
||||||
|
puttyParams.Append(host[0]);
|
||||||
Process.Start(_config.PuttyPath, puttyParams.ToString());
|
Process.Start(_config.PuttyPath, puttyParams.ToString());
|
||||||
}
|
}
|
||||||
|
|
||||||
private void RunUnix() {
|
private void RunUnix() {
|
||||||
// TODO
|
string[] host = _ssh.Host.Split(":".ToCharArray());
|
||||||
|
StringBuilder sshParams = new StringBuilder("ssh ");
|
||||||
|
if (host.Length > 1) {
|
||||||
|
sshParams.AppendFormat("-p {0} ", host[1]);
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrWhiteSpace(_ssh.Username)) {
|
||||||
|
sshParams.AppendFormat("{0}@", _ssh.Username);
|
||||||
|
}
|
||||||
|
sshParams.Append(host[0]);
|
||||||
|
|
||||||
|
string[] cmd = _config.LinuxSSHCommand.Replace("$SSH", sshParams.ToString()).Split(" ".ToCharArray(), 2);
|
||||||
|
if (cmd.Length == 0) {
|
||||||
|
MessageBox.Show("No SSH command was set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
} else if (cmd.Length == 1) {
|
||||||
|
Process.Start(cmd[0]);
|
||||||
|
} else {
|
||||||
|
Process.Start(cmd[0], cmd[1]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,18 +1,15 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
[DisplayName("SSH")]
|
[DisplayName("SSH")]
|
||||||
[Serializable]
|
[Serializable]
|
||||||
public class SSHConfig : IConfigSection {
|
public class SSHConfig : IConfigSection {
|
||||||
public string SSHKeys { get; set; }
|
public string[] SSHKeys { get; set; }
|
||||||
public string PuttyPath { get; set; }
|
public string PuttyPath { get; set; }
|
||||||
public string PageantPath { get; set; }
|
public string PageantPath { get; set; }
|
||||||
public string WinSCPPath { get; set; }
|
public string WinSCPPath { get; set; }
|
||||||
|
public string LinuxSSHCommand { get; set; }
|
||||||
[NonSerialized]
|
[NonSerialized]
|
||||||
private SSHConfigControl _control;
|
private SSHConfigControl _control;
|
||||||
|
|
||||||
@ -24,10 +21,11 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void UpdateFromControl() {
|
public void UpdateFromControl() {
|
||||||
SSHKeys = _control.textBoxSshKeys.Text;
|
SSHKeys = _control.SSHKeys;
|
||||||
PuttyPath = _control.textBoxPutty.Text;
|
PuttyPath = _control.textBoxPutty.Text;
|
||||||
PageantPath = _control.textBoxPageant.Text;
|
PageantPath = _control.textBoxPageant.Text;
|
||||||
WinSCPPath = _control.textBoxWinSCP.Text;
|
WinSCPPath = _control.textBoxWinSCP.Text;
|
||||||
|
LinuxSSHCommand = _control.textBoxLinuxSSHCommand.Text;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
138
RCM/Record/SSH/SSHConfigControl.Designer.cs
generated
138
RCM/Record/SSH/SSHConfigControl.Designer.cs
generated
@ -25,6 +25,9 @@
|
|||||||
private void InitializeComponent() {
|
private void InitializeComponent() {
|
||||||
this.labelPutty = new System.Windows.Forms.Label();
|
this.labelPutty = new System.Windows.Forms.Label();
|
||||||
this.groupBoxWindows = new System.Windows.Forms.GroupBox();
|
this.groupBoxWindows = new System.Windows.Forms.GroupBox();
|
||||||
|
this.buttonSelectWinSCP = new System.Windows.Forms.Button();
|
||||||
|
this.textBoxWinSCP = new System.Windows.Forms.TextBox();
|
||||||
|
this.labelWinSCP = new System.Windows.Forms.Label();
|
||||||
this.buttonSelectPageant = new System.Windows.Forms.Button();
|
this.buttonSelectPageant = new System.Windows.Forms.Button();
|
||||||
this.buttonSelectPutty = new System.Windows.Forms.Button();
|
this.buttonSelectPutty = new System.Windows.Forms.Button();
|
||||||
this.textBoxPageant = new System.Windows.Forms.TextBox();
|
this.textBoxPageant = new System.Windows.Forms.TextBox();
|
||||||
@ -36,11 +39,13 @@
|
|||||||
this.openFileDialogSshKeys = new System.Windows.Forms.OpenFileDialog();
|
this.openFileDialogSshKeys = new System.Windows.Forms.OpenFileDialog();
|
||||||
this.openFileDialogPutty = new System.Windows.Forms.OpenFileDialog();
|
this.openFileDialogPutty = new System.Windows.Forms.OpenFileDialog();
|
||||||
this.openFileDialogPageant = new System.Windows.Forms.OpenFileDialog();
|
this.openFileDialogPageant = new System.Windows.Forms.OpenFileDialog();
|
||||||
this.buttonSelectWinSCP = new System.Windows.Forms.Button();
|
|
||||||
this.textBoxWinSCP = new System.Windows.Forms.TextBox();
|
|
||||||
this.labelWinSCP = new System.Windows.Forms.Label();
|
|
||||||
this.openFileDialogWinSCP = new System.Windows.Forms.OpenFileDialog();
|
this.openFileDialogWinSCP = new System.Windows.Forms.OpenFileDialog();
|
||||||
|
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||||
|
this.labelLinuxSSHCommandHelp = new System.Windows.Forms.Label();
|
||||||
|
this.textBoxLinuxSSHCommand = new System.Windows.Forms.TextBox();
|
||||||
|
this.labelLinuxSSHCommand = new System.Windows.Forms.Label();
|
||||||
this.groupBoxWindows.SuspendLayout();
|
this.groupBoxWindows.SuspendLayout();
|
||||||
|
this.groupBox1.SuspendLayout();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
// labelPutty
|
// labelPutty
|
||||||
@ -55,27 +60,56 @@
|
|||||||
// groupBoxWindows
|
// groupBoxWindows
|
||||||
//
|
//
|
||||||
this.groupBoxWindows.Controls.Add(this.buttonSelectWinSCP);
|
this.groupBoxWindows.Controls.Add(this.buttonSelectWinSCP);
|
||||||
|
this.groupBoxWindows.Controls.Add(this.buttonSelectSshKeys);
|
||||||
this.groupBoxWindows.Controls.Add(this.textBoxWinSCP);
|
this.groupBoxWindows.Controls.Add(this.textBoxWinSCP);
|
||||||
|
this.groupBoxWindows.Controls.Add(this.textBoxSshKeys);
|
||||||
this.groupBoxWindows.Controls.Add(this.labelWinSCP);
|
this.groupBoxWindows.Controls.Add(this.labelWinSCP);
|
||||||
|
this.groupBoxWindows.Controls.Add(this.labelSshKey);
|
||||||
this.groupBoxWindows.Controls.Add(this.buttonSelectPageant);
|
this.groupBoxWindows.Controls.Add(this.buttonSelectPageant);
|
||||||
this.groupBoxWindows.Controls.Add(this.buttonSelectPutty);
|
this.groupBoxWindows.Controls.Add(this.buttonSelectPutty);
|
||||||
this.groupBoxWindows.Controls.Add(this.textBoxPageant);
|
this.groupBoxWindows.Controls.Add(this.textBoxPageant);
|
||||||
this.groupBoxWindows.Controls.Add(this.textBoxPutty);
|
this.groupBoxWindows.Controls.Add(this.textBoxPutty);
|
||||||
this.groupBoxWindows.Controls.Add(this.labelPageant);
|
this.groupBoxWindows.Controls.Add(this.labelPageant);
|
||||||
this.groupBoxWindows.Controls.Add(this.labelPutty);
|
this.groupBoxWindows.Controls.Add(this.labelPutty);
|
||||||
this.groupBoxWindows.Location = new System.Drawing.Point(3, 39);
|
this.groupBoxWindows.Location = new System.Drawing.Point(3, 3);
|
||||||
this.groupBoxWindows.Name = "groupBoxWindows";
|
this.groupBoxWindows.Name = "groupBoxWindows";
|
||||||
this.groupBoxWindows.Size = new System.Drawing.Size(487, 108);
|
this.groupBoxWindows.Size = new System.Drawing.Size(487, 130);
|
||||||
this.groupBoxWindows.TabIndex = 1;
|
this.groupBoxWindows.TabIndex = 1;
|
||||||
this.groupBoxWindows.TabStop = false;
|
this.groupBoxWindows.TabStop = false;
|
||||||
this.groupBoxWindows.Text = "Windows";
|
this.groupBoxWindows.Text = "Windows";
|
||||||
//
|
//
|
||||||
|
// buttonSelectWinSCP
|
||||||
|
//
|
||||||
|
this.buttonSelectWinSCP.Location = new System.Drawing.Point(452, 70);
|
||||||
|
this.buttonSelectWinSCP.Name = "buttonSelectWinSCP";
|
||||||
|
this.buttonSelectWinSCP.Size = new System.Drawing.Size(22, 22);
|
||||||
|
this.buttonSelectWinSCP.TabIndex = 6;
|
||||||
|
this.buttonSelectWinSCP.Text = "⋯";
|
||||||
|
this.buttonSelectWinSCP.UseVisualStyleBackColor = true;
|
||||||
|
this.buttonSelectWinSCP.Click += new System.EventHandler(this.ButtonSelectWinSCP_Click);
|
||||||
|
//
|
||||||
|
// textBoxWinSCP
|
||||||
|
//
|
||||||
|
this.textBoxWinSCP.Location = new System.Drawing.Point(132, 71);
|
||||||
|
this.textBoxWinSCP.Name = "textBoxWinSCP";
|
||||||
|
this.textBoxWinSCP.Size = new System.Drawing.Size(314, 20);
|
||||||
|
this.textBoxWinSCP.TabIndex = 5;
|
||||||
|
//
|
||||||
|
// labelWinSCP
|
||||||
|
//
|
||||||
|
this.labelWinSCP.AutoSize = true;
|
||||||
|
this.labelWinSCP.Location = new System.Drawing.Point(19, 74);
|
||||||
|
this.labelWinSCP.Name = "labelWinSCP";
|
||||||
|
this.labelWinSCP.Size = new System.Drawing.Size(107, 13);
|
||||||
|
this.labelWinSCP.TabIndex = 7;
|
||||||
|
this.labelWinSCP.Text = "Path to WinSCP.exe:";
|
||||||
|
//
|
||||||
// buttonSelectPageant
|
// buttonSelectPageant
|
||||||
//
|
//
|
||||||
this.buttonSelectPageant.Location = new System.Drawing.Point(452, 44);
|
this.buttonSelectPageant.Location = new System.Drawing.Point(452, 44);
|
||||||
this.buttonSelectPageant.Name = "buttonSelectPageant";
|
this.buttonSelectPageant.Name = "buttonSelectPageant";
|
||||||
this.buttonSelectPageant.Size = new System.Drawing.Size(22, 22);
|
this.buttonSelectPageant.Size = new System.Drawing.Size(22, 22);
|
||||||
this.buttonSelectPageant.TabIndex = 6;
|
this.buttonSelectPageant.TabIndex = 4;
|
||||||
this.buttonSelectPageant.Text = "⋯";
|
this.buttonSelectPageant.Text = "⋯";
|
||||||
this.buttonSelectPageant.UseVisualStyleBackColor = true;
|
this.buttonSelectPageant.UseVisualStyleBackColor = true;
|
||||||
this.buttonSelectPageant.Click += new System.EventHandler(this.ButtonSelectPageant_Click);
|
this.buttonSelectPageant.Click += new System.EventHandler(this.ButtonSelectPageant_Click);
|
||||||
@ -85,7 +119,7 @@
|
|||||||
this.buttonSelectPutty.Location = new System.Drawing.Point(452, 18);
|
this.buttonSelectPutty.Location = new System.Drawing.Point(452, 18);
|
||||||
this.buttonSelectPutty.Name = "buttonSelectPutty";
|
this.buttonSelectPutty.Name = "buttonSelectPutty";
|
||||||
this.buttonSelectPutty.Size = new System.Drawing.Size(22, 22);
|
this.buttonSelectPutty.Size = new System.Drawing.Size(22, 22);
|
||||||
this.buttonSelectPutty.TabIndex = 6;
|
this.buttonSelectPutty.TabIndex = 2;
|
||||||
this.buttonSelectPutty.Text = "⋯";
|
this.buttonSelectPutty.Text = "⋯";
|
||||||
this.buttonSelectPutty.UseVisualStyleBackColor = true;
|
this.buttonSelectPutty.UseVisualStyleBackColor = true;
|
||||||
this.buttonSelectPutty.Click += new System.EventHandler(this.ButtonSelectPutty_Click);
|
this.buttonSelectPutty.Click += new System.EventHandler(this.ButtonSelectPutty_Click);
|
||||||
@ -102,7 +136,7 @@
|
|||||||
this.textBoxPutty.Location = new System.Drawing.Point(132, 19);
|
this.textBoxPutty.Location = new System.Drawing.Point(132, 19);
|
||||||
this.textBoxPutty.Name = "textBoxPutty";
|
this.textBoxPutty.Name = "textBoxPutty";
|
||||||
this.textBoxPutty.Size = new System.Drawing.Size(314, 20);
|
this.textBoxPutty.Size = new System.Drawing.Size(314, 20);
|
||||||
this.textBoxPutty.TabIndex = 2;
|
this.textBoxPutty.TabIndex = 1;
|
||||||
//
|
//
|
||||||
// labelPageant
|
// labelPageant
|
||||||
//
|
//
|
||||||
@ -116,7 +150,7 @@
|
|||||||
// labelSshKey
|
// labelSshKey
|
||||||
//
|
//
|
||||||
this.labelSshKey.AutoSize = true;
|
this.labelSshKey.AutoSize = true;
|
||||||
this.labelSshKey.Location = new System.Drawing.Point(8, 10);
|
this.labelSshKey.Location = new System.Drawing.Point(19, 100);
|
||||||
this.labelSshKey.Name = "labelSshKey";
|
this.labelSshKey.Name = "labelSshKey";
|
||||||
this.labelSshKey.Size = new System.Drawing.Size(99, 13);
|
this.labelSshKey.Size = new System.Drawing.Size(99, 13);
|
||||||
this.labelSshKey.TabIndex = 4;
|
this.labelSshKey.TabIndex = 4;
|
||||||
@ -124,24 +158,24 @@
|
|||||||
//
|
//
|
||||||
// textBoxSshKeys
|
// textBoxSshKeys
|
||||||
//
|
//
|
||||||
this.textBoxSshKeys.Location = new System.Drawing.Point(135, 7);
|
this.textBoxSshKeys.Location = new System.Drawing.Point(132, 97);
|
||||||
this.textBoxSshKeys.Name = "textBoxSshKeys";
|
this.textBoxSshKeys.Name = "textBoxSshKeys";
|
||||||
this.textBoxSshKeys.Size = new System.Drawing.Size(314, 20);
|
this.textBoxSshKeys.Size = new System.Drawing.Size(314, 20);
|
||||||
this.textBoxSshKeys.TabIndex = 4;
|
this.textBoxSshKeys.TabIndex = 7;
|
||||||
//
|
//
|
||||||
// buttonSelectSshKeys
|
// buttonSelectSshKeys
|
||||||
//
|
//
|
||||||
this.buttonSelectSshKeys.Location = new System.Drawing.Point(455, 6);
|
this.buttonSelectSshKeys.Location = new System.Drawing.Point(452, 96);
|
||||||
this.buttonSelectSshKeys.Name = "buttonSelectSshKeys";
|
this.buttonSelectSshKeys.Name = "buttonSelectSshKeys";
|
||||||
this.buttonSelectSshKeys.Size = new System.Drawing.Size(22, 22);
|
this.buttonSelectSshKeys.Size = new System.Drawing.Size(22, 22);
|
||||||
this.buttonSelectSshKeys.TabIndex = 5;
|
this.buttonSelectSshKeys.TabIndex = 8;
|
||||||
this.buttonSelectSshKeys.Text = "⋯";
|
this.buttonSelectSshKeys.Text = "⋯";
|
||||||
this.buttonSelectSshKeys.UseVisualStyleBackColor = true;
|
this.buttonSelectSshKeys.UseVisualStyleBackColor = true;
|
||||||
this.buttonSelectSshKeys.Click += new System.EventHandler(this.ButtonSelectSshKeys_Click);
|
this.buttonSelectSshKeys.Click += new System.EventHandler(this.ButtonSelectSshKeys_Click);
|
||||||
//
|
//
|
||||||
// openFileDialogSshKeys
|
// openFileDialogSshKeys
|
||||||
//
|
//
|
||||||
this.openFileDialogSshKeys.Filter = "OpenSSH keys (*.pub)|*.pub|PuTTY keys (*.ppk)|*.ppk|All files (*.*)|*.*";
|
this.openFileDialogSshKeys.Filter = "PuTTY keys (*.ppk)|*.ppk|All files (*.*)|*.*";
|
||||||
this.openFileDialogSshKeys.Multiselect = true;
|
this.openFileDialogSshKeys.Multiselect = true;
|
||||||
//
|
//
|
||||||
// openFileDialogPutty
|
// openFileDialogPutty
|
||||||
@ -152,50 +186,60 @@
|
|||||||
//
|
//
|
||||||
this.openFileDialogPageant.Filter = "Pageant.exe|Pageant.exe";
|
this.openFileDialogPageant.Filter = "Pageant.exe|Pageant.exe";
|
||||||
//
|
//
|
||||||
// buttonSelectWinSCP
|
|
||||||
//
|
|
||||||
this.buttonSelectWinSCP.Location = new System.Drawing.Point(452, 70);
|
|
||||||
this.buttonSelectWinSCP.Name = "buttonSelectWinSCP";
|
|
||||||
this.buttonSelectWinSCP.Size = new System.Drawing.Size(22, 22);
|
|
||||||
this.buttonSelectWinSCP.TabIndex = 9;
|
|
||||||
this.buttonSelectWinSCP.Text = "⋯";
|
|
||||||
this.buttonSelectWinSCP.UseVisualStyleBackColor = true;
|
|
||||||
this.buttonSelectWinSCP.Click += new System.EventHandler(this.ButtonSelectWinSCP_Click);
|
|
||||||
//
|
|
||||||
// textBoxWinSCP
|
|
||||||
//
|
|
||||||
this.textBoxWinSCP.Location = new System.Drawing.Point(132, 71);
|
|
||||||
this.textBoxWinSCP.Name = "textBoxWinSCP";
|
|
||||||
this.textBoxWinSCP.Size = new System.Drawing.Size(314, 20);
|
|
||||||
this.textBoxWinSCP.TabIndex = 8;
|
|
||||||
//
|
|
||||||
// labelWinSCP
|
|
||||||
//
|
|
||||||
this.labelWinSCP.AutoSize = true;
|
|
||||||
this.labelWinSCP.Location = new System.Drawing.Point(19, 74);
|
|
||||||
this.labelWinSCP.Name = "labelWinSCP";
|
|
||||||
this.labelWinSCP.Size = new System.Drawing.Size(107, 13);
|
|
||||||
this.labelWinSCP.TabIndex = 7;
|
|
||||||
this.labelWinSCP.Text = "Path to WinSCP.exe:";
|
|
||||||
//
|
|
||||||
// openFileDialogWinSCP
|
// openFileDialogWinSCP
|
||||||
//
|
//
|
||||||
this.openFileDialogWinSCP.Filter = "WinSCP.exe|WinSCP.exe";
|
this.openFileDialogWinSCP.Filter = "WinSCP.exe|WinSCP.exe";
|
||||||
//
|
//
|
||||||
|
// groupBox1
|
||||||
|
//
|
||||||
|
this.groupBox1.Controls.Add(this.labelLinuxSSHCommandHelp);
|
||||||
|
this.groupBox1.Controls.Add(this.textBoxLinuxSSHCommand);
|
||||||
|
this.groupBox1.Controls.Add(this.labelLinuxSSHCommand);
|
||||||
|
this.groupBox1.Location = new System.Drawing.Point(3, 139);
|
||||||
|
this.groupBox1.Name = "groupBox1";
|
||||||
|
this.groupBox1.Size = new System.Drawing.Size(487, 68);
|
||||||
|
this.groupBox1.TabIndex = 10;
|
||||||
|
this.groupBox1.TabStop = false;
|
||||||
|
this.groupBox1.Text = "Linux";
|
||||||
|
//
|
||||||
|
// labelLinuxSSHCommandHelp
|
||||||
|
//
|
||||||
|
this.labelLinuxSSHCommandHelp.AutoSize = true;
|
||||||
|
this.labelLinuxSSHCommandHelp.Location = new System.Drawing.Point(129, 42);
|
||||||
|
this.labelLinuxSSHCommandHelp.Name = "labelLinuxSSHCommandHelp";
|
||||||
|
this.labelLinuxSSHCommandHelp.Size = new System.Drawing.Size(189, 13);
|
||||||
|
this.labelLinuxSSHCommandHelp.TabIndex = 7;
|
||||||
|
this.labelLinuxSSHCommandHelp.Text = "Use $SSH to inject the SSH command";
|
||||||
|
//
|
||||||
|
// textBoxLinuxSSHCommand
|
||||||
|
//
|
||||||
|
this.textBoxLinuxSSHCommand.Location = new System.Drawing.Point(132, 19);
|
||||||
|
this.textBoxLinuxSSHCommand.Name = "textBoxLinuxSSHCommand";
|
||||||
|
this.textBoxLinuxSSHCommand.Size = new System.Drawing.Size(342, 20);
|
||||||
|
this.textBoxLinuxSSHCommand.TabIndex = 9;
|
||||||
|
//
|
||||||
|
// labelLinuxSSHCommand
|
||||||
|
//
|
||||||
|
this.labelLinuxSSHCommand.AutoSize = true;
|
||||||
|
this.labelLinuxSSHCommand.Location = new System.Drawing.Point(19, 22);
|
||||||
|
this.labelLinuxSSHCommand.Name = "labelLinuxSSHCommand";
|
||||||
|
this.labelLinuxSSHCommand.Size = new System.Drawing.Size(112, 13);
|
||||||
|
this.labelLinuxSSHCommand.TabIndex = 0;
|
||||||
|
this.labelLinuxSSHCommand.Text = "Command to run SSH:";
|
||||||
|
//
|
||||||
// SSHConfigControl
|
// SSHConfigControl
|
||||||
//
|
//
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
this.Controls.Add(this.buttonSelectSshKeys);
|
this.Controls.Add(this.groupBox1);
|
||||||
this.Controls.Add(this.textBoxSshKeys);
|
|
||||||
this.Controls.Add(this.labelSshKey);
|
|
||||||
this.Controls.Add(this.groupBoxWindows);
|
this.Controls.Add(this.groupBoxWindows);
|
||||||
this.Name = "SSHConfigControl";
|
this.Name = "SSHConfigControl";
|
||||||
this.Size = new System.Drawing.Size(499, 172);
|
this.Size = new System.Drawing.Size(499, 220);
|
||||||
this.groupBoxWindows.ResumeLayout(false);
|
this.groupBoxWindows.ResumeLayout(false);
|
||||||
this.groupBoxWindows.PerformLayout();
|
this.groupBoxWindows.PerformLayout();
|
||||||
|
this.groupBox1.ResumeLayout(false);
|
||||||
|
this.groupBox1.PerformLayout();
|
||||||
this.ResumeLayout(false);
|
this.ResumeLayout(false);
|
||||||
this.PerformLayout();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -218,5 +262,9 @@
|
|||||||
public System.Windows.Forms.TextBox textBoxWinSCP;
|
public System.Windows.Forms.TextBox textBoxWinSCP;
|
||||||
private System.Windows.Forms.Label labelWinSCP;
|
private System.Windows.Forms.Label labelWinSCP;
|
||||||
private System.Windows.Forms.OpenFileDialog openFileDialogWinSCP;
|
private System.Windows.Forms.OpenFileDialog openFileDialogWinSCP;
|
||||||
|
private System.Windows.Forms.GroupBox groupBox1;
|
||||||
|
private System.Windows.Forms.Label labelLinuxSSHCommandHelp;
|
||||||
|
public System.Windows.Forms.TextBox textBoxLinuxSSHCommand;
|
||||||
|
private System.Windows.Forms.Label labelLinuxSSHCommand;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,15 +3,22 @@ using System.Windows.Forms;
|
|||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
public partial class SSHConfigControl : UserControl {
|
public partial class SSHConfigControl : UserControl {
|
||||||
|
public string[] SSHKeys { get; private set; }
|
||||||
|
|
||||||
public SSHConfigControl(SSHConfig sshConfig) {
|
public SSHConfigControl(SSHConfig sshConfig) {
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
textBoxPutty.Text = sshConfig.PuttyPath;
|
textBoxPutty.Text = sshConfig.PuttyPath;
|
||||||
textBoxPageant.Text = sshConfig.PageantPath;
|
textBoxPageant.Text = sshConfig.PageantPath;
|
||||||
textBoxSshKeys.Text = sshConfig.SSHKeys;
|
SSHKeys = sshConfig.SSHKeys;
|
||||||
|
if (SSHKeys != null) {
|
||||||
|
textBoxSshKeys.Text = string.Join(",", SSHKeys);
|
||||||
|
}
|
||||||
|
textBoxLinuxSSHCommand.Text = sshConfig.LinuxSSHCommand;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ButtonSelectSshKeys_Click(object sender, EventArgs e) {
|
private void ButtonSelectSshKeys_Click(object sender, EventArgs e) {
|
||||||
if (openFileDialogSshKeys.ShowDialog() == DialogResult.OK) {
|
if (openFileDialogSshKeys.ShowDialog() == DialogResult.OK) {
|
||||||
|
SSHKeys = openFileDialogSshKeys.FileNames;
|
||||||
textBoxSshKeys.Text = string.Join(",", openFileDialogSshKeys.FileNames);
|
textBoxSshKeys.Text = string.Join(",", openFileDialogSshKeys.FileNames);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
132
RCM/Record/SSH/SSHConfigControl.resx
Normal file
132
RCM/Record/SSH/SSHConfigControl.resx
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<metadata name="openFileDialogSshKeys.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="openFileDialogPutty.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>194, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="openFileDialogPageant.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>356, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="openFileDialogWinSCP.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>534, 17</value>
|
||||||
|
</metadata>
|
||||||
|
</root>
|
@ -1,8 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
@ -16,8 +13,13 @@ namespace RCM {
|
|||||||
|
|
||||||
public async void Run() {
|
public async void Run() {
|
||||||
await Task.Run(() => {
|
await Task.Run(() => {
|
||||||
if (_website.URL.StartsWith("http://") || _website.URL.StartsWith("https://"))
|
if (_website.URL.StartsWith("http://") || _website.URL.StartsWith("https://")) {
|
||||||
|
if (Environment.OSVersion.Platform == PlatformID.Unix) {
|
||||||
|
Process.Start("xdg-open", _website.URL);
|
||||||
|
} else {
|
||||||
Process.Start(_website.URL); // TODO: vyplnovat hesla
|
Process.Start(_website.URL); // TODO: vyplnovat hesla
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Diagnostics;
|
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
|
@ -5,6 +5,7 @@ using System.IO;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
[DisplayName("Start WinBox")]
|
[DisplayName("Start WinBox")]
|
||||||
@ -19,6 +20,14 @@ namespace RCM {
|
|||||||
|
|
||||||
public async void Run() {
|
public async void Run() {
|
||||||
await Task.Run(() => {
|
await Task.Run(() => {
|
||||||
|
if (string.IsNullOrWhiteSpace(_config.WinBoxPath)) {
|
||||||
|
MessageBox.Show("WinBox path is not set", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!File.Exists(_config.WinBoxPath)) {
|
||||||
|
MessageBox.Show("WinBox path does not exist", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (Environment.OSVersion.Platform == PlatformID.Unix) {
|
if (Environment.OSVersion.Platform == PlatformID.Unix) {
|
||||||
RunUnix();
|
RunUnix();
|
||||||
} else {
|
} else {
|
||||||
@ -28,12 +37,12 @@ namespace RCM {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void RunWin() {
|
private void RunWin() {
|
||||||
string winboxParam = string.Format("{0} \"{1}\" \"{2}\"", _winbox.Host, _winbox.Username, _winbox.Password);
|
string winboxParam = string.Format("\"{0}\" \"{1}\" \"{2}\"", _winbox.Host, _winbox.Username, _winbox.Password);
|
||||||
Process.Start(_config.WinBoxPath, winboxParam);
|
Process.Start(_config.WinBoxPath, winboxParam);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void RunUnix() {
|
private void RunUnix() {
|
||||||
string winboxParam = string.Format("{0} {1} \"{2}\" \"{3}\"", _config.WinBoxPath, _winbox.Host, _winbox.Username, _winbox.Password);
|
string winboxParam = string.Format("\"{0}\" \"{1}\" \"{2}\" \"{3}\"", _config.WinBoxPath, _winbox.Host, _winbox.Username, _winbox.Password);
|
||||||
Process.Start("wine", winboxParam);
|
Process.Start("wine", winboxParam);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
this.buttonSelectWinBox.Location = new System.Drawing.Point(455, 6);
|
this.buttonSelectWinBox.Location = new System.Drawing.Point(455, 6);
|
||||||
this.buttonSelectWinBox.Name = "buttonSelectWinBox";
|
this.buttonSelectWinBox.Name = "buttonSelectWinBox";
|
||||||
this.buttonSelectWinBox.Size = new System.Drawing.Size(22, 22);
|
this.buttonSelectWinBox.Size = new System.Drawing.Size(22, 22);
|
||||||
this.buttonSelectWinBox.TabIndex = 9;
|
this.buttonSelectWinBox.TabIndex = 2;
|
||||||
this.buttonSelectWinBox.Text = "⋯";
|
this.buttonSelectWinBox.Text = "⋯";
|
||||||
this.buttonSelectWinBox.UseVisualStyleBackColor = true;
|
this.buttonSelectWinBox.UseVisualStyleBackColor = true;
|
||||||
this.buttonSelectWinBox.Click += new System.EventHandler(this.ButtonSelectWinBox_Click);
|
this.buttonSelectWinBox.Click += new System.EventHandler(this.ButtonSelectWinBox_Click);
|
||||||
@ -44,7 +44,7 @@
|
|||||||
this.textBoxWinBox.Location = new System.Drawing.Point(135, 7);
|
this.textBoxWinBox.Location = new System.Drawing.Point(135, 7);
|
||||||
this.textBoxWinBox.Name = "textBoxWinBox";
|
this.textBoxWinBox.Name = "textBoxWinBox";
|
||||||
this.textBoxWinBox.Size = new System.Drawing.Size(314, 20);
|
this.textBoxWinBox.Size = new System.Drawing.Size(314, 20);
|
||||||
this.textBoxWinBox.TabIndex = 8;
|
this.textBoxWinBox.TabIndex = 1;
|
||||||
//
|
//
|
||||||
// labelWinBox
|
// labelWinBox
|
||||||
//
|
//
|
||||||
@ -57,7 +57,7 @@
|
|||||||
//
|
//
|
||||||
// openFileDialogWinBox
|
// openFileDialogWinBox
|
||||||
//
|
//
|
||||||
this.openFileDialogWinBox.Filter = "WinBox.exe|WinBox.exe";
|
this.openFileDialogWinBox.Filter = "WinBox*.exe|WinBox*.exe";
|
||||||
//
|
//
|
||||||
// WinBoxConfigControl
|
// WinBoxConfigControl
|
||||||
//
|
//
|
||||||
|
@ -7,7 +7,7 @@ namespace RCM {
|
|||||||
IRecord record1 = (IRecord)((TreeNode)o1).Tag;
|
IRecord record1 = (IRecord)((TreeNode)o1).Tag;
|
||||||
IRecord record2 = (IRecord)((TreeNode)o2).Tag;
|
IRecord record2 = (IRecord)((TreeNode)o2).Tag;
|
||||||
|
|
||||||
int result = 0;
|
int result;
|
||||||
|
|
||||||
if (record1 is Group) {
|
if (record1 is Group) {
|
||||||
if (record2 is Group) {
|
if (record2 is Group) {
|
||||||
|
@ -1,8 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace RCM {
|
namespace RCM {
|
||||||
public static class TypeExtensions {
|
public static class TypeExtensions {
|
||||||
|
82
RCM/ZZImporter.cs
Normal file
82
RCM/ZZImporter.cs
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
/*using Microsoft.VisualBasic.FileIO;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace RCM {
|
||||||
|
public static class Importer {
|
||||||
|
public static List<IRecord> GetRecordsFromRDM() {
|
||||||
|
Dictionary<string, Guid> groups = new Dictionary<string, Guid>();
|
||||||
|
List<IRecord> records = new List<IRecord>();
|
||||||
|
string previousGroup = null;
|
||||||
|
|
||||||
|
using (TextFieldParser parser = new TextFieldParser("EntryList.csv", Encoding.UTF8)) {
|
||||||
|
parser.TextFieldType = FieldType.Delimited;
|
||||||
|
parser.SetDelimiters(",");
|
||||||
|
parser.ReadFields(); // Skip headers
|
||||||
|
while (!parser.EndOfData) {
|
||||||
|
string[] fields = parser.ReadFields();
|
||||||
|
string type = fields[0];
|
||||||
|
string name = fields[3];
|
||||||
|
string group = fields[4];
|
||||||
|
string parent = fields[7];
|
||||||
|
string host = fields[8];
|
||||||
|
string port = fields[9];
|
||||||
|
string username = fields[10];
|
||||||
|
string domain = fields[11];
|
||||||
|
string password = fields[12];
|
||||||
|
string url = fields[14];
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(parent)) {
|
||||||
|
// Naive identification of subconnections ownership
|
||||||
|
group = previousGroup;
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrWhiteSpace(port)) {
|
||||||
|
host = string.Format("{0}:{1}", host, port);
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrWhiteSpace(domain)) {
|
||||||
|
username = string.Format("{0}\\{1}", domain, username);
|
||||||
|
}
|
||||||
|
|
||||||
|
IRecord record = null;
|
||||||
|
if (type == "Folder" || type == "Site") {
|
||||||
|
string[] splitGroup = group.Split("\\".ToCharArray());
|
||||||
|
group = string.Join("\\", splitGroup.Take(splitGroup.Length - 1));
|
||||||
|
} else if (type == "Winbox") {
|
||||||
|
record = new WinBox() { Id = Guid.NewGuid(), Title = name, Host = host, Username = username, Password = password };
|
||||||
|
} else if (type == "Microsoft Remote Desktop (RDP)") {
|
||||||
|
record = new RDP() { Id = Guid.NewGuid(), Title = name, Host = host, Username = username, Password = password };
|
||||||
|
} else if (type == "Putty") {
|
||||||
|
record = new SSH() { Id = Guid.NewGuid(), Title = name, Host = host, Username = username, Password = password };
|
||||||
|
} else if (type == "Web Browser (http/https)") {
|
||||||
|
record = new WebSite() { Id = Guid.NewGuid(), Title = name, URL = url, Username = username, Password = password };
|
||||||
|
} else if (type == "FTP (Third Party)") {
|
||||||
|
// skip
|
||||||
|
} else {
|
||||||
|
MessageBox.Show(string.Format("Type: {0}, Title: {1}", type, name));
|
||||||
|
}
|
||||||
|
if (record != null) {
|
||||||
|
string[] splitGroup = group.Split("\\".ToCharArray());
|
||||||
|
for (int i = 0; i < splitGroup.Length; i++) {
|
||||||
|
string level = string.Join("\\", splitGroup.Take(i+1));
|
||||||
|
if (!groups.ContainsKey(level)) {
|
||||||
|
Group g = new Group() { Id = Guid.NewGuid(), Title = splitGroup[i], GroupId = i == 0 ? Guid.Empty : groups[string.Join("\\", splitGroup.Take(i))] };
|
||||||
|
records.Add(g);
|
||||||
|
groups.Add(level, g.Id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record.GroupId = groups[group];
|
||||||
|
records.Add(record);
|
||||||
|
}
|
||||||
|
previousGroup = group;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return records;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
11
RCM/app.config
Normal file
11
RCM/app.config
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<configuration>
|
||||||
|
<runtime>
|
||||||
|
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||||
|
<dependentAssembly>
|
||||||
|
<assemblyIdentity name="Google.Protobuf" publicKeyToken="a7d26565bac4d604" culture="neutral" />
|
||||||
|
<bindingRedirect oldVersion="0.0.0.0-3.10.1.0" newVersion="3.10.1.0" />
|
||||||
|
</dependentAssembly>
|
||||||
|
</assemblyBinding>
|
||||||
|
</runtime>
|
||||||
|
</configuration>
|
@ -1,9 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<packages>
|
<packages>
|
||||||
<package id="BouncyCastle" version="1.8.3.1" targetFramework="net461" />
|
<package id="Google.Protobuf" version="3.10.1" targetFramework="net461" />
|
||||||
<package id="CredentialManagement" version="1.0.2" targetFramework="net461" />
|
<package id="MySql.Data" version="8.0.15" targetFramework="net461" />
|
||||||
<package id="Google.Protobuf" version="3.6.1" targetFramework="net461" />
|
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net461" />
|
||||||
<package id="MySql.Data" version="8.0.16" targetFramework="net461" />
|
|
||||||
<package id="Newtonsoft.Json" version="12.0.2" targetFramework="net461" />
|
|
||||||
<package id="System.Data.SQLite.Core" version="1.0.110.0" targetFramework="net461" />
|
<package id="System.Data.SQLite.Core" version="1.0.110.0" targetFramework="net461" />
|
||||||
</packages>
|
</packages>
|
BIN
Resources/Program.ico
Normal file
BIN
Resources/Program.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 27 KiB |
Loading…
Reference in New Issue
Block a user