diff --git a/Mk0.Software.MD5Generator.sln b/Mk0.Software.MD5Generator.sln
new file mode 100644
index 0000000..f68e376
--- /dev/null
+++ b/Mk0.Software.MD5Generator.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.29613.14
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mk0.Software.MD5Generator", "Mk0.Software.MD5Generator\Mk0.Software.MD5Generator.csproj", "{309B3DB4-6BF0-4B17-91D5-EA28DADDF2EB}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {309B3DB4-6BF0-4B17-91D5-EA28DADDF2EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {309B3DB4-6BF0-4B17-91D5-EA28DADDF2EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {309B3DB4-6BF0-4B17-91D5-EA28DADDF2EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {309B3DB4-6BF0-4B17-91D5-EA28DADDF2EB}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {1F6C9A9F-BD62-4AF9-9F72-8B62AE2E90E3}
+ EndGlobalSection
+EndGlobal
diff --git a/Mk0.Software.MD5Generator/App.config b/Mk0.Software.MD5Generator/App.config
new file mode 100644
index 0000000..56efbc7
--- /dev/null
+++ b/Mk0.Software.MD5Generator/App.config
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Mk0.Software.MD5Generator/Main.Designer.cs b/Mk0.Software.MD5Generator/Main.Designer.cs
new file mode 100644
index 0000000..ed324d7
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Main.Designer.cs
@@ -0,0 +1,88 @@
+namespace Mk0.Software.MD5Generator
+{
+ partial class Main
+ {
+ ///
+ /// Erforderliche Designervariable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Verwendete Ressourcen bereinigen.
+ ///
+ /// True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Vom Windows Form-Designer generierter Code
+
+ ///
+ /// Erforderliche Methode für die Designerunterstützung.
+ /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
+ ///
+ private void InitializeComponent()
+ {
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Main));
+ this.buttonSelectFile = new System.Windows.Forms.Button();
+ this.textBoxMD5 = new System.Windows.Forms.TextBox();
+ this.openFileDialog = new System.Windows.Forms.OpenFileDialog();
+ this.SuspendLayout();
+ //
+ // buttonSelectFile
+ //
+ this.buttonSelectFile.Location = new System.Drawing.Point(12, 12);
+ this.buttonSelectFile.Name = "buttonSelectFile";
+ this.buttonSelectFile.Size = new System.Drawing.Size(142, 23);
+ this.buttonSelectFile.TabIndex = 1;
+ this.buttonSelectFile.Text = "Datei wählen...";
+ this.buttonSelectFile.UseVisualStyleBackColor = true;
+ this.buttonSelectFile.Click += new System.EventHandler(this.ButtonSelectFile_Click);
+ //
+ // textBoxMD5
+ //
+ this.textBoxMD5.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.textBoxMD5.BackColor = System.Drawing.SystemColors.Window;
+ this.textBoxMD5.Location = new System.Drawing.Point(12, 41);
+ this.textBoxMD5.Multiline = true;
+ this.textBoxMD5.Name = "textBoxMD5";
+ this.textBoxMD5.ReadOnly = true;
+ this.textBoxMD5.Size = new System.Drawing.Size(360, 108);
+ this.textBoxMD5.TabIndex = 2;
+ //
+ // Main
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(384, 161);
+ this.Controls.Add(this.textBoxMD5);
+ this.Controls.Add(this.buttonSelectFile);
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.MaximizeBox = false;
+ this.MaximumSize = new System.Drawing.Size(400, 200);
+ this.MinimizeBox = false;
+ this.MinimumSize = new System.Drawing.Size(400, 200);
+ this.Name = "Main";
+ this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+ this.Text = "MD5 Generator v1.0 | © 2019-2020 by mk0.at";
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Button buttonSelectFile;
+ private System.Windows.Forms.TextBox textBoxMD5;
+ private System.Windows.Forms.OpenFileDialog openFileDialog;
+ }
+}
+
diff --git a/Mk0.Software.MD5Generator/Main.cs b/Mk0.Software.MD5Generator/Main.cs
new file mode 100644
index 0000000..19d3310
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Main.cs
@@ -0,0 +1,42 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Security.Cryptography;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Mk0.Software.MD5Generator
+{
+ public partial class Main : Form
+ {
+ public Main()
+ {
+ InitializeComponent();
+ }
+
+ private void ButtonSelectFile_Click(object sender, EventArgs e)
+ {
+ DialogResult res = openFileDialog.ShowDialog();
+ if(res == DialogResult.OK)
+ {
+ GenerateMD5(openFileDialog.FileName);
+ }
+ }
+
+ private void GenerateMD5(string filename)
+ {
+ using (var md5 = MD5.Create())
+ {
+ using (var stream = File.OpenRead(filename))
+ {
+ textBoxMD5.Text = BitConverter.ToString(md5.ComputeHash(stream)).Replace("-", string.Empty);
+ }
+ }
+ }
+ }
+}
diff --git a/Mk0.Software.MD5Generator/Main.resx b/Mk0.Software.MD5Generator/Main.resx
new file mode 100644
index 0000000..8eb8031
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Main.resx
@@ -0,0 +1,380 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 17, 17
+
+
+
+
+ AAABAAMAMDAAAAEAIACoJQAANgAAACAgAAABACAAqBAAAN4lAAAQEAAAAQAgAGgEAACGNgAAKAAAADAA
+ AABgAAAAAQAgAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAB8VABsTDQA5EAsAPxELAD4RCwA+EQsAPhEL
+ AD4RCwA+EQsAPhELAD4RCwA+EQsAPhELAD4QCwA+EQsAPhELAD4RCwA+EQsAPhELAD4RCwA+EQsAPhEL
+ AD4RCwA+EQsAPhELAD4RCwA+EQsAPhELAD4RCwA+EQsAPhELAD4RCwA+EQsAPhELAD4RCwA+EQsAPhEL
+ AD4RCwA+EQsAPhELAD4RCwA+EQsAPhELAD4RCwA+EQsAPhELAD8PCgA3AgIAFXROAJNpRgDcZkQA3GZE
+ ANxmRADcZkQA3GZEANxmRADcZkQA3GZEANxmRADcZkQA3GZEANxmRADcZkQA3GZEANxmRADcZkQA3GZE
+ ANxmRADcZkQA3GZEANxmRADcZkQA3GZEANxmRADcZkQA3GZEANxmRADcZkQA3GZEANxmRADcZkQA3GZE
+ ANxmRADcZkQA3GZEANxmRADcZkQA3GZEANxmRADcZkQA3GZEANxmRADcZkQA3GZEAN5XOgC+EQsAN4ZZ
+ ALOCVwD/gFUA/4BVAP+AVQD/gVUA/4BVAP+AVQD/gVUA/4BVAP+AVQD/gFUA/4FVAP+BVQD/gFUA/4FV
+ AP+BVQD/gVUA/4BVAP+AVQD/gFUA/4BVAP+AVQD/gFUA/4BVAP+AVQD/gFUA/4BVAP+AVQD/gFUA/4BV
+ AP+AVQD/gFUA/4BVAP+AVQD/gFUA/4BVAP+AVQD/f1UA/4BVAP+AVQD/gFUA/39VAP+AVQD/gFUA/4BV
+ AP9qRwDcFA0AP4ZZALODVwD/gVUA/4FWAP+BVgD/gVUA/4FVAP+BVQD/gVYA/4FWAP+BVgD/gVYA/4FW
+ AP+BVgD/gVYA/4FWAP+BVgD/glYA/4FVAP+AVQD/gVYA/4FWAP+BVgD/gVYA/4FWAP+BVQD/gVYA/4FW
+ AP+BVgD/gFUA/4BVAP+AVQD/gVUA/4BVAP+AVQD/gVUA/4FVAP+BVQD/gVUA/4BVAP+BVQD/gVUA/4BV
+ AP+AVQD/gVUA/4BVAP9rRwDcFA4APodZALOEWAD/glcA/4NXAP+CVwD/glcA/4NXAP+CVwD/glYA/4JX
+ AP+CVwD/glYA/4FVAP+BVgD/glYA/4JWAP+CVwD/g1cA/4JXAP+CVgD/gVYA/4FWAP+CVwD/glYA/4FW
+ AP+CVwD/glYA/4FVAP+BVgD/glcA/4JWAP+BVQD/gVUA/4JXAP+CVgD/gVUA/4JWAP+CVgD/gVYA/4FW
+ AP+CVgD/glcA/4JXAP+CVwD/glcA/4JXAP9rRwDcFA0APodZALOFWQD/g1gA/4NYAP+DWAH/g1gC/4RY
+ Af+JYA7/jGYY/4VbB/+FWwf/kWwi/5JuJf+RbSP/iF8M/41nGf+FWwb/g1cA/4NZAv+NZxn/kWwj/41n
+ Gv+FWwb/jmgc/5BrIf+HXgv/i2QV/5BrIf+MZRj/g1gB/4ddCv+RbCP/jWYZ/4NYAv+HXgv/kWwj/4xm
+ GP+EWgX/jmgc/45oG/+KYhL/hFoE/4NYAf+DWAH/g1gA/4NXAP9rSADcFA0APodZALOGWQD/g1gA/4RZ
+ Af+FWgT/iF8L/4heCv+Tbyb/ooVL/6KFS/+KYQ//sJlr/7CabP+hhEn/jWYX/6mQXP+UcSr/gVUA/5Rw
+ KP+slGP/pYpS/66WZ/+fgUT/qI5Z/6GESf+SbSP/qpFe/6aKU/+pkF3/lnQu/6aLVP+rk2H/rpdp/5d2
+ Mf+njFb/q5Jh/6+Yaf+Wcy3/pYlR/6mOWv+SbiX/iF8M/4deCv+EWgP/g1gB/4NXAP9sSADcFA0APodZ
+ ALOGWQD/hFgA/4RZAf+FWQH/iWAN/4dcB/+EWQH/lXAp/62VZP+HXAj/lXEp/6uRX/+JXw7/glYA/5p6
+ OP+njFb/hFgB/6KFSv+dfj//imES/62VZv+xm2//qpFf/6OHTv+jh03/rpZm/41mGf+YdjP/qY5a/66W
+ Z/+XdTD/qY9a/6CCRv+ulmf/l3Qu/6qRXf+bejj/jGQU/6KESf+KYRD/hlwH/4hfDP+DWAD/hFgA/4NY
+ AP9sSADcFA0APohaALOGWQD/hVgA/4VZAf+HWwX/iV4K/4VZAf+KYAz/qIxV/59/QP+EWAD/hFgB/6OF
+ Sv+hg0b/hFgA/4pgDf+tlWT/kGkc/5h1L/+qkFz/nHs6/6+XaP+ni1T/qY9b/6iMVv+rkV7/r5do/55+
+ Pv+ni1T/nn4+/5+AQv+2oXj/s51x/41lFP+hgkX/tqJ5/7Kcb/+MYxL/g1YA/5NtI/+XdC3/h1wG/4lf
+ C/+FWgL/hVkA/4RYAP9tSQDcFA0APohbALOHWgD/hVkA/4ZaAf+HWwP/i2EM/4hcBf+KXwr/n38//6aJ
+ UP+KYAz/lG8l/5t5Nf+vl2b/i2EM/4phDP+ihEf/p4tT/4hdB/+YdC3/pIdM/7CYaf+OZhf/mng0/518
+ Ov+PZxj/rpZl/6WIT/+aeDP/iV4J/6iOWP+milL/sZlr/5dzK/+pj1n/polQ/7GabP+Xcyr/lG4k/5Bp
+ Gv+beTX/iF0H/4daA/+GWgP/hloB/4VZAP9uSQDcFA0APohaALOIWgD/hloA/4ZaAf+HXAT/iV4H/4hd
+ Bf+WcSb/o4VI/5ZxKP+LYQz/polQ/62TYf+beTP/lXEn/6uRXv+ulWT/rpVj/4xjEP+FVwD/jGMQ/6aK
+ Uf+KYAv/hVgA/4VZAP+HXAX/polQ/49nF/+FWAD/hlkA/5h1Lv+tk2D/qY5Y/41kEf+Zdi//rZRh/6iN
+ Vv+OZhX/oIBA/6OFSP+UbiP/h1oB/4ZaAP+GWgD/hloA/4ZaAP9uSgDcFA4APohbALOIWwD/h1oA/4da
+ AP+HWgD/h1oA/4daAP+IXAL/iVwE/4daAP+HWgD/iFwD/4peBv+HWgH/iFwD/4pfCP+KXgf/iV4G/4db
+ Af+HWgD/h1sB/4pfCf+HWwL/h1oA/4daAP+HWgD/i18I/4hcA/+GWgD/hloA/4daAP+JXQb/iFwE/4da
+ AP+GWgH/iV4G/4hcBP+GWgD/h1sC/4ldBf+IWwH/h1oA/4daAP+HWgD/h1oA/4daAP9vSgDcFA4APolb
+ ALOJWwD/iFsA/4hbAP+IWwD/iFsA/4hbAP+IWgD/iFoA/4hbAP+IWgD/h1oA/4haAP+IWwD/iFoA/4ha
+ AP+IWgD/iFoA/4daAP+IWwD/iFoA/4daAP+IWgD/iFsA/4hbAP+IWgD/iFoA/4hbAP+HWgD/h1oA/4ha
+ AP+IWgD/h1oA/4daAP+HWgD/h1oA/4daAP+IWwD/iFsA/4hbAP+IWgD/iFoA/4hbAP+IWwD/iFoA/4hb
+ AP9wSwDcFA4APolbALOKXAD/iVsA/4lbAP+JXAH/iVwA/4pdA/+NYgv/j2QP/4teBf+NYgv/kmkX/4xh
+ Cf+LXgX/kWgW/49lEP+KXgT/kGcT/5BmE/+JXAL/jGEJ/5BnFP+QZxP/iVwC/4peBP+RaBX/jmQQ/4lb
+ Af+NYQr/kWgV/49lEf+MYAn/j2YS/5BmE/+OZA//i18H/49kEP+JXAH/iVsA/4lbAf+LXwf/i14F/4lb
+ AP+JWwD/iVsA/4lbAP9wSwDcFA4APolbALOKXAD/iVsA/4lcAP+LXgT/i14D/5NqGP+ZdCj/qYtQ/558
+ Nv+skVv/qYxT/516Mv+mh0n/rJBZ/6SERP+WbyH/rJBY/7GYZ/+ffTj/oYE//6+VYv+rkFn/n305/5hz
+ KP+ulGD/sJdl/5p2Lf+qjlX/qo9W/7Kaav+jg0T/r5Vi/6yRW/+rkFn/kWkW/66UYP+QZxP/iFoA/5Jo
+ F/+bdy//k2oZ/4xfB/+JXAH/ilwB/4lcAP9wSwDcFA4APopcALOLXQD/il0A/4tdAf+MYAX/jmMK/5Np
+ Ff+MXwT/pYVF/6+UX/+niUv/ilwA/5RrGP+xmGb/kGUP/4teAv+MXwX/jWEI/6GAPf+ulF//pohK/6GA
+ Pf+Tahj/r5Zi/5FoFP+MYAf/pYZH/6yRWf+tklz/pohK/7Sdb/+jg0P/rpRf/6qOVf+skVr/i14D/6mN
+ Uv+hfzz/iVsA/558Nv+Zcyf/jmIL/45jDf+KXAD/il0A/4pcAP9wSwDcFA4APotdALOMXQD/i10A/4te
+ Af+MYAT/jWAG/5RrGP+SaBP/qIpM/6mLT/+uklv/mHEi/5lyJP+wlmH/nnox/5hwIf+MXwP/lW0d/7ag
+ c/+gfjj/poZH/6mMUP+ffDb/rZNc/5x3Lf+khEL/sZhl/6OCQP+XcSH/q49V/7agcv+UbBn/oX87/7Ob
+ av+pjFD/ilwA/5dxIv+wlmL/jmML/598Nf+hfzv/lGsY/45iCP+LXgH/i14B/4tdAP9xTADcFQ4APotc
+ ALOMXgD/i10A/4teAf+NYAT/i14B/49kDP+ZcSP/rI9W/5p0J/+eejL/p4lL/5pzJv+Xbx//podI/6KA
+ PP+PYwr/kmcR/62RWv+khEP/poZH/7KZZ/+mhkf/lGwZ/6ODQf+zm2r/oX86/49kDP+XcCD/podJ/515
+ Mf+NYQf/oH45/6aHR/+Uaxj/i14C/45iCf+tkVn/n302/5NqFv+ffTb/j2UN/4pdAP+LXgL/i14B/4pd
+ AP9xTADcFQ4APotdALONXgD/jF0A/4xdAP+NYAP/jF4B/4tdAP+MXgL/o4I//5hwIP+KWwD/i14B/4td
+ AP+LXAD/i10B/4xcAP+TZxL/rI9V/7KZZv+bdCj/o4I//6B+OP+LXAD/ilwA/6B+OP+0nGz/rZFa/5lz
+ Jf+LXAD/jF4B/4tdAP+LXQD/i10B/4tdAf+LXAD/n3w1/6+TXv+0nG3/rZJb/41hB/+Uaxf/k2kU/4td
+ Af+LXgL/jF4B/4tdAP9yTADcFQ4APotdALONXgD/jF0A/4xdAP+MXgD/jF4A/4xeAP+MXQD/kGQL/49i
+ B/+MXQD/jF0A/4xdAP+MXQD/jF0A/4xeAP+NXgH/kWUM/5BlDP+MXgD/kGMK/5BkC/+MXQD/jF0A/45h
+ Bv+SZxD/kmcR/45hB/+MXQD/jF0A/4xdAP+MXQD/i10A/4tdAP+MXQD/j2MJ/5JnEf+SZhD/kGQM/4xe
+ Af+MXQD/jF4C/4tdAP+MXQD/jF0A/4xdAP9zTADcFQ4APotdALONXgD/jF0A/4xeAP+MXgD/jF4A/4xe
+ AP+MXgD/jF0A/4xdAP+MXQD/jF0A/4xeAP+MXgD/jF0A/4xdAP+MXQD/jF0A/4xdAP+MXQD/jF0A/4xd
+ AP+MXgD/jF4A/4xdAP+MXQD/jF0A/4xdAP+MXgD/jF0A/4xdAP+MXQD/jF0A/4xdAP+MXQD/jF0A/4xd
+ AP+LXQD/i10A/4xdAP+MXQD/jF0A/4xdAP+MXQD/jF0A/4tdAP9yTADcFQ4APoxeALOOXwD/jV4A/41e
+ AP+NXgD/jV4A/45eAP+OXgD/jV4A/41eAP+NXgD/jV4A/41eAP+NXgD/jV4A/41eAP+NXgD/jV4A/41e
+ AP+NXgD/jV4A/41eAP+NXgD/jV4A/45eAP+OXgD/jV4A/41eAP+NXgD/jV4A/41eAP+NXgD/jV4A/41e
+ AP+NXgD/jV4A/41eAP+NXgD/jV0A/41dAP+NXgD/jV4A/41eAP+NXQD/jV4A/41eAP9zTQDcFQ4APodb
+ ALOJWwD/iFoA/4hbAP+IWgD/iFoA/4haAP+IWgD/iFoA/4haAP+IWgD/iFoA/4haAP+IWgD/iFoA/4ha
+ AP+IWgD/iFoA/4haAP+IWgD/iFoA/4haAP+IWgD/iFoA/4haAP+IWwD/iFoA/4haAP+IWgD/iFoA/4ha
+ AP+IWgD/iFoA/4haAP+IWgD/iFoA/4haAP+IWgD/iFoA/4haAP+IWgD/iFoA/4haAP+HWgD/iFoA/4ha
+ AP9vSgDcFA0APnhQALN6UQD/eVAA/3lRAP96UQD/elEA/3lQAP95UAD/eVEA/3lQAP95UAD/eVEA/3lR
+ AP95UQD/eVEA/3lRAP96UQD/eVEA/3lRAP95UQD/eVEA/3lRAP95UAD/eVEA/3lRAP95UQD/eVEA/3lR
+ AP95UQD/eVEA/3lRAP95UQD/eVEA/3lQAP95UAD/eVAA/3lRAP95UQD/eVAA/3lQAP95UAD/eVAA/3lQ
+ AP95UAD/eVAA/3lQAP9jQgDcEgwAPnlRALN7UgD/elEA/3pRAP96UgD/elEA/3pRAP96UQD/eVAA/3dP
+ AP91TQD/dEwA/3ZPAP95UQD/elEA/3lRAP92TgD/dU0A/3dQAP94UAD/dU4A/3NMAP9zTAD/c0wA/3RN
+ AP92TwD/eFAA/3pRAP96UgD/elEA/3lRAP93UAD/dU0A/3JLAP9ySwD/dEwA/3dPAP95UQD/elEA/3pR
+ AP96UQD/elEA/3pRAP96UQD/elEA/3pRAP9kQgDcEgwAPnpSALN8UwD/fFMA/3xSAP98UgD/fFIA/3xS
+ AP99VAL/h2Mb/4ZkIv9+XyL/dlge/3BPDv91TgD/elEA/3VOAP93Vxf/e14l/3FMAv9zTQH/dFQS/25R
+ GP9qThf/ak4W/2lLEP9oRwT/bkkA/3ZPAP96UgD/e1IA/3ZPAP9tSQH/bEwO/29UIP9vVSL/ak0T/2tI
+ A/9zTQD/eVEA/3xSAP98UgD/fFMA/3xTAP98UwD/fFIA/3xSAP9lQwDcEgwAPnxTALN+VAD/fVMA/31T
+ AP9+UwD/fVMA/31TAP+CWgv/x72o/9nX0//X1dD/ycfD/5SIb/9uSwT/d08A/25KAv+ik3X/r6md/21Q
+ Fv9pRwP/pZh+/727t/+5t7P/uLay/6yooP+Ui3j/d2I6/2tJB/91TgD/eVEA/3VQBv+Sflj/sKug/7+9
+ uv+/vrv/r6yl/4t+Zf9tTxP/c00A/3xTAP99UwD/fVMA/31TAP99UwD/fVMA/35TAP9mRADcEgwAPn5U
+ ALN/VQD/f1QA/39VAP9/VQD/f1UA/39UAP+DWwr/wLGU/87Huf/T0Mn/4ODh/7Gsof9uUBP/b0oA/3ZZ
+ H//Kxbz/zczM/3xrRv9eQAP/sqiT/+Tl5v/Sz8r/xsG3/83Kw//Z2tr/w8PC/4t+ZP9tTAn/dk4A/3VR
+ CP+5rpn/29rY/722p/+2rZv/09HM/9HS0/+UinT/bUsH/3pSAP9+VQD/flUA/35VAP9+VQD/f1UA/39V
+ AP9oRQDcEwwAPoBVALOBVgD/gFYA/4FWAP+BVgD/gVYA/4FWAP+BVwH/hFwK/3pVCv+Nd0z/3dzZ/8PB
+ vf9zWif/ZkMA/5SBW//i4uH/4ODh/6CYiP9cQg//sqiU/+Hi5P+Of2L/YkQJ/3FVHf+bi2v/29rX/8zM
+ y/+DcEv/cEoA/3VNAP+IazH/jXRC/2xMC/9lRQT/hnJK/9zb2P/Ew7//dlwo/3ZOAP+AVgD/gFYA/4BW
+ AP+AVgD/gVYA/4FWAP9qRgDcEw0APoJWALODVwD/g1cA/4NXAP+DVwD/g1cA/4NXAP+DVwD/glcA/3lQ
+ AP96XSL/1tLL/9XV1P+DcEv/ZEYM/721o//p6er/5uXl/8bFwf9xXTf/sqiU/+Lj5f+Me1r/a0YA/3VN
+ AP9pRwP/qZuB/+bm5/+tp5r/b04M/3pRAP97UgD/eVAA/3tSAP92TwD/bU4R/8nDt//b29z/hnFI/3RN
+ AP+CVwD/glcA/4NXAP+CVwD/glcA/4NXAP9rRwDcEw0APoRYALOGWQD/hVgA/4VYAP+GWAD/hlgA/4ZY
+ AP+GWAD/hlgA/4BUAP91Ug7/w7uq/+Hi4/+Thm7/e2U8/9/d2f/Szsb/vrWl/97e3v+Zjnn/uK+c/+Xm
+ 5/+Rf1v/c0sA/4JWAP93TgD/gmg2/+Hf3P/Mysf/eV4o/3lPAP9+UwD/fVMA/4BVAP97UQD/b04O/8fA
+ sv/j4+X/j3xW/3ZOAP+EWAD/hVgA/4ZYAP+FWAD/hVgA/4ZYAP9tSQDcFA0APoZZALOIWgD/h1kA/4da
+ AP+HWQD/iFoA/4daAP+HWQD/iFoA/4RYAP90TQH/saKH/+zt7v+uppf/rqKM/+rr6/+nm4P/g25G/+Lg
+ 3f/DwLr/ysS5/+fo6f+SgFz/dUwA/4VYAP9/VAD/d1YX/9jUy//b29r/g2w+/3JKAP+CYR//fmEn/25K
+ Av9qRQD/eF4r/9zZ0v/l5eX/jXZJ/3lQAP+GWQD/h1oA/4haAP+HWgD/h1oA/4haAP9uSgDcFA4APoha
+ ALOKWwD/iVsA/4lbAP+JWwD/ilsA/4lbAP+JWwD/iVsA/4daAP95TwD/mYRa/+vr6f/U09D/2dfT/+Lg
+ 3v+Gb0T/bU4T/8/Iu//m5ub/4uHf/+np6v+Ugl3/dk0A/4daAP+CVQD/dVMQ/9jTyP/j4+P/inRI/2tF
+ AP+0pYj/xcK9/5SIcP+Of2H/vreq//Dw8v/X0sj/f18f/4BVAP+JWwD/iVsA/4lbAP+JWwD/iVsA/4lb
+ AP9wSwDcFA4APopcALOMXQD/i10A/4tdAP+LXQD/i10A/4tdAP+LXQD/i10A/4pcAP9/VAD/iW01/+bk
+ 3//y8vP/8vLz/8vEt/94Vhb/cEoA/62dff/z8/P/8/Pz/+vs7f+WhF7/eE8A/4lbAP+AVQD/fV4h/+Hd
+ 1v/k4+L/iG8//2pFAP+/s5r/9PX3/+bm5f/n5+f/7ezr/93Yzv+agVH/fFIA/4haAP+LXQD/i10A/4tc
+ AP+LXQD/i1wA/4tcAP9yTADcFQ4APoxdALOOXwD/jV4A/41eAP+NXgD/jV4A/41eAP+NXgD/jV4A/41e
+ AP+GWQD/f10Y/9fQw//5+fr/8/Pz/6ubfP94UAH/fFIA/45zPP/r6eT/+Pj4/+/v8P+XhGD/dk0A/4NX
+ AP90TAD/loBV//Py8f/c2NH/fV8h/25IAP/BtZz/8/T1/6yfhf+VgVj/lX5P/4FhIf97UgH/h1oA/4xd
+ AP+NXgD/jV4A/41eAP+MXgD/jV4A/41eAP9zTQDcFQ4APo1fALOPYAD/jl8A/49fAP+PXwD/jl8A/45f
+ AP+PXwD/j18A/49fAP+KXAD/e1MG/8W5ov/7/P3/5ePe/4twOv+AVQD/hlkA/3xYEP/Qx7X/+/z9//Hx
+ 8v+Ug2L/aEUA/3JPCv+Eazr/083C//r7/f+7rZH/eFIE/3NMAP/Dt53/7/Dx/4p4VP9dPQD/aUYA/3FM
+ Af99VAP/h1oA/4xeAP+OXwD/jl8A/45fAP+OXwD/j18A/45fAP91TgDcFQ4APo9fALORYAD/kGAA/5Fg
+ AP+QYAD/kGAA/5BgAP+QYAD/kGAA/5BgAP+OXgD/flQA/6yYcv/7/P3/zMOz/35ZEP+JWgD/jV4A/35T
+ AP+smHH/+/v7//X19v/Au7D/p52J/7mxov/f3tr/+fr7/9XNu/+GZSL/gVYA/3lQAP/GuZ//9fb3/7u2
+ qv+mnIj/qZ6J/6yhi/+gjmn/hFoI/41dAP+QYAD/kGAA/5BgAP+QYAD/kF8A/5BgAP92TgDcFg4APpFg
+ ALOTYQD/kmEA/5JhAP+SYQD/kmEA/5JhAP+SYQD/kmEA/5JhAP+RYAD/hVcA/5t+Rf/r6N//rJdt/4FV
+ AP+PXgD/kWAA/4hZAP+JZiL/2tHB//Ty7//z8vD/8vHw//Hw7f/n4tj/vq2O/4ZkIP+EVwD/jV0A/4BV
+ AP/Ds5P/8/Hu/+3r5//r6ub/6+rm/+3r6f/LwKv/hl0M/45eAP+SYQD/kmEA/5JhAP+SYQD/kmAA/5Jh
+ AP94TwDcFg4APpJhALOUYgD/k2IA/5NiAP+TYgD/k2IA/5NiAP+TYgD/k2IA/5NiAP+TYQD/jl4A/4pg
+ DP+XdDD/i2MS/4xcAP+SYQD/k2IA/49fAP+HWgH/jWki/5V4Pf+YfUf/mX1H/5R2PP+GYx3/gFUE/4hZ
+ AP+QYAD/kWEA/4tcAP+RbCL/k3Q3/5ByNv+Qcjb/kHI2/5N0N/+Tbyr/il0D/5FgAP+TYgD/k2EA/5Ni
+ AP+TYgD/k2EA/5NhAP94UADcFg4APpJhALOUYwD/k2IA/5RiAP+UYgD/lGIA/5RiAP+UYgD/k2IA/5Ri
+ AP+UYgD/kmEA/49fAP+MXQD/jl8A/5JhAP+TYgD/k2IA/5NiAP+RYAD/jFwA/4dZAP+FVwD/hlgA/4dZ
+ AP+LXAD/j18A/5JhAP+TYgD/k2IA/5JhAP+NXQD/iFoA/4dZAP+HWQD/h1kA/4haAP+MXAD/kGAA/5Ni
+ AP+UYgD/k2IA/5NiAP+TYgD/k2IA/5NiAP95UADcFg4APpJjALOVZAD/lGMA/5RjAP+UYwD/lGMA/5Rj
+ AP+UYwD/lGQA/5RjAP+UYwD/lGMA/5RjAP+UZAD/lGMA/5RkAP+UZAD/lGMA/5RjAP+UYwD/k2MA/5Nj
+ AP+TYgD/k2MA/5NjAP+UYwD/lGMA/5RjAP+UYwD/lGMA/5RjAP+TYwD/k2MA/5NjAP+TYwD/k2MA/5Rj
+ AP+UYwD/lGMA/5RjAP+UYwD/lGMA/5RkAP+UYwD/lGMA/5RjAP95UQDcFg8APpJiALOVZAD/lGMA/5Rj
+ AP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RkAP+VZAD/lGQA/5RkAP+UZAD/lWQA/5Rk
+ AP+UYwD/lGMA/5RjAP+UYwD/lGMA/5RkAP+UZAD/lGMA/5RkAP+UYwD/lGMA/5RjAP+UYwD/lGMA/5Rj
+ AP+UYwD/lGQA/5RkAP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RkAP+UYwD/lGQA/5RkAP95UQDcFg8APpJj
+ ALOVZAD/lGQA/5RkAP+UYwD/lWQA/5VkAP+VZAD/lGQA/5VkAP+UZAD/lGQA/5VkAP+UZAD/lGQA/5Rk
+ AP+VZAD/lGQA/5RjAP+UYwD/lGQA/5RkAP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RkAP+UZAD/lGQA/5Rk
+ AP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RkAP+UYwD/lGQA/5RkAP+UZAD/lGQA/5RjAP+UYwD/lGQA/5Rj
+ AP95UQDcFg8APpJjALOVZAD/lGQA/5RkAP+UZAD/lGQA/5RkAP+UZAD/lWQA/5VkAP+UZAD/lGQA/5Rk
+ AP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RjAP+UYwD/lGMA/5RjAP+UZAD/lGQA/5RkAP+UZAD/lGQA/5Rj
+ AP+UZAD/lGQA/5RjAP+UZAD/lGQA/5RkAP+UZAD/lGMA/5RjAP+UYwD/lGQA/5RkAP+UZAD/lGMA/5Rk
+ AP+UZAD/lGQA/5RjAP95UQDcFg8APpNjALOVZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP+VZAD/lmQA/5Vk
+ AP+VZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP+VZAD/lGQA/5RjAP+UZAD/lWQA/5Vk
+ AP+VZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP+VZAD/lGQA/5RjAP+UZAD/lGMA/5VkAP+VZAD/lWQA/5Vk
+ AP+VZAD/lGMA/5RjAP+VZAD/lWQA/5RjAP96UQDcFg8APpRjALOWZAD/lmQA/5VkAP+VZAD/lmQA/5Zk
+ AP+VZAD/lWQA/5VkAP+VZAD/lWQA/5ZkAP+WZAD/lWQA/5VkAP+VZAD/lmQA/5ZkAP+VZAD/lWQA/5Vk
+ AP+VZAD/lmQA/5VkAP+VYwD/lWQA/5VkAP+WZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP+VZAD/lWQA/5Vk
+ AP+VZAD/lWQA/5ZkAP+VZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP96UQDcFg8AP5VkArKXZQL/lmUC/5Zl
+ Av+WZQL/lmUC/5ZlAv+WZQL/lmUC/5ZlAv+WZQL/lmUC/5ZlAv+XZQL/lmUC/5ZlAv+WZQL/lmUC/5Zl
+ Av+WZQL/lmUC/5ZlAv+WZQL/lmUC/5ZlAv+WZQL/lmUC/5ZlAv+WZQL/lmUC/5ZlAv+WZQL/lmUC/5Zl
+ Av+WZQL/lmUC/5ZlAv+WZQL/lmUC/5ZlAv+WZAL/lmUC/5ZlAv+WZQL/lmUC/5dlAv+AVgHZGxIAN5xw
+ F3abbxewmm4Xr5puF6+abhevmm4Xr5puF6+abhevmm4Xr5puF6+abhevmm4Xr5puF6+abhevmm4Xr5pu
+ F6+abhevmm4Xr5puF6+abhevmm4Xr5puF6+abhevmm4Xr5puF6+abhevmm4Xr5puF6+abhevmm4Xr5pu
+ F6+abhevmW4Xr5luF6+Zbhevmm4Xr5puF6+abxevmm4Xr5puF6+abhevmm4Xr5puF6+abhevmm4Xr5pu
+ F7GQaBaPMSMIGf///////wAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAA
+ AAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAB
+ AAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAA
+ AAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAB
+ AAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAA
+ AAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAB
+ AAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAACAAAAAAAEAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAA
+ AAAAAAAAAAAAAAAAAABTOABWRi8AdkYuAHdGLgB2Ri4AdkYuAHZGLgB2Ri4AdkYuAHZGLgB2Ri4AdkYu
+ AHZGLgB2Ri4AdkYuAHZGLgB2Ri4AdkYuAHZGLgB2Ri4AdkYuAHZGLgB2Ri4AdkYuAHZGLgB2Ri4AdkYu
+ AHZGLgB2Ri4AdkYuAHdELQB0KRsAOn9VAMt6UQD9elEA+3pRAPt6UQD7elEA+3pRAPt6UQD7elEA+3pR
+ APt6UQD7elEA+3pRAPt5UQD7eVEA+3lRAPt5UQD7eVEA+3pRAPt5UQD7eVEA+3lRAPt5UQD7eVEA+3lR
+ APt5UQD7eVEA+3lRAPt5UQD7eVEA+3RNAPZHMAB0hlkA0IJWAP+CVgD/glYA/4JWAP+BVgD/glYA/4FV
+ AP+BVQD/gVYA/4JWAP+CVgD/gVYA/4FVAP+BVgD/gVUA/4FVAP+BVgD/gVUA/4FWAP+BVQD/gVUA/4FW
+ AP+BVQD/gVUA/4FVAP+BVQD/gVYA/4FWAP+CVgD/fFIA+0syAHeGWQDQg1gA/4NYAP+DWAH/hVoE/4pi
+ Ef+FWwb/i2QU/49pHv+JYRD/iWAP/4NXAP+GXAj/jmcb/4lhEP+KYhH/i2MU/4lgD/+NZhn/hlwI/4lh
+ EP+MZRj/hVoG/4xlF/+JYRD/iWER/4tjFP+FWwb/g1gB/4NYAP99UwD7SzIAdoZZANCEWAD/hFkB/4dd
+ CP+JYA3/mXcz/5p5N/+cfTz/potV/49oG/+ggkb/iWAO/5x8O/+fgUT/p41X/6aLVf+dfj7/oYRJ/5+A
+ Q/+fgUT/pYlR/6WKU/+ggkX/popT/6SIT/+aeTf/nn9B/4lgDv+GXAf/hFgB/31UAPtLMgB2h1oA0IVZ
+ AP+FWQL/iF0I/4ZaA/+ZdzP/mnk2/4heCv+hg0b/iWAN/5d0L/+YdTD/nX4+/518PP+qkV7/qpFd/6iO
+ Wf+qkV3/nHw7/6KESf+ni1T/q5Jf/5t6N/+rkl//popS/4lfC/+VcSn/imIQ/4dcB/+FWQD/flQA+0wy
+ AHaIWgDQhlkA/4ZaAv+JXgj/iV8J/518Ov+ZdjD/lXAm/6aKUv+Xcyv/mng0/6mOV/+OZhb/m3o3/6KE
+ R/+Rah3/kmwg/6GCRf+dfDr/jWUT/6WITv+tk2H/mncx/6ySX/+milL/lXAm/5l2Mf+NZBP/hloB/4Za
+ Af+AVQD7TDMAdohbANCHWgD/h1oB/4dbAv+JXQX/kGcW/4pfCP+PZhT/kmsd/41jD/+VcCX/lG8j/4ld
+ Bv+IXAX/j2YV/4ZZAP+GWQD/jmUU/4leCP+GWQD/jmUT/5NsHv+JXgf/kmsc/49mFf+NYw//kGgX/4hc
+ A/+HWgD/h1oA/4FWAPtNMwB2iVsA0IlbAP+IWwD/iFsA/4lbAP+IWwD/iFoA/4lcAf+IWgD/iVwB/4hb
+ AP+IWwH/iFsB/4hbAP+JXAL/iFsB/4lbAf+IWwL/iFoA/4lcAv+IWwH/iFoB/4hcAf+IWgD/iFsA/4ha
+ AP+IWgD/iFsB/4hbAP+IWwD/glcA+040AHaKXADQiVsA/4pcAf+LXgP/kWcT/5x4MP+deTP/oX89/5l0
+ Kf+hgD7/mHMn/5x5Mf+igUD/mnUs/6OERf+bdy//mXMo/6OERP+adSz/o4RF/6KDQv+igUD/pIVH/5dx
+ JP+ceTH/ilwC/5FoFv+RaRf/il4E/4pcAf+DVwD7TjQAdotdANCLXQD/i14C/45iCf+RZhD/nnsz/6+U
+ X/+XcCD/n3w2/6B9N/+OYgr/kmgT/6qNU/+niEr/oH04/6aISv+XcCL/o4NC/6iLT/+qjlX/rZJc/6aI
+ Sf+wl2T/lm8g/6WFRv+Taxj/nXoy/5RrGf+NYQj/il0A/4RYAPtONAB2i10A0ItdAP+MXgL/jV8E/5Jn
+ Ev+jgj//on87/6KAPP+bdSn/ooE9/5lyJf+VbBn/rZFZ/6SDQf+rjlX/nnoz/6eIS/+qjlP/lm4e/6KA
+ PP+deTH/mXQn/6WFRf+QZQ3/nHgv/6OCQP+adCj/lm8e/4tfAv+LXgH/hFkA+041AHaMXQDQjF0A/4xe
+ Af+MXgH/jF0A/5hwIP+SaBL/jF8D/4xeAf+NXwP/jWAE/5x3LP+ifzr/mnQm/5hwIP+LXQD/n3s0/6WE
+ Q/+SaBP/jV8D/4tdAf+MXwP/jF4C/5VsGv+lhET/pIRD/5BkDP+RZg7/i14B/4xeAf+FWQD7TzUAdoxe
+ ANCMXgD/jF4A/4xeAP+MXgD/jF4B/4xeAf+MXQD/jF4A/4xdAP+MXQD/jF4B/4xdAP+MXQD/jF4B/4xe
+ AP+MXgD/jV4B/4xeAP+MXQD/jF0A/4xdAP+MXQD/jF4B/4xeAf+MXgD/jF0A/4xdAP+MXQD/jF0A/4VZ
+ APtPNQB2jF4A0IxdAP+MXQD/jF0A/4xdAP+MXQD/jF0A/4xdAP+MXQD/jF0A/4xdAP+MXQD/jF0A/4xd
+ AP+MXQD/jF0A/4xeAP+MXQD/jF0A/4xdAP+MXQD/jF0A/4xdAP+MXQD/jF0A/4xdAP+MXQD/jF0A/4xd
+ AP+MXQD/hVkA+081AHZ+VADQflQA/35UAP9+UwD/flMA/35TAP9+UwD/flMA/35UAP9+VAD/flQA/35T
+ AP9+UwD/flMA/35TAP9+UwD/flQA/35UAP9+VAD/fVMA/35UAP9+VAD/fVMA/31TAP9+UwD/flMA/31T
+ AP99UwD/fVMA/35TAP94UAD7RzAAdnpRANB7UgD/elEA/3pRAP96UQD/e1IB/3dQAv9yTAL/dE4A/3lR
+ AP93TwH/dU8F/3ZPAP90TQH/bkoB/21JAP9vSgD/c0wA/3lRAP96UQD/d08A/3BKAP9uSgP/bkoC/3NM
+ AP95UQD/elIA/3pRAP96UQD/elIA/3VOAPtFLgB2fFMA0H1TAP99UwD/fVMA/3xSAP+ki1r/wbag/7Ko
+ k/+Cazv/dEwA/3tbG/+cjXD/b08Q/4hxQP+kmof/opiF/5aJcP98ZTj/cU0G/3hQAP97WRX/mIhp/6ef
+ jv+elID/fmc6/3NNA/98UwD/fVMA/31TAP99UwD/d08A+0cvAHZ/VQDQf1UA/39VAP+AVQD/f1QA/6CE
+ TP+3qo7/1tTR/6KWf/9qRgD/l4Rc/9LR0P96Zj7/mIho/9jX1v+roYv/ta2b/8jGwv+RgmT/cUwC/4Rk
+ Jv+8sp//opR2/7Oql//Ewr7/fmQy/3pRAP9/VQD/f1UA/4BVAP96UQD7STAAdoJXANCCVwD/glcA/4NX
+ AP+CVwD/gVYA/3ZQBv+8sp//urSo/2xQGf/At6b/5ufo/6OaiP+bjXL/yMS9/25PE/9wTAX/ppd4/87M
+ yf99Yiz/eFAA/31XDP9zTAD/dlcc/8/MxP+cjW7/eE8A/4JXAP+CVwD/glcA/3xTAPtKMQB2hlgA0IZZ
+ AP+GWAD/hlgA/4ZYAP+GWQD/e1EA/6mYdv/OzMf/j35e/9bTzP+4r5z/ysbA/7WsnP/Mx7//elcT/35S
+ AP+CYyj/2NbR/5aDXv94TwD/fFQE/3hPAP92VBX/0s3E/6qcgf96UQD/hlkA/4ZZAP+GWQD/gFUA+0wz
+ AHaIWgDQiVsA/4laAP+JWwD/iVsA/4lbAP+BVAD/ln1M/9/d2v/OysP/ysO2/3xjMv/SzcP/3t3a/8/K
+ wv98WRT/hFcA/35bFv/Y1Mv/o5N0/31cG/+uoYj/i3hR/6OVef/m5eT/nodc/4BUAP+JWwD/iFoA/4lb
+ AP+CVwD7TTQAdotdANCMXQD/jF0A/4xdAP+MXQD/jF0A/4haAP+JaCf/4+DZ//Lz9f+tnHv/c00C/7uu
+ kv/3+Pn/08/G/35bFP+DVQD/hWUn/+Pg2/+gjmj/gmQo/+bk4P/SzsX/0Mq8/7SigP+DXRD/iVsA/4xd
+ AP+LXQD/jF0A/4VZAPtPNQB2jl8A0I5fAP+OXwD/jl8A/45fAP+OXwD/jV4A/4NcDv/Vzb3/7Ovo/5Bz
+ Ov9/UwD/m4FM//X08//X08v/d1ga/3lXEf+yo4X/6efi/41vNP+HaCn/4t/a/4t4Uf9xUhT/d1II/4RY
+ Af+NXgD/jl8A/45fAP+OXwD/iFoA+1E2AHaRYADQkWAA/5FgAP+RYAD/kWAA/5FgAP+RYAD/hVgB/8Kz
+ lf/Uy7v/hV0O/4xcAP+IYRb/3NXG/+3t7f/DvLD/0MzC/+fj3f+umW7/gVYB/5BvLP/q6OP/ycS6/721
+ pf+9s6D/kW8s/41dAP+RYAD/kGAA/5FgAP+KXAD7UjcAdpNhANCTYgD/k2IA/5NiAP+TYgD/k2EA/5Nh
+ AP+NXQD/m3g0/59+P/+LXAD/kmEA/4tcAP+bezz/tKB3/7ekfv+wmm7/lnU1/4dbBP+OXgD/j2UT/66W
+ Zf+vmm//r5pw/6+Ya/+Sax3/kF8A/5NhAP+SYQD/k2EA/4xdAPtTNwB2k2IA0JRjAP+UYgD/lGMA/5Rj
+ AP+UYwD/lGMA/5NiAP+PXwD/j18A/5NiAP+UYwD/k2IA/45eAP+JWgD/iFoA/4pbAP+OXgD/k2IA/5Ni
+ AP+RYAD/i1wA/4laAP+JWgD/i1sA/5BgAP+TYgD/lGMA/5NjAP+UYwD/jV4A+1Q4AHaTYwDQlGQA/5Rj
+ AP+UZAD/lGQA/5RkAP+UZAD/lGQA/5VkAP+VZAD/lGQA/5RkAP+UZAD/lGMA/5RjAP+UZAD/lGQA/5Rk
+ AP+UYwD/lGMA/5RjAP+UYwD/lGMA/5RkAP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RkAP+NXwD7VDgAdpNj
+ ANCUZAD/lGQA/5RkAP+UZAD/lWQA/5RkAP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RjAP+UYwD/lGQA/5Rk
+ AP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RkAP+UZAD/lGQA/5RjAP+UYwD/lGQA/5RkAP+UZAD/lGQA/41f
+ APtUOAB2lGQA0JVkAP+VZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP+VZAD/lWQA/5Rj
+ AP+UYwD/lGQA/5VkAP+VZAD/lGQA/5RkAP+UZAD/lGQA/5RkAP+UZAD/lGMA/5RkAP+VZAD/lGMA/5Rk
+ AP+VZAD/jl8A+1Q4AHeVZADQlmQA/5VkAP+WZAD/lmQA/5VkAP+WZAD/lmQA/5ZkAP+WZAD/lmQA/5Zk
+ AP+WZAD/lWQA/5VkAP+WZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP+VZAD/lWQA/5VkAP+VZAD/lmQA/5Zk
+ AP+VZAD/lWQA/5ZkAP+PXwD6VjoAdZlqDaaYag3PmGoNzphqDc6Yag3OmGoNzphqDc6Yag3OmGoNzphq
+ Dc6Yag3OmGoNzphqDc6Yag3OmGoNzphqDc6Yag3OmGoNzphqDc6Yag3OmGoNzphqDc6Yag3OmGoNzphq
+ Dc6Yag3OmGkNzphqDc6YaQ3OmGoNzpVnDclrSwlT/////wAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAA
+ AAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAA
+ AAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEoAAAAEAAAACAAAAABACAAAAAAAAAE
+ AAAAAAAAAAAAAAAAAAAAAAAAcEsAr21IAMJtSADBbUgAwW1IAMFtSADBbUgAwWxIAMFsSADBbEgAwWxI
+ AMFsSADBbEgAwWxIAMFtSADDXj8Ak4NXAOqCVwH/hVsH/4deDP+IXw7/hVoG/4ZdC/+IXw7/h14M/4de
+ DP+HXg3/h14N/4deDf+FXAj/glcB/3BLAMGFWQDqhVoD/5BqHf+YdTD/mHUw/5VxKv+bezr/pIhP/6GE
+ SP+ef0H/o4dN/6OGS/+cfDr/kGoe/4VaA/9xTADBh1oA6odbAv+PZhT/kmse/5VvJP+Xcin/kWoc/5Jr
+ Hv+SbB7/kWka/5l1Lv+ZdS//lXEm/45lE/+GWgH/dE0AwYlbAOqJXAL/j2UR/5RsHP+Taxr/kWkX/5Rs
+ Hf+Taxv/kmoZ/5VuIP+WcCT/lG0e/45jDv+NYQr/iVwC/3ZPAMGLXQDqjF8E/5lzJf+hfzr/nXgu/5hx
+ I/+mh0j/ooE+/6OCQP+igj//o4I//598Nv+deTH/l3Ag/4xfBP93UADBjF4A6oxeAP+QYwr/kGMK/45g
+ Bf+SZg7/lm0a/5JmDv+WbRv/kGMK/41gBP+QYwr/l24d/5BjCv+MXgH/eFAAwYVYAOqFWAD/hFcA/4JV
+ AP+EVwD/g1cA/4NWAP+CVQD/g1YA/4RYAP+DVwD/glUA/4NWAP+EWAD/hFgA/3JMAMF7UgDqe1EA/4di
+ Gv+Xfk3/e1kV/4BgIf99XiH/jHRG/4NoMv93UQb/gmMk/4t0Rv98Whj/elEA/3tSAP9qRwDBgVYA6oFV
+ AP+JYhX/r59//5WCXv+zqJP/opd//6mcgv+fj27/lH9U/4hpK/+Xglj/opN0/31VA/+BVgD/b0oAwYda
+ AOqHWgD/hVcA/5R1O//DvK//tquV/8jCuP+ijWb/h2Mg/6+hhf+Jai7/l39Q/7SliP+EWgb/h1oA/3RN
+ AMGNXgDqjV4A/4xdAP+QaRz/19DD/5Z6Qv/Kv6f/saB+/5l9R/+zooH/r599/7GljP+UdTb/ilwA/41e
+ AP95UQDBkmEA6pJhAP+SYQD/kGMI/62SXf+OYw3/poZJ/7+wkv+1onv/lnEn/6mNVv+zoYD/nX9C/49f
+ AP+RYQD/fVMAwZRjAOqUYwD/lGMA/5RjAP+SYgH/k2MA/5JhAf+RYwb/kWIE/5JhAP+SYgL/kWMG/5Jj
+ BP+TYwD/lGMA/39VAMGUZADqlWQA/5VkAP+VZAD/lWQA/5VkAP+UZAD/lGQA/5VkAP+UZAD/lGQA/5Rk
+ AP+UZAD/lGQA/5RkAP9/VQDBlmYF1ZZmBeqWZgXplmYF6ZZmBemWZgXplmYF6ZZmBemWZgXplmYF6ZZm
+ BemWZgXplmYF6ZZmBemWZgXrhVoErgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+
+
+
\ No newline at end of file
diff --git a/Mk0.Software.MD5Generator/Mk0.Software.MD5Generator.csproj b/Mk0.Software.MD5Generator/Mk0.Software.MD5Generator.csproj
new file mode 100644
index 0000000..b628f57
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Mk0.Software.MD5Generator.csproj
@@ -0,0 +1,83 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {309B3DB4-6BF0-4B17-91D5-EA28DADDF2EB}
+ WinExe
+ Mk0.Software.MD5Generator
+ Mk0.Software.MD5Generator
+ v4.7.2
+ 512
+ true
+ true
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Form
+
+
+ Main.cs
+
+
+
+
+ Main.cs
+
+
+ ResXFileCodeGenerator
+ Resources.Designer.cs
+ Designer
+
+
+ True
+ Resources.resx
+
+
+ SettingsSingleFileGenerator
+ Settings.Designer.cs
+
+
+ True
+ Settings.settings
+ True
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Mk0.Software.MD5Generator/Program.cs b/Mk0.Software.MD5Generator/Program.cs
new file mode 100644
index 0000000..1bffbdf
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Program.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Mk0.Software.MD5Generator
+{
+ static class Program
+ {
+ ///
+ /// Der Haupteinstiegspunkt für die Anwendung.
+ ///
+ [STAThread]
+ static void Main()
+ {
+ Application.EnableVisualStyles();
+ Application.SetCompatibleTextRenderingDefault(false);
+ Application.Run(new Main());
+ }
+ }
+}
diff --git a/Mk0.Software.MD5Generator/Properties/AssemblyInfo.cs b/Mk0.Software.MD5Generator/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..25392d6
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Allgemeine Informationen über eine Assembly werden über die folgenden
+// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
+// die einer Assembly zugeordnet sind.
+[assembly: AssemblyTitle("Mk0.Software.MD5Generator")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("Mk0.Software.MD5Generator")]
+[assembly: AssemblyCopyright("Copyright © 2019")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly
+// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von
+// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
+[assembly: ComVisible(false)]
+
+// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
+[assembly: Guid("309b3db4-6bf0-4b17-91d5-ea28daddf2eb")]
+
+// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
+//
+// Hauptversion
+// Nebenversion
+// Buildnummer
+// Revision
+//
+// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
+// indem Sie "*" wie unten gezeigt eingeben:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/Mk0.Software.MD5Generator/Properties/Resources.Designer.cs b/Mk0.Software.MD5Generator/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..7cece6b
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Properties/Resources.Designer.cs
@@ -0,0 +1,71 @@
+//------------------------------------------------------------------------------
+//
+// Dieser Code wurde von einem Tool generiert.
+// Laufzeitversion: 4.0.30319.42000
+//
+// Änderungen an dieser Datei können fehlerhaftes Verhalten verursachen und gehen verloren, wenn
+// der Code neu generiert wird.
+//
+//------------------------------------------------------------------------------
+
+namespace Mk0.Software.MD5Generator.Properties
+{
+
+
+ ///
+ /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
+ ///
+ // Diese Klasse wurde von der StronglyTypedResourceBuilder-Klasse
+ // über ein Tool wie ResGen oder Visual Studio automatisch generiert.
+ // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
+ // mit der Option /str erneut aus, oder erstellen Sie Ihr VS-Projekt neu.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources
+ {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources()
+ {
+ }
+
+ ///
+ /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager
+ {
+ get
+ {
+ if ((resourceMan == null))
+ {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Mk0.Software.MD5Generator.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
+ /// Ressourcenlookups, die diese stark typisierte Ressourcenklasse verwenden.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture
+ {
+ get
+ {
+ return resourceCulture;
+ }
+ set
+ {
+ resourceCulture = value;
+ }
+ }
+ }
+}
diff --git a/Mk0.Software.MD5Generator/Properties/Resources.resx b/Mk0.Software.MD5Generator/Properties/Resources.resx
new file mode 100644
index 0000000..af7dbeb
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Properties/Resources.resx
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/Mk0.Software.MD5Generator/Properties/Settings.Designer.cs b/Mk0.Software.MD5Generator/Properties/Settings.Designer.cs
new file mode 100644
index 0000000..de10d97
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Properties/Settings.Designer.cs
@@ -0,0 +1,30 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace Mk0.Software.MD5Generator.Properties
+{
+
+
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
+ internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
+ {
+
+ private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
+
+ public static Settings Default
+ {
+ get
+ {
+ return defaultInstance;
+ }
+ }
+ }
+}
diff --git a/Mk0.Software.MD5Generator/Properties/Settings.settings b/Mk0.Software.MD5Generator/Properties/Settings.settings
new file mode 100644
index 0000000..3964565
--- /dev/null
+++ b/Mk0.Software.MD5Generator/Properties/Settings.settings
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+