diff --git a/NTwain.sln b/NTwain.sln
index c2055fc..b77a3d7 100644
--- a/NTwain.sln
+++ b/NTwain.sln
@@ -24,6 +24,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sample.Console", "samples\S
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{B77C17FE-FD84-4FF4-9A1C-D49DB1749C9C}"
EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Sample.Net5Console", "samples\Sample.Net5Console\Sample.Net5Console.csproj", "{DDEA155C-68E9-4B42-8390-01B060DB25DB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sample.Net5Winform", "samples\Sample.Net5Winform\Sample.Net5Winform.csproj", "{5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -83,6 +87,30 @@ Global
{12D761EF-68DF-41CE-92EF-0C7AE81857A3}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{12D761EF-68DF-41CE-92EF-0C7AE81857A3}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{12D761EF-68DF-41CE-92EF-0C7AE81857A3}.Release|x86.ActiveCfg = Release|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Debug|x86.Build.0 = Debug|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Release|Any CPU.Build.0 = Release|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Release|x86.ActiveCfg = Release|Any CPU
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB}.Release|x86.Build.0 = Release|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Debug|x86.Build.0 = Debug|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Release|x86.ActiveCfg = Release|Any CPU
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -92,6 +120,8 @@ Global
{4FC243F1-318E-4FA9-9EBD-2CA3A8F35425} = {2F906640-1664-4960-93D2-A054AC6E66A3}
{1715C2B7-5C35-4F8B-9D9B-8D68A3D5284D} = {2F906640-1664-4960-93D2-A054AC6E66A3}
{12D761EF-68DF-41CE-92EF-0C7AE81857A3} = {2F906640-1664-4960-93D2-A054AC6E66A3}
+ {DDEA155C-68E9-4B42-8390-01B060DB25DB} = {2F906640-1664-4960-93D2-A054AC6E66A3}
+ {5DA59B03-A286-4BC4-9F85-CDE893BB6C6F} = {2F906640-1664-4960-93D2-A054AC6E66A3}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {A823206C-F8D5-491B-8B01-B9A5884FAEA1}
diff --git a/samples/Sample.Net5Console/Program.cs b/samples/Sample.Net5Console/Program.cs
new file mode 100644
index 0000000..79e2bf1
--- /dev/null
+++ b/samples/Sample.Net5Console/Program.cs
@@ -0,0 +1,107 @@
+using NTwain;
+using NTwain.Data;
+using System;
+using System.Linq;
+using System.Reflection;
+using System.Threading;
+
+namespace Sample.Net5Console
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ if (PlatformInfo.Current.IsApp64Bit)
+ {
+ Console.WriteLine("[64bit]");
+ }
+ else
+ {
+ Console.WriteLine("[32bit]");
+ }
+ // just an amusing example to do twain in console without UI
+ ThreadPool.QueueUserWorkItem(o =>
+ {
+ try
+ {
+ DoTwainWork();
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine("ERROR: " + ex.ToString());
+ }
+ });
+ Console.WriteLine("Test started, press Enter to exit.");
+ Console.ReadLine();
+ }
+
+
+
+ static readonly TwainSession twain = InitTwain();
+ private static TwainSession InitTwain()
+ {
+ var twain = new TwainSession(TWIdentity.CreateFromAssembly(DataGroups.Image, Assembly.GetExecutingAssembly()));
+ twain.TransferReady += (s, e) =>
+ {
+ Console.WriteLine("Got xfer ready on thread {0}.", Thread.CurrentThread.ManagedThreadId);
+ };
+ twain.DataTransferred += (s, e) =>
+ {
+ if (e.NativeData != IntPtr.Zero)
+ {
+ Console.WriteLine("SUCCESS! Got twain data on thread {0}.", Thread.CurrentThread.ManagedThreadId);
+ }
+ else
+ {
+ Console.WriteLine("BUMMER! No twain data on thread {0}.", Thread.CurrentThread.ManagedThreadId);
+ }
+ };
+
+ twain.SourceDisabled += (s, e) =>
+ {
+ Console.WriteLine("Source disabled on thread {0}.", Thread.CurrentThread.ManagedThreadId);
+ var rc = twain.CurrentSource.Close();
+ rc = twain.Close();
+ };
+ return twain;
+ }
+
+ const string SAMPLE_SOURCE = "TWAIN2 FreeImage Software Scanner";
+ static void DoTwainWork()
+ {
+ Console.WriteLine("Getting ready to do twain stuff on thread {0}...", Thread.CurrentThread.ManagedThreadId);
+ Thread.Sleep(1000);
+
+ var rc = twain.Open();
+
+ if (rc == ReturnCode.Success)
+ {
+ var hit = twain.FirstOrDefault(s => string.Equals(s.Name, SAMPLE_SOURCE));
+ if (hit == null)
+ {
+ Console.WriteLine("The sample source \"" + SAMPLE_SOURCE + "\" is not installed.");
+ twain.Close();
+ }
+ else
+ {
+ rc = hit.Open();
+
+ if (rc == ReturnCode.Success)
+ {
+ Console.WriteLine("Starting capture from the sample source...");
+ rc = hit.Enable(SourceEnableMode.NoUI, false, IntPtr.Zero);
+ }
+ else
+ {
+ twain.Close();
+ }
+ }
+ }
+ else
+ {
+ Console.WriteLine("Failed to open dsm with rc={0}!", rc);
+ }
+ }
+
+ }
+}
diff --git a/samples/Sample.Net5Console/Sample.Net5Console.csproj b/samples/Sample.Net5Console/Sample.Net5Console.csproj
new file mode 100644
index 0000000..6bd9cf3
--- /dev/null
+++ b/samples/Sample.Net5Console/Sample.Net5Console.csproj
@@ -0,0 +1,13 @@
+
+
+
+ Exe
+ net5.0-windows
+ x86
+
+
+
+
+
+
+
diff --git a/samples/Sample.Net5Winform/Program.cs b/samples/Sample.Net5Winform/Program.cs
new file mode 100644
index 0000000..c595ae8
--- /dev/null
+++ b/samples/Sample.Net5Winform/Program.cs
@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Sample.Net5Winform
+{
+ static class Program
+ {
+ ///
+ /// The main entry point for the application.
+ ///
+ [STAThread]
+ static void Main()
+ {
+ Application.SetHighDpiMode(HighDpiMode.SystemAware);
+ Application.EnableVisualStyles();
+ Application.SetCompatibleTextRenderingDefault(false);
+ Application.Run(new TestForm());
+ }
+ }
+}
diff --git a/samples/Sample.Net5Winform/Sample.Net5Winform.csproj b/samples/Sample.Net5Winform/Sample.Net5Winform.csproj
new file mode 100644
index 0000000..dda57b3
--- /dev/null
+++ b/samples/Sample.Net5Winform/Sample.Net5Winform.csproj
@@ -0,0 +1,15 @@
+
+
+
+ WinExe
+ net5.0-windows
+ true
+ scanner.ico
+ x86
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/samples/Sample.Net5Winform/TestForm.Designer.cs b/samples/Sample.Net5Winform/TestForm.Designer.cs
new file mode 100644
index 0000000..44de6bf
--- /dev/null
+++ b/samples/Sample.Net5Winform/TestForm.Designer.cs
@@ -0,0 +1,342 @@
+
+namespace Sample.Net5Winform
+{
+ partial class TestForm
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TestForm));
+ this.pictureBox1 = new System.Windows.Forms.PictureBox();
+ this.saveFileDialog1 = new System.Windows.Forms.SaveFileDialog();
+ this.toolStrip1 = new System.Windows.Forms.ToolStrip();
+ this.btnSources = new System.Windows.Forms.ToolStripDropDownButton();
+ this.sepSourceList = new System.Windows.Forms.ToolStripSeparator();
+ this.reloadSourcesListToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.btnStartCapture = new System.Windows.Forms.ToolStripButton();
+ this.btnStopScan = new System.Windows.Forms.ToolStripButton();
+ this.btnSaveImage = new System.Windows.Forms.ToolStripButton();
+ this.panelOptions = new System.Windows.Forms.TableLayoutPanel();
+ this.groupDuplex = new System.Windows.Forms.GroupBox();
+ this.ckDuplex = new System.Windows.Forms.CheckBox();
+ this.groupSize = new System.Windows.Forms.GroupBox();
+ this.comboSize = new System.Windows.Forms.ComboBox();
+ this.groupDepth = new System.Windows.Forms.GroupBox();
+ this.comboDepth = new System.Windows.Forms.ComboBox();
+ this.groupDPI = new System.Windows.Forms.GroupBox();
+ this.comboDPI = new System.Windows.Forms.ComboBox();
+ this.btnAllSettings = new System.Windows.Forms.Button();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
+ this.toolStrip1.SuspendLayout();
+ this.panelOptions.SuspendLayout();
+ this.groupDuplex.SuspendLayout();
+ this.groupSize.SuspendLayout();
+ this.groupDepth.SuspendLayout();
+ this.groupDPI.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // pictureBox1
+ //
+ this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.pictureBox1.Location = new System.Drawing.Point(259, 25);
+ this.pictureBox1.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.pictureBox1.Name = "pictureBox1";
+ this.pictureBox1.Size = new System.Drawing.Size(677, 500);
+ this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
+ this.pictureBox1.TabIndex = 1;
+ this.pictureBox1.TabStop = false;
+ //
+ // saveFileDialog1
+ //
+ this.saveFileDialog1.FileName = "Test";
+ this.saveFileDialog1.Filter = "png files|*.png";
+ this.saveFileDialog1.Title = "Save Image";
+ //
+ // toolStrip1
+ //
+ this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.btnSources,
+ this.btnStartCapture,
+ this.btnStopScan,
+ this.btnSaveImage});
+ this.toolStrip1.Location = new System.Drawing.Point(0, 0);
+ this.toolStrip1.Name = "toolStrip1";
+ this.toolStrip1.Size = new System.Drawing.Size(936, 25);
+ this.toolStrip1.TabIndex = 2;
+ this.toolStrip1.Text = "toolStrip1";
+ //
+ // btnSources
+ //
+ this.btnSources.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+ this.btnSources.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.sepSourceList,
+ this.reloadSourcesListToolStripMenuItem});
+ this.btnSources.Image = ((System.Drawing.Image)(resources.GetObject("btnSources.Image")));
+ this.btnSources.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.btnSources.Name = "btnSources";
+ this.btnSources.Size = new System.Drawing.Size(94, 22);
+ this.btnSources.Text = "Select &sources";
+ this.btnSources.DropDownOpening += new System.EventHandler(this.btnSources_DropDownOpening);
+ //
+ // sepSourceList
+ //
+ this.sepSourceList.Name = "sepSourceList";
+ this.sepSourceList.Size = new System.Drawing.Size(168, 6);
+ //
+ // reloadSourcesListToolStripMenuItem
+ //
+ this.reloadSourcesListToolStripMenuItem.Name = "reloadSourcesListToolStripMenuItem";
+ this.reloadSourcesListToolStripMenuItem.Size = new System.Drawing.Size(171, 22);
+ this.reloadSourcesListToolStripMenuItem.Text = "&Reload sources list";
+ this.reloadSourcesListToolStripMenuItem.Click += new System.EventHandler(this.reloadSourcesListToolStripMenuItem_Click);
+ //
+ // btnStartCapture
+ //
+ this.btnStartCapture.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+ this.btnStartCapture.Enabled = false;
+ this.btnStartCapture.Image = ((System.Drawing.Image)(resources.GetObject("btnStartCapture.Image")));
+ this.btnStartCapture.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.btnStartCapture.Name = "btnStartCapture";
+ this.btnStartCapture.Size = new System.Drawing.Size(62, 22);
+ this.btnStartCapture.Text = "S&tart scan";
+ this.btnStartCapture.Click += new System.EventHandler(this.btnStartCapture_Click);
+ //
+ // btnStopScan
+ //
+ this.btnStopScan.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+ this.btnStopScan.Enabled = false;
+ this.btnStopScan.Image = ((System.Drawing.Image)(resources.GetObject("btnStopScan.Image")));
+ this.btnStopScan.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.btnStopScan.Name = "btnStopScan";
+ this.btnStopScan.Size = new System.Drawing.Size(62, 22);
+ this.btnStopScan.Text = "Sto&p scan";
+ this.btnStopScan.Click += new System.EventHandler(this.btnStopScan_Click);
+ //
+ // btnSaveImage
+ //
+ this.btnSaveImage.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+ this.btnSaveImage.Image = ((System.Drawing.Image)(resources.GetObject("btnSaveImage.Image")));
+ this.btnSaveImage.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.btnSaveImage.Name = "btnSaveImage";
+ this.btnSaveImage.Size = new System.Drawing.Size(71, 22);
+ this.btnSaveImage.Text = "S&ave image";
+ this.btnSaveImage.Click += new System.EventHandler(this.btnSaveImage_Click);
+ //
+ // panelOptions
+ //
+ this.panelOptions.AutoScroll = true;
+ this.panelOptions.ColumnCount = 1;
+ this.panelOptions.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.panelOptions.Controls.Add(this.groupDuplex, 0, 3);
+ this.panelOptions.Controls.Add(this.groupSize, 0, 2);
+ this.panelOptions.Controls.Add(this.groupDepth, 0, 1);
+ this.panelOptions.Controls.Add(this.groupDPI, 0, 0);
+ this.panelOptions.Controls.Add(this.btnAllSettings, 0, 6);
+ this.panelOptions.Dock = System.Windows.Forms.DockStyle.Left;
+ this.panelOptions.Location = new System.Drawing.Point(0, 25);
+ this.panelOptions.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.panelOptions.Name = "panelOptions";
+ this.panelOptions.RowCount = 7;
+ this.panelOptions.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.panelOptions.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.panelOptions.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.panelOptions.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.panelOptions.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 23F));
+ this.panelOptions.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 23F));
+ this.panelOptions.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 23F));
+ this.panelOptions.Size = new System.Drawing.Size(259, 500);
+ this.panelOptions.TabIndex = 3;
+ //
+ // groupDuplex
+ //
+ this.groupDuplex.Controls.Add(this.ckDuplex);
+ this.groupDuplex.Dock = System.Windows.Forms.DockStyle.Top;
+ this.groupDuplex.Enabled = false;
+ this.groupDuplex.Location = new System.Drawing.Point(9, 231);
+ this.groupDuplex.Margin = new System.Windows.Forms.Padding(9, 9, 9, 9);
+ this.groupDuplex.Name = "groupDuplex";
+ this.groupDuplex.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.groupDuplex.Size = new System.Drawing.Size(241, 67);
+ this.groupDuplex.TabIndex = 6;
+ this.groupDuplex.TabStop = false;
+ this.groupDuplex.Text = "Duplex";
+ //
+ // ckDuplex
+ //
+ this.ckDuplex.AutoSize = true;
+ this.ckDuplex.Location = new System.Drawing.Point(21, 28);
+ this.ckDuplex.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.ckDuplex.Name = "ckDuplex";
+ this.ckDuplex.Size = new System.Drawing.Size(68, 19);
+ this.ckDuplex.TabIndex = 0;
+ this.ckDuplex.Text = "Enabled";
+ this.ckDuplex.UseVisualStyleBackColor = true;
+ this.ckDuplex.CheckedChanged += new System.EventHandler(this.ckDuplex_CheckedChanged);
+ //
+ // groupSize
+ //
+ this.groupSize.Controls.Add(this.comboSize);
+ this.groupSize.Dock = System.Windows.Forms.DockStyle.Top;
+ this.groupSize.Enabled = false;
+ this.groupSize.Location = new System.Drawing.Point(9, 157);
+ this.groupSize.Margin = new System.Windows.Forms.Padding(9, 9, 9, 3);
+ this.groupSize.Name = "groupSize";
+ this.groupSize.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.groupSize.Size = new System.Drawing.Size(241, 62);
+ this.groupSize.TabIndex = 5;
+ this.groupSize.TabStop = false;
+ this.groupSize.Text = "Size";
+ //
+ // comboSize
+ //
+ this.comboSize.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.comboSize.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ this.comboSize.FormattingEnabled = true;
+ this.comboSize.Location = new System.Drawing.Point(21, 22);
+ this.comboSize.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.comboSize.Name = "comboSize";
+ this.comboSize.Size = new System.Drawing.Size(197, 23);
+ this.comboSize.TabIndex = 0;
+ this.comboSize.SelectedIndexChanged += new System.EventHandler(this.comboSize_SelectedIndexChanged);
+ //
+ // groupDepth
+ //
+ this.groupDepth.Controls.Add(this.comboDepth);
+ this.groupDepth.Dock = System.Windows.Forms.DockStyle.Top;
+ this.groupDepth.Enabled = false;
+ this.groupDepth.Location = new System.Drawing.Point(9, 83);
+ this.groupDepth.Margin = new System.Windows.Forms.Padding(9, 9, 9, 3);
+ this.groupDepth.Name = "groupDepth";
+ this.groupDepth.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.groupDepth.Size = new System.Drawing.Size(241, 62);
+ this.groupDepth.TabIndex = 4;
+ this.groupDepth.TabStop = false;
+ this.groupDepth.Text = "Depth";
+ //
+ // comboDepth
+ //
+ this.comboDepth.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.comboDepth.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ this.comboDepth.FormattingEnabled = true;
+ this.comboDepth.Location = new System.Drawing.Point(21, 22);
+ this.comboDepth.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.comboDepth.Name = "comboDepth";
+ this.comboDepth.Size = new System.Drawing.Size(197, 23);
+ this.comboDepth.TabIndex = 0;
+ this.comboDepth.SelectedIndexChanged += new System.EventHandler(this.comboDepth_SelectedIndexChanged);
+ //
+ // groupDPI
+ //
+ this.groupDPI.Controls.Add(this.comboDPI);
+ this.groupDPI.Dock = System.Windows.Forms.DockStyle.Top;
+ this.groupDPI.Enabled = false;
+ this.groupDPI.Location = new System.Drawing.Point(9, 9);
+ this.groupDPI.Margin = new System.Windows.Forms.Padding(9, 9, 9, 3);
+ this.groupDPI.Name = "groupDPI";
+ this.groupDPI.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.groupDPI.Size = new System.Drawing.Size(241, 62);
+ this.groupDPI.TabIndex = 0;
+ this.groupDPI.TabStop = false;
+ this.groupDPI.Text = "DPI";
+ //
+ // comboDPI
+ //
+ this.comboDPI.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.comboDPI.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ this.comboDPI.FormattingEnabled = true;
+ this.comboDPI.Location = new System.Drawing.Point(21, 22);
+ this.comboDPI.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.comboDPI.Name = "comboDPI";
+ this.comboDPI.Size = new System.Drawing.Size(197, 23);
+ this.comboDPI.TabIndex = 0;
+ this.comboDPI.SelectedIndexChanged += new System.EventHandler(this.comboDPI_SelectedIndexChanged);
+ //
+ // btnAllSettings
+ //
+ this.btnAllSettings.Anchor = System.Windows.Forms.AnchorStyles.Top;
+ this.btnAllSettings.Enabled = false;
+ this.btnAllSettings.Location = new System.Drawing.Point(40, 356);
+ this.btnAllSettings.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.btnAllSettings.Name = "btnAllSettings";
+ this.btnAllSettings.Size = new System.Drawing.Size(178, 27);
+ this.btnAllSettings.TabIndex = 7;
+ this.btnAllSettings.Text = "Open driver settings";
+ this.btnAllSettings.UseVisualStyleBackColor = true;
+ this.btnAllSettings.Click += new System.EventHandler(this.btnAllSettings_Click);
+ //
+ // TestForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(936, 525);
+ this.Controls.Add(this.pictureBox1);
+ this.Controls.Add(this.panelOptions);
+ this.Controls.Add(this.toolStrip1);
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+ this.Name = "TestForm";
+ this.Text = "Test Form";
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
+ this.toolStrip1.ResumeLayout(false);
+ this.toolStrip1.PerformLayout();
+ this.panelOptions.ResumeLayout(false);
+ this.groupDuplex.ResumeLayout(false);
+ this.groupDuplex.PerformLayout();
+ this.groupSize.ResumeLayout(false);
+ this.groupDepth.ResumeLayout(false);
+ this.groupDPI.ResumeLayout(false);
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.PictureBox pictureBox1;
+ private System.Windows.Forms.SaveFileDialog saveFileDialog1;
+ private System.Windows.Forms.ToolStrip toolStrip1;
+ private System.Windows.Forms.ToolStripDropDownButton btnSources;
+ private System.Windows.Forms.ToolStripSeparator sepSourceList;
+ private System.Windows.Forms.ToolStripMenuItem reloadSourcesListToolStripMenuItem;
+ private System.Windows.Forms.TableLayoutPanel panelOptions;
+ private System.Windows.Forms.GroupBox groupDPI;
+ private System.Windows.Forms.GroupBox groupDepth;
+ private System.Windows.Forms.GroupBox groupSize;
+ private System.Windows.Forms.GroupBox groupDuplex;
+ private System.Windows.Forms.ComboBox comboDPI;
+ private System.Windows.Forms.ComboBox comboSize;
+ private System.Windows.Forms.ComboBox comboDepth;
+ private System.Windows.Forms.ToolStripButton btnStartCapture;
+ private System.Windows.Forms.ToolStripButton btnStopScan;
+ private System.Windows.Forms.ToolStripButton btnSaveImage;
+ private System.Windows.Forms.CheckBox ckDuplex;
+ private System.Windows.Forms.Button btnAllSettings;
+ }
+}
+
diff --git a/samples/Sample.Net5Winform/TestForm.cs b/samples/Sample.Net5Winform/TestForm.cs
new file mode 100644
index 0000000..3c955e6
--- /dev/null
+++ b/samples/Sample.Net5Winform/TestForm.cs
@@ -0,0 +1,421 @@
+using NTwain;
+using NTwain.Data;
+using System;
+using System.Diagnostics;
+using System.Drawing;
+using System.Drawing.Imaging;
+using System.Linq;
+using System.Reflection;
+using System.Threading;
+using System.Windows.Forms;
+
+namespace Sample.Net5Winform
+{
+ public partial class TestForm : Form
+ {
+ ImageCodecInfo _tiffCodecInfo;
+ TwainSession _twain;
+ bool _stopScan;
+ bool _loadingCaps;
+
+
+ #region setup & cleanup
+
+ public TestForm()
+ {
+ InitializeComponent();
+ if (NTwain.PlatformInfo.Current.IsApp64Bit)
+ {
+ Text = Text + " (64bit)";
+ }
+ else
+ {
+ Text = Text + " (32bit)";
+ }
+ foreach (var enc in ImageCodecInfo.GetImageEncoders())
+ {
+ if (enc.MimeType == "image/tiff") { _tiffCodecInfo = enc; break; }
+ }
+ }
+
+ protected override void OnHandleCreated(EventArgs e)
+ {
+ base.OnHandleCreated(e);
+ SetupTwain();
+
+ }
+
+ protected override void OnFormClosing(FormClosingEventArgs e)
+ {
+ if (_twain != null)
+ {
+ if (e.CloseReason == CloseReason.UserClosing && _twain.State > 4)
+ {
+ e.Cancel = true;
+ }
+ else
+ {
+ CleanupTwain();
+ }
+ }
+ base.OnFormClosing(e);
+ }
+
+ private void SetupTwain()
+ {
+ var appId = TWIdentity.CreateFromAssembly(DataGroups.Image, Assembly.GetEntryAssembly());
+ _twain = new TwainSession(appId);
+ _twain.StateChanged += (s, e) =>
+ {
+ PlatformInfo.Current.Log.Info("State changed to " + _twain.State + " on thread " + Thread.CurrentThread.ManagedThreadId);
+ };
+ _twain.TransferError += (s, e) =>
+ {
+ PlatformInfo.Current.Log.Info("Got xfer error on thread " + Thread.CurrentThread.ManagedThreadId);
+ };
+ _twain.DataTransferred += (s, e) =>
+ {
+ PlatformInfo.Current.Log.Info("Transferred data event on thread " + Thread.CurrentThread.ManagedThreadId);
+
+ // example on getting ext image info
+ var infos = e.GetExtImageInfo(ExtendedImageInfo.Camera).Where(it => it.ReturnCode == ReturnCode.Success);
+ foreach (var it in infos)
+ {
+ var values = it.ReadValues();
+ PlatformInfo.Current.Log.Info(string.Format("{0} = {1}", it.InfoID, values.FirstOrDefault()));
+ break;
+ }
+
+ // handle image data
+ Image img = null;
+ if (e.NativeData != IntPtr.Zero)
+ {
+ var stream = e.GetNativeImageStream();
+ if (stream != null)
+ {
+ img = Image.FromStream(stream);
+ }
+ }
+ else if (!string.IsNullOrEmpty(e.FileDataPath))
+ {
+ img = new Bitmap(e.FileDataPath);
+ }
+ if (img != null)
+ {
+ this.BeginInvoke(new Action(() =>
+ {
+ if (pictureBox1.Image != null)
+ {
+ pictureBox1.Image.Dispose();
+ pictureBox1.Image = null;
+ }
+ pictureBox1.Image = img;
+ }));
+ }
+ };
+ _twain.SourceDisabled += (s, e) =>
+ {
+ PlatformInfo.Current.Log.Info("Source disabled event on thread " + Thread.CurrentThread.ManagedThreadId);
+ this.BeginInvoke(new Action(() =>
+ {
+ btnStopScan.Enabled = false;
+ btnStartCapture.Enabled = true;
+ panelOptions.Enabled = true;
+ LoadSourceCaps();
+ }));
+ };
+ _twain.TransferReady += (s, e) =>
+ {
+ PlatformInfo.Current.Log.Info("Transferr ready event on thread " + Thread.CurrentThread.ManagedThreadId);
+ e.CancelAll = _stopScan;
+ };
+
+ // either set sync context and don't worry about threads during events,
+ // or don't and use control.invoke during the events yourself
+ PlatformInfo.Current.Log.Info("Setup thread = " + Thread.CurrentThread.ManagedThreadId);
+ _twain.SynchronizationContext = SynchronizationContext.Current;
+ if (_twain.State < 3)
+ {
+ // use this for internal msg loop
+ _twain.Open();
+ // use this to hook into current app loop
+ //_twain.Open(new WindowsFormsMessageLoopHook(this.Handle));
+ }
+ }
+
+ private void CleanupTwain()
+ {
+ if (_twain.State == 4)
+ {
+ _twain.CurrentSource.Close();
+ }
+ if (_twain.State == 3)
+ {
+ _twain.Close();
+ }
+
+ if (_twain.State > 2)
+ {
+ // normal close down didn't work, do hard kill
+ _twain.ForceStepDown(2);
+ }
+ }
+
+ #endregion
+
+ #region toolbar
+
+ private void btnSources_DropDownOpening(object sender, EventArgs e)
+ {
+ if (btnSources.DropDownItems.Count == 2)
+ {
+ ReloadSourceList();
+ }
+ }
+
+ private void reloadSourcesListToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ ReloadSourceList();
+ }
+
+ private void ReloadSourceList()
+ {
+ if (_twain.State >= 3)
+ {
+ while (btnSources.DropDownItems.IndexOf(sepSourceList) > 0)
+ {
+ var first = btnSources.DropDownItems[0];
+ first.Click -= SourceMenuItem_Click;
+ btnSources.DropDownItems.Remove(first);
+ }
+ foreach (var src in _twain)
+ {
+ var srcBtn = new ToolStripMenuItem(src.Name);
+ srcBtn.Tag = src;
+ srcBtn.Click += SourceMenuItem_Click;
+ srcBtn.Checked = _twain.CurrentSource != null && _twain.CurrentSource.Name == src.Name;
+ btnSources.DropDownItems.Insert(0, srcBtn);
+ }
+ }
+ }
+
+ void SourceMenuItem_Click(object sender, EventArgs e)
+ {
+ // do nothing if source is enabled
+ if (_twain.State > 4) { return; }
+
+ if (_twain.State == 4) { _twain.CurrentSource.Close(); }
+
+ foreach (var btn in btnSources.DropDownItems)
+ {
+ var srcBtn = btn as ToolStripMenuItem;
+ if (srcBtn != null) { srcBtn.Checked = false; }
+ }
+
+ var curBtn = (sender as ToolStripMenuItem);
+ var src = curBtn.Tag as DataSource;
+ if (src.Open() == ReturnCode.Success)
+ {
+ curBtn.Checked = true;
+ btnStartCapture.Enabled = true;
+ LoadSourceCaps();
+ }
+ }
+
+ private void btnStartCapture_Click(object sender, EventArgs e)
+ {
+ if (_twain.State == 4)
+ {
+ //_twain.CurrentSource.CapXferCount.Set(4);
+
+ _stopScan = false;
+
+ if (_twain.CurrentSource.Capabilities.CapUIControllable.IsSupported)//.SupportedCaps.Contains(CapabilityId.CapUIControllable))
+ {
+ // hide scanner ui if possible
+ if (_twain.CurrentSource.Enable(SourceEnableMode.NoUI, false, this.Handle) == ReturnCode.Success)
+ {
+ btnStopScan.Enabled = true;
+ btnStartCapture.Enabled = false;
+ panelOptions.Enabled = false;
+ }
+ }
+ else
+ {
+ if (_twain.CurrentSource.Enable(SourceEnableMode.ShowUI, true, this.Handle) == ReturnCode.Success)
+ {
+ btnStopScan.Enabled = true;
+ btnStartCapture.Enabled = false;
+ panelOptions.Enabled = false;
+ }
+ }
+ }
+ }
+
+ private void btnStopScan_Click(object sender, EventArgs e)
+ {
+ _stopScan = true;
+ }
+
+ private void btnSaveImage_Click(object sender, EventArgs e)
+ {
+ var img = pictureBox1.Image;
+
+ if (img != null)
+ {
+ switch (img.PixelFormat)
+ {
+ case PixelFormat.Format1bppIndexed:
+ saveFileDialog1.Filter = "tiff files|*.tif";
+ break;
+ default:
+ saveFileDialog1.Filter = "png files|*.png";
+ break;
+ }
+
+ if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
+ {
+ if (saveFileDialog1.FileName.EndsWith(".tif", StringComparison.OrdinalIgnoreCase))
+ {
+ EncoderParameters tiffParam = new EncoderParameters(1);
+
+ tiffParam.Param[0] = new EncoderParameter(Encoder.Compression, (long)EncoderValue.CompressionCCITT4);
+
+ pictureBox1.Image.Save(saveFileDialog1.FileName, _tiffCodecInfo, tiffParam);
+ }
+ else
+ {
+ pictureBox1.Image.Save(saveFileDialog1.FileName, ImageFormat.Png);
+ }
+ }
+ }
+ }
+
+ #endregion
+
+ #region cap control
+
+
+ private void LoadSourceCaps()
+ {
+ var src = _twain.CurrentSource;
+ _loadingCaps = true;
+
+ //var test = src.SupportedCaps;
+
+ if (groupDepth.Enabled = src.Capabilities.ICapPixelType.IsSupported)
+ {
+ LoadDepth(src.Capabilities.ICapPixelType);
+ }
+ if (groupDPI.Enabled = src.Capabilities.ICapXResolution.IsSupported && src.Capabilities.ICapYResolution.IsSupported)
+ {
+ LoadDPI(src.Capabilities.ICapXResolution);
+ }
+ // TODO: find out if this is how duplex works or also needs the other option
+ if (groupDuplex.Enabled = src.Capabilities.CapDuplexEnabled.IsSupported)
+ {
+ LoadDuplex(src.Capabilities.CapDuplexEnabled);
+ }
+ if (groupSize.Enabled = src.Capabilities.ICapSupportedSizes.IsSupported)
+ {
+ LoadPaperSize(src.Capabilities.ICapSupportedSizes);
+ }
+ btnAllSettings.Enabled = src.Capabilities.CapEnableDSUIOnly.IsSupported;
+ _loadingCaps = false;
+ }
+
+ private void LoadPaperSize(ICapWrapper cap)
+ {
+ var list = cap.GetValues().ToList();
+ comboSize.DataSource = list;
+ var cur = cap.GetCurrent();
+ if (list.Contains(cur))
+ {
+ comboSize.SelectedItem = cur;
+ }
+ var labelTest = cap.GetLabel();
+ if (!string.IsNullOrEmpty(labelTest))
+ {
+ groupSize.Text = labelTest;
+ }
+ }
+
+
+ private void LoadDuplex(ICapWrapper cap)
+ {
+ ckDuplex.Checked = cap.GetCurrent() == BoolType.True;
+ }
+
+
+ private void LoadDPI(ICapWrapper cap)
+ {
+ // only allow dpi of certain values for those source that lists everything
+ var list = cap.GetValues().Where(dpi => (dpi % 50) == 0).ToList();
+ comboDPI.DataSource = list;
+ var cur = cap.GetCurrent();
+ if (list.Contains(cur))
+ {
+ comboDPI.SelectedItem = cur;
+ }
+ }
+
+ private void LoadDepth(ICapWrapper cap)
+ {
+ var list = cap.GetValues().ToList();
+ comboDepth.DataSource = list;
+ var cur = cap.GetCurrent();
+ if (list.Contains(cur))
+ {
+ comboDepth.SelectedItem = cur;
+ }
+ var labelTest = cap.GetLabel();
+ if (!string.IsNullOrEmpty(labelTest))
+ {
+ groupDepth.Text = labelTest;
+ }
+ }
+
+ private void comboSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (!_loadingCaps && _twain.State == 4)
+ {
+ var sel = (SupportedSize)comboSize.SelectedItem;
+ _twain.CurrentSource.Capabilities.ICapSupportedSizes.SetValue(sel);
+ }
+ }
+
+ private void comboDepth_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (!_loadingCaps && _twain.State == 4)
+ {
+ var sel = (PixelType)comboDepth.SelectedItem;
+ _twain.CurrentSource.Capabilities.ICapPixelType.SetValue(sel);
+ }
+ }
+
+ private void comboDPI_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (!_loadingCaps && _twain.State == 4)
+ {
+ var sel = (TWFix32)comboDPI.SelectedItem;
+ _twain.CurrentSource.Capabilities.ICapXResolution.SetValue(sel);
+ _twain.CurrentSource.Capabilities.ICapYResolution.SetValue(sel);
+ }
+ }
+
+ private void ckDuplex_CheckedChanged(object sender, EventArgs e)
+ {
+ if (!_loadingCaps && _twain.State == 4)
+ {
+ _twain.CurrentSource.Capabilities.CapDuplexEnabled.SetValue(ckDuplex.Checked ? BoolType.True : BoolType.False);
+ }
+ }
+
+ private void btnAllSettings_Click(object sender, EventArgs e)
+ {
+ _twain.CurrentSource.Enable(SourceEnableMode.ShowUIOnly, true, this.Handle);
+ }
+
+ #endregion
+ }
+}
diff --git a/samples/Sample.Net5Winform/TestForm.resx b/samples/Sample.Net5Winform/TestForm.resx
new file mode 100644
index 0000000..4b2dc44
--- /dev/null
+++ b/samples/Sample.Net5Winform/TestForm.resx
@@ -0,0 +1,1054 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+ YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+ 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+ bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+ VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+ c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+ Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+ mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+ kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+ TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+ YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+ 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+ bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+ VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+ c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+ Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+ mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+ kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+ TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+ YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+ 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+ bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+ VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+ c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+ Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+ mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+ kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+ TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+ YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+ 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+ bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+ VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+ c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+ Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+ mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+ kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+ TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+
+
+
+
+ AAABAAoAMDAQAAEABABoBgAApgAAACAgEAABAAQA6AIAAA4HAAAQEBAAAQAEACgBAAD2CQAAMDAAAAEA
+ CACoDgAAHgsAACAgAAABAAgAqAgAAMYZAAAQEAAAAQAIAGgFAABuIgAAAAAAAAEAIAD4dgAA1icAADAw
+ AAABACAAqCUAAM6eAAAgIAAAAQAgAKgQAAB2xAAAEBAAAAEAIABoBAAAHtUAACgAAAAwAAAAYAAAAAEA
+ BAAAAAAAgAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDA
+ wAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACHeAAAAAAAAAAAAAAAAAAAAAAAAACHd3d3dngAAA
+ AAAAAAAAAAAAAAAAAAh3d3iIiIdxZwAAAAAAAAAAAAAAAACId3d3eIeHeHh3d3cAAAAAAAAAAAAACHh3
+ d3d4d4iIj4iHd0d3AAAAAAAAAACHh3d3d4iP/4+P//iId3d3dwAAAAAAAIeHd3h4Z4j4j//////4iId3
+ Z3gAAAAAAHd3iIiIiI////j4iIj/+Id3d3dwAAAAAHiIj4+P//j4h4d4x3eI//iId3d3gAAACIiP///4
+ h3d2d+jIeMhoiP/4h4d3d4AAB4+Ph4d3Z3Z3h46HyOiGd3iI+Id3d3AACId3dnZ3d3eM58ZGZBZHZ3d4
+ iP+IeHAAAACHh3Vnd2VnRyd4iHd1cEJCd4iPh4AAAAAAh3dwRWV3iP//+Pj4j4h1Z3d4iHAAAAAAAAgn
+ eI+P/4j4+P+Pj4/4+IiId4AAAAD4iI////j4j/iPj4j4+PiPj4+Ih4AAAAh4j/iIiI+PiI+PiPiPiIiI
+ h4eIgAAAAAiIeHiIiIiIj4+I+IiIh4iIgAAAAAAAAAAAAACIiIeIeHeHeIiIgAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///////wAA////h///AAD//+AB//8AAP/+AAD//wAA/8AAAD//AAD+AAAAD/8AAPAA
+ AAAD/wAAwAAAAAD/AADAAAAAAH8AAMAAAAAAHwAAgAAAAAAHAACAAAAAAAcAAIAAAAAABwAA8AAAAAAH
+ AAD8AAAAAAcAAP+AAAAABwAA8AAAAAAHAADgAAAAAB8AAOAAAAAH/wAA/8AAAf//AAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAAKAAAACAAAABAAAAAAQAEAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACA
+ gACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAACHd3cAAAAAAAAAAAAAAHd3d4h2dwAAAAAAAAAAd3d3eIiPh3F3AAAAAAAHd3d3iP///4h3Z3AA
+ AAAAd3eIeI//j/j/iId3cAAACHiPj4/4iHh8iPiId2dwAAiP+Ph3dnjsh4d4iIh3dwAIh2AHd3d8d3Z2
+ d3eIiHcAAACHBkdniI+IiId2d3eIAAAAB3eI+Pj4//j4+Ih3dwAAB3j4+I+Pj4iPiIiIiHgAAAiIiIiI
+ h4iIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////////////////////////////////////////////wP///A
+ A//8AAD/4AAAf8AAAB+AAAAHgAAAA4AAAAPwAAAD+AAAA+AAAAPgAAB/////////////////////////
+ ////////////////////////////////////////KAAAABAAAAAgAAAAAQAEAAAAAACAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8A
+ AAD/AP8A//8AAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIiIiIiIiIiHd3d3d3d3d3j4+Ph2iP
+ j4j4+Pj4j/j4/w+I5+fn54iAAAUlR1VlYAAAd3d3Y3d3AAd3d3d3d3dwd3d3d3d3d3gAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA//8AAAAAAAAAAAAAAAAAAAAAAACAAQAA4AcAAMAD
+ AACAAQAAAAAAAP//AAD//wAA//8AAP//AAAoAAAAMAAAAGAAAAABAAgAAAAAAAAJAAAAAAAAAAAAAAAB
+ AAAAAQAAAAAAADQuLQAzMC4ANjMsADk2LwA+NjUAQDoyAEA9NwBBPjwAS0QvAFVGKwBRRC4AXUwqAE9H
+ MQBKRTcAQ0I9AExIOABWSzYAUEs8AFVQPgBrXjAARkVAAExKRABST0IAVk9AAFBNSQBXT0oAUlBLAFtS
+ SwBZUE0AXlJPAFhWTgBbWVEAX1hRAFxaVABeXFUAaFZCAHZcTgBtV1UAZlhTAGdeVABhX1gAfV9dAGZk
+ XABqY1gAaGVeAGlnYABqaWEAbWphAG1rZABubWUAfWdiAHJqYABzamYAc25nAHJvaABycGgAdHJqAHhy
+ bQB6eG8AeHZwAH51cAB6eHAAfHpyAH58dQCFdj4Ag2JfAItnXwCAbF4ApHdaAKteYwCyXmsAjG9rAJZz
+ awCccmkAh3VzAIB+dQCKfHMAgX94AKx/awC0f24AvGd0AK1/dQDCe30Ay35+AKWMVgCCgHcAjIF1AIOB
+ eQCEgXkAhYN8AIaEfQCIgngAjIJ7AI6CfQCIhn8Aj4Z9AIyIfgCSh3oAkoV/AJKJfgCVin8Alox/AJyQ
+ fACvjnYAuYlzALeLfwDIj20AwZJsAMWLcwDOjnQAxIN6ANGJeQDFlnMAxJl/AMWkZwDapWwAx6NzAM2l
+ fADVqHoA37V0AOGzawDPfIAAiYeAAI6EgwCLioIAjoyDAI2LhACOjYYAj42IAJKKgACTjIIAlY2CAJWK
+ hwCRjoUAmY2BAJyPgwCYjYYAkI6IAJiQhwCSkIoAlpKJAJSSjACWlIwAmZOJAJ6ViwCZlo4AnZaNAJiW
+ kACamJEAnZmSAJ2blgCenJYAr5qMAKGakQClmpAAoJ2WAKWelQChn5kApJ6ZAL2ckACvooUApqCXAKKg
+ mQCloZkApKKcAKakngCoopoArqOZAKukmwCopZ0ArKefALejmwCmpKAAqaehAKynoACqqKIArqqiAKmo
+ pACsqqQAraymAK+uqAC7qaIAsK6pALWtqACysKoAsrGtALSzrQC1tK4AuLOtALm1rgC2tbAAuLexALi4
+ sgC6ubQAvLu2AL28twC+vbgA0oGAAMKRhwDAr4cAy6+GAMO6sQDBvrkAyb+8AM2/vADBwLsAwcG9AMTD
+ vwDGxcEAyMbCAMrJxQDNzMkA0c/MANTPzADR0c4A1dPPANTT0ADV1NEA19bUANjX1QDZ2NYA2trYANzb
+ 2ADd3NoA397cAODf3ADh4N4A4uLgAOTk4gDm5uQA6OjmAOrq6ADs7OsA7e3sAPLy8QD09PMA9fX1APn5
+ +QD+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAACtgX2zAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACzlX1ZPz9Z
+ hiMjWbkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKWGWUxhj6W5xdLSuVkvHymPAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAADEqo9khoaGkJWqs7Oqqp2dqrl9OSsfI4oAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAC5nZ2QZGCGYGSGiJOiqr7L1Nji5NDBslk8Ly8vpQAAAAAAAAAAAAAAAAAAAACznZ2dYFdkhleG
+ scvU5Obm6Ojq6+vu7t65ub+VTD8vKz+zAAAAAAAAAAAAAAAAuaqqh2Bih6qqkBU2xNji5Ojr7u7u7u7u
+ 7u7r2b+5s4FZWS8ve7kAAAAAAAAAAAAAkIiHh6LT2NDLwb/S3uju7u7u6+jk3djNzeTr7erZv7eXe3tO
+ OTyPAAAAAAAAAAAAh6q+0+Li3N7k6O7u7ujj1MS5rKDHU1FHRlK22ert7d6/rY59gWFOP7MAAAAAAACq
+ udLU5Ovu7u7o3NKzkGFLSEpQbW5wxnpUb2lomcve6Ovt3sWej4GBWVmKuQAAAACyuero5NS5naWePCcn
+ KkJDT3F3eHl0a0VsdsnIoYdXh8HU3ujjv5WPjo+BjwAAAADYpZWVhkwuHR06mmBCSWpydXNVQRQMCgoN
+ DRYTGB81e4WFqtDZ5OTFl46OlQAAAAAAAACzkI9MNiwoNYVkRCUkEQkQFzaV08WtfTkuKRoIAQEBBR2Q
+ v9Tk5NKOlwAAAAAAAAAAANSzlXshBgMGBxYvpdTm6+vr6+jo6+jo5N7Zy55MLho3P32Vst6tpQAAAAAA
+ AAAAAAAAALkVI4/Q5Ovr6+vo5OTk5OTk5OTk5OTk6Ojr6OTe1NK/uZeKlQAAAAAAAADd08XS1OTq6+vo
+ 6OTk4t7i4uLe4t7i3uLe5N7k4t7e3d7k5OjTv7OlswAAAAAAAMSludLn5OLe3t7e3t7e3t7e3t7e3t7e
+ 3t7e3t3Z1NTLwbmzpZ6zxNAAAAAAAAAAANm5s6WlnqWys7m/xNDS09TY2Nzc3NzU1NLLubGlpbPE0tkA
+ AAAAAAAAAAAAAAAAAAAAAAAAAADZ1NDEubOyqqWdlZWVlZWlsrPE0twAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////wAA////////AAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///4f//wAA///gAf//AAD//gAA//8AAP/AAAA//wAA/gAAAA//AADwAAAAA/8AAMAA
+ AAAA/wAAwAAAAAB/AADAAAAAAB8AAIAAAAAABwAAgAAAAAAHAACAAAAAAAcAAPAAAAAABwAA/AAAAAAH
+ AAD/gAAAAAcAAPAAAAAABwAA4AAAAAAfAADgAAAAB/8AAP/AAAH//wAA////////AAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AACgA
+ AAAgAAAAQAAAAAEACAAAAAAAAAQAAAAAAAAAAAAAAAEAAAABAAAAAAAAHh0WACQiHwAqKB4AJCMgAFFO
+ PwBUUkoAWlhRAF1YVABhXVcAZF9YAGVhWgBlY1wAZmVdAGljWwBoZl0AbGddAHBnVgBkY2AAaWdgAGtp
+ YgBsamMAbWpkAG5sZAB/ZWYAdWtjAHVtYgB0aWcAcW1lAHZtZQBxb2kAd3JnAHJwaAB1c20AdnVuAH93
+ cQB9e3MAfnxzAHx6dAB/fXYAf354AIhkYQCGbGYAhnRvAIB5dACBf3YAtGVtAK9/bADDcHwAj4BeAIKB
+ eQCEg3kAhYN8AIqAewCJhn4ArJFkAK+DdwC9gXUAwJl2AM+bdgDNknsAw558ANGQdgDZo3EAiYeBAIuK
+ gwCMioIAjIuHAJaNhwCSkIsAlJKNAJaUjQCYlo4AlpWQAJmXkgCbmpMAmpmVAJ6clQCfnZgArIuEALCc
+ gACgnpcAoJ+cAKiglQCjoZoAo6GcAKSinACnpqIAqKagAKqoogCrqaQAraulAK6spwCxsKoAsrKsALSz
+ rQC1tbAAuLexALm4tAC+vbgAz4iBAM2XiQDGp6MAyb+8AMHAuwDDwr4AxMO/AMXFwQDIxcEAysnFAM3N
+ ygDQz8wA0dDNANLS0ADU09AA1dTRANbW1ADY1dMA2NfVANnZ1gDb2tgA3NvZAN3c2gDf3t0A6d/eAOHg
+ 3gDi4uAA5OTiAObm5ADo6OYA6urpAO3t7ADx7OoA8PDvAPLy8QD29fMA9vb2APr6+gAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAV0MmIiI2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEooIiZDTVthQwYMRwAAAAAAAAAA
+ AAAAAAAAAABHJiITIjRWY251eH1qRxMGE00AAAAAAAAAAAAAAE0mExM0E1FqeH9/g4aGiX9hXEMPByIA
+ AAAAAAAAAAA0DCZfal9HYX2GhomGiYR8hoNxX040DAwmAAAAAAAAYk1ofX99f4OGgnVnZmVkMC5PanyD
+ d2FHQxMTRwAAAABYd3+CfXhqRCsYKS87Pz45PD1QVl9ueHVfR0MTNAAAAGpbQwcCASw2Kjg6NzERDx8K
+ Dx0aGitAVnV1Yk1DAAAAAAAAUhIEAwUaChpJYnWCf3dvalhDEwgIDAxObkcAAAAAAAAASSY0Um1/g4OC
+ f39/f39/f39/f3VqVyImQwAAAAAALEhueIKCf3h4eHh4eHh4eHh4d3FqamhiW1liAAAAAABfX19fX19f
+ X19fX19fX19fX19fY25vAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////////////
+ //////////////////////////wP///AA//8AAD/4AAAf8AAAB+AAAAHgAAAA4AAAAPwAAAD+AAAA+AA
+ AAPgAAB/////////////////////////////////////////////////////////////////KAAAABAA
+ AAAgAAAAAQAIAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAAAAABLSkUAdHJqAIKAdwDcrU4A26dWANyl
+ VgDcqVIA3K5RAJuZkgC7urUAwcC7AM3MyQDk5OIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCgoKCgoKCgoKCgoKCgoKCQkJCQkJCQkJCQkJCQkJCQwM
+ DAwMDAoBAQoMDAwMDAwNDQ0NDQ0NDQ0NDQ0NDQ0NAA0LCwYHBAQHBwcHCwsNAAAAAAEBAQEBAQEBAQEA
+ AAAAAAICAgICAgICAgICAgAAAAMDAwMDAwMDAwMDAwMDAAkJCQkJCQkJCQkJCQkJCQkAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8AAP//
+ AAD//wAAAAAAAAAAAAAAAAAAAAAAAIABAADgBwAAwAMAAIABAAAAAAAA//8AAP//AAD//wAA//8AAIlQ
+ TkcNChoKAAAADUlIRFIAAAEAAAABAAgGAAAAXHKoZgAAIABJREFUeJzsvVmQHVl6HvadJbe71b4BKOxo
+ NHqme4a9kzMcbmGblG2FwlZIlixS9BK29aII22E/2A+OcPjJobBJUaZELbYcNE3TYlAkNZwZefZuStPD
+ 6Z7euzGNBlBAAai96u65nDzn+OGck5V1catQQE/PIuUXUVH3Zua9N7f/+/c/gQoVKlSoUKFChQoVKlSo
+ UKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoV
+ KlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFC
+ hQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSo
+ UKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoV
+ KlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFC
+ hQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSoUKFChQoVKlSo
+ 8OMK8sPegQrHwx994YuNmZmZieFwuJim6Yk4SU5kmTjl+96SEPm0EGIuz/NJqVSLEpIwxjqEEA0AhBDK
+ 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
+ AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
+ AgICAgICAgICAgI+/j94AIwHK9igmgAAAABJRU5ErkJggigAAAAwAAAAYAAAAAEAIAAAAAAAgCUAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA
+ AAIAAAAEAAAABQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAQAAAAGAAAACgAA
+ AA4AAAATAAAAGQAAAB8AAAAlAAAAKAAAACAAAAAQAAAABQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABQAAAAkAAAAPAAAAFgAA
+ AB0AAAAkIiEfN0dGQVdYV1F0amhhmW1rZMN9e3LihoR6sBQUE0UAAAAwAAAAHgAAAA0AAAADAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAACQAAABAAAAAZAAAAIgAA
+ AClRUEpcaGZfkXd1bbt7eXDbe3hw7nl3b/l6eHD9hIJ5/5COhv9fXVX/W1lR/358c/J0cmqPAAAAPAAA
+ AC0AAAAZAAAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAUAAAAKAAAAEAAAABkAAAAiS0pFRmto
+ YX53dGusfXpx2YB8c/SBfXX8i4d9/JeTiv+koZr/s7Cq/769uP/IxsL/x8bC/7Wzrv+GhH3/aWhg/1hW
+ Tv9hX1j+hIJ531dWUG8AAAA5AAAAJgAAABQAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAYAAAANAAAAFggICCVCQT1Kg392hpGL
+ gsaQioHvkYqA/pOMgv6Si4L/k42E/5iTif+fm5L/qaSc/66ro/+uqaH/rKef/6eimf+ln5b/o52V/6eh
+ mf+wrqr/jo2H/3Nxaf9mZF3/WFZO/15cVv6CgHffPz46XAAAADgAAAAmAAAAEwAAAAYAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAGAAAAEwAAACFsamNojIl/qJeR
+ iN+hmI/7npWL/5OKgP+Phn3/k4qB/5GJfv+Ti4H/lIyC/5iQh/+dlo3/paCX/6ynoP+4s63/wb65/8/N
+ yf/V08//4N/c/+Pi4P/Cwr7/t7ey/6mno/+Fg3z/eHZw/29uZv9oZl7/a2li+4OBeLgfHx1LAAAAMgAA
+ AB8AAAAOAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANsamM6iYZ8sZiT
+ iuumnZT8pZqQ/5WKf/+MgXX/k4p//5OLgf+Ignj/k4+G/66rpP++vLf/0c/M/+Hh3//m5uT/5ubk/+jo
+ 5v/q6uj/7e3s//Hx8P/19fX/+Pj4//r6+v/a2tj/sK6p/7Kyrv+1tbD/mJaQ/358df9+fHX/aGde/2Zk
+ XP93dW34fnxzoQAAAD4AAAAvAAAAHAAAAAoAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAp6WfFqKf
+ l8Sqo5r8rqOZ/pqOgv+Sh3r/kod7/5eOg/+oo5v/qqeg/5mWjv9DQj3/cnBo/769uP/T0s//397c/+Xl
+ 4//q6uj/8fHw//f39//7+/v//Pz8//39/f/7+/v/+fn5//r6+v/8/Pz/8/Pz/9HRz/+1tbD/srKu/6mn
+ o/+Ni4X/hYN8/4OBev9ramL/bWpi/oKAd/B5d2+SBQUFPwAAACwAAAAaAAAACwAAAAMAAAAAAAAAAAAA
+ AAAAAAAAh4V8NJmRh/qcj4P/mIyA/5eNgv+moJj/y8jE/9XU0f/Ew7//vby3/7i3sf+3trD/x8bC/97d
+ 2//s7Ov/9fX1//v7+//8/Pz/9/f3//Pz8v/r6+r/4N/d/9bV0v/Uz8z/zb+8/8m/vP/h4d//8vLx//X1
+ 9f/t7e3/1NTR/7Kyrv+wrqn/nZuW/4mHgf+Jh4H/f352/3Jwaf96eG//jIqB6GBeWHAAAAA6AAAAKgAA
+ ABYAAAAGAAAAAQAAAAAAAAAAnZuUe5SMgfynoJf/uLSu/8vKxv/g393/3t3b/9nY1v/d3Nr/4+Ph/+3t
+ 7P/39/f//Pz8//X19f/u7u3/397c/83MyP+7urX/ta2o/7ejm/+9nJD/wpGH/8J7ff+8Z3T/sl5r/6te
+ Y/+tf3X/u6mi/9fW1P/t7ez/9PT0//X19f/c3Nn/tbWw/6elof+Uko3/jYuF/46Nh/+Ihn//gX94/399
+ dP2WlIzOPTw4WAAAADYAAAAhAAAADQAAAAIAAAAAoJ6X6bKxq//HxsL/z87L/+bm5P/z8/L/9vb2//r6
+ +v/19fT/6Ojm/9jX1f/FxMD/qqii/5qUjP+Mgnv/h3Vz/4xva/+ccmn/tH9u/8WLc//OjnT/0Yl5/9KB
+ gP/PfID/y35+/8SDev+5iXP/r452/6+ajP/DurH/3dvY/+3t7P/v7+3/+Pj4/9zc2f+5ubX/oZ+b/5KQ
+ i/+SkIv/jo2H/4OBev+Egnv/kI6G+5qYkLwAAAA9AAAAHwAAAAUAAAAAoqCZ7rW0rv/v7+7/7Ozr/+Df
+ 3f/NzMn/tbSu/6Cel/+moZz/pJ6Z/351cP9mWFP/bVdV/31fXf+DYl//i2df/6x/a//FlnP/1ah6/9+1
+ dP/hs2v/2qVs/8iPbf+kd1r/wZJs/82lfP/Lr4b/wK+H/6+ihf+ckHz/inxz/5iNhv+6tq//z87L/93d
+ 2//n5+f/4eHe/7e3sv+bmJL/lJKN/5SSjf+SkIv/j46I/5KQiP4AAAAvAAAAFgAAAAMAAAAAs7Ksk6Ce
+ l/OcmpP+lpSM/4+NhP+AfnX/a2Rf/1lQTf9XT0r/eHJt/5+Yk/+Ogn3/fWdi/5Zza/+3i3//xJl//8ej
+ c//FpGf/pYxW/4V2Pv9rXjD/XUwq/1VGK/9RRC7/T0cx/0pFN/9QSzz/VVA+/1ZPQP9bUkv/c2pm/46E
+ g/+Viof/koV//6ihmv/Ew7//0tLO/+Pj4f/j4+H/vLy3/52blv+YlpD/lZOM/5mXj/0AAAAHAAAAAQAA
+ AAAAAAAAAAAAALGwqhmjoZp7nJqT05eVjfqQjoX/goB3/3NuZ/9qY1j/Z15U/3JqYP+RiYD/lox//4Bs
+ Xv92XE7/aFZC/1ZLNv9LRC//TEg4/1JPQv9ua2D/n52W/8fGwv+/vrn/p6Wf/46Mg/90cmr/aWdg/2Ff
+ Wf9SUEv/QT48/zMwLv80Ly7/NC0t/z42Nf9eUk//m5WN/7W0r//JycX/4+Ph/+Pj4f/AwLz/mZeR/5+d
+ lv0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJORiSejoZqGmZePypeVjfeKh3/9X1hR/kA6
+ Mv82Myz/OTYv/0A9N/9MSkT/bmxl/6Ohmv/NzMn/5ubk//Hx8P/19fT/9PTz//Ly8f/t7ez/7e3s/+/v
+ 7v/u7u3/6uro/+Tk4v/e3dv/0tHO/7++uf+gnpf/goB3/2hlX/9QTUn/cm9o/3t5cP+Rj4f/mZiS/6qo
+ o//c3Nn/paOd/6GfmP0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAo6GaBa+u
+ qCqgnpfFREM+/FxaVP+Zl4//xMO//+Xl4//z8/L/9fX1//Pz8v/v7+7/6+vq/+Xl4//i4uD/4eHf/+Hh
+ 3//h4d//4uLg/+Hh3//h4d//4N/d/+Hg3v/i4uD/5OTi/+np5//t7ez/8fHw/+zs6//l5eP/3t3b/83M
+ yf/Dwr7/tbSu/7Kxq/+enZf/kI6I/5+dlv4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7urUouLeyg7a1
+ r7S2ta/hw8K+9s3MyP3g39398fHw/vX19f/z8/L/7u7t/+np5//j4+H/397c/97d2//e3dv/3t3b/97d
+ 2//e3dv/3t3b/97d2//e3dv/3t3b/97d2//e3dv/397c/9/e3P/f3tz/397c/9/e3P/c29n/2djW/9nY
+ 1v/c29n/4N/d/+Tk4v/o6Ob/y8rG/7W0rv+tq6X/pKKc/6aknvYAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AACpp6HKp6Wf/q+uqP/Ix8P/6enn/+Tk4v/f3tz/29rY/9nY1v/Z2Nb/2tnX/9rZ1//a2df/2tnX/9va
+ 2P/b2tj/29rY/9va2P/b2tj/29rY/9va2P/b2tj/29rY/9va2P/b2tj/29rY/9va2P/Y19X/1dTR/9HQ
+ zf/Lysb/v765/7e2sP+wr6n/qaeh/6Kgmf+ioJn+qaeh9bCvqeK0s63BubizfL69uDMAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAACvrqiGqaeh6aimoPGkopz5oqCZ/KCel/6kopv+p6Wf/q2rpf6xsKr/t7aw/7y7
+ tv/BwLv/xsXB/8vKxv/NzMn/0dDN/9TT0P/Y19X/2NfV/9jX1f/W1dL/0dDN/83MyP/GxcH/vby3/7W0
+ rv+tq6X+pKKc/qOhmv2qqKL3s7Ks4rm4s8S9vLelwcC7f8bFwUjKycUdycjECAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAu7q1Dba1rzW0s61ksbCqhrGw
+ qqSvrqi7rqym06yqpOOpp6HupqSe9qWjnfqjoZr8oJ6X/p6clf+bmZL/m5mS/5uZkv+cmpP/oZ+Y/qak
+ nvurqaP0s7Ks47i3ssS+vbicw8K+YMjHwxoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///4P//wAA///gAH//AAD//gAAP/8AAP/gAAAP/wAA/gAAAAP/AADwAAAAAf8AAMAA
+ AAAAfwAAwAAAAAAfAACAAAAAAAcAAIAAAAAAAQAAgAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAgAAAAAAB
+ AADAAAAAAAcAAPgAAAAABwAA/gAAAAAHAADgAAAAAAcAAOAAAAAABwAA4AAAAAB/AAD+AAAAf/8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA////////AAAoAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAYAAAALAAAAEgAA
+ ABkAAAAiAAAAIQAAAA4AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAJAAAAEwUFBSBPTkhaXlxWi19d
+ V7ZhX1nTZmRd421rY/N1c2vZLCspUwAAACIAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAACQkJCRVGRUBBZ2VefWdlXqtoZl/XbGpj7nl3
+ b/aMioH7npyV/62rpf+4t7H/i4qD/1VTS/9hX1j4amhhtRoaGEMAAAAaAAAABgAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAALGxsZIG9tZXNubGXAb21l4WxqY/VsamP/cnBo/4mH
+ fv+kopz/v765/87Nyv/X1tT/29rY/+Hh3//FxcL/lpSO/2tqYv9UUkn/aWdf9GBeWKEAAAAyAAAAFgAA
+ AAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/vrkFioh/VX99dMZ1c2vwaWdg+mtpYv+Fg3n/bmxl/6Ce
+ l//HxsL/3dza/+Li4P/n5+X/7e3s//Ly8f/39/f/+vr6/+Pj4f+3t7L/rqyn/4mHgf9oZl3/WlhQ/mpo
+ YetUU01+AAAAKwAAABAAAAABAAAAAAAAAAAAAAAAAAAAAKupo3qCgHf7aWdg/358c/+zsqz/xMO//7Gw
+ qv+XlY3/uLex/+Hg3v/w8O//9fX0//b29v/39/f/9vXz//Hs6v/p397/8vLy/+np6f/U1NH/tbWw/5+d
+ mP+Fg3z/Z2Ze/2NhWf1wbmbjTUxHbAAAACgAAAAPAAAAAQAAAAAAAAAApqSexZ+dlv++vbj/4uLg/+Xl
+ 4//h4N7/5ubk/+/v7v/z8/L/6Ojm/9jV0//Jv7z/xqej/82Xif/PiIH/w3B8/7Rlbf+si4T/yMXB/+fn
+ 5v/r6+v/2dnW/7W1sP+WlI7/iYd//21sZP9pZ176eHZuyzQzMFEAAAAeAAAABQAAAAClo5302tnX/+Tk
+ 4v/n5+X/4uLg/93c2v/Dwr7/lo2H/4Z0b/9/ZWb/iGRh/69/bP/Pm3b/2aNx/9GQdv+9gXX/zZJ7/8Oe
+ fP+wnID/qKCV/7Szrf/Nzcr/39/e/9bW1P+ysq7/lJKN/4mHgf9ta2T/gH519QAAADQAAAALAAAAAKqo
+ oqmnpZ/xjIqB/FpYUv8kIh//Hh0W/4B5dP+KgHv/hmxm/6+Dd//AmXb/rJFk/4+AXv9wZ1b/aWNb/3dy
+ Z/9kX1j/bGdd/3VtYv91a2P/dGln/393cf+Jhn//o6Gc/9LS0P/Z2db/ubm1/5mXkv+Ni4L+AAAACQAA
+ AAEAAAAAAAAAAJmXjxEAAAAAXVtVlD49OcwhIB37Kige/1FOP/92bWX/Z2BZ/3FtZf+Ylo7/urm0/9TT
+ 0P/q6uj/5OTi/9rZ1//Pzsv/xMO//6qoov+MiYH/bmpl/11YVP9hXVf/ZmRc/2VjW/+fnZj/zMzK/5aU
+ jPsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaWFJvamhhsnZ0bO2DgXj9o6Ga/8rJxf/i4uD/7u7t/+3t
+ 7P/p6ef/5eXj/+Tk4v/k5OL/5OTi/+Li4P/i4uD/4+Ph/+Tk4v/m5uT/5OTi/9bV0v/FxMD/qKag/3Nx
+ aP+CgXr/jYuD/gAAAAAAAAAAAAAAAAAAAACzsqx/fnxz+JaUjPzOzcr/29rY/+np5//o6Ob/5OTi/9/e
+ 3P/d3Nr/3dza/9zb2f/c29n/3NvZ/9zb2f/c29n/3NvZ/93c2v/b2tj/2NfV/9DPzP/Ew7//wcC7/8HA
+ u/++vbj+qKag9aKgmemlo53DAAAAAAAAAAAAAAAAAAAAAK+uqG6zsqz/s7Ks/7OyrP+zsqz/s7Ks/7Oy
+ rP+zsqz/s7Ks/7OyrP+zsqz/s7Ks/7OyrP+zsqz/s7Ks/7OyrP+zsqz/s7Ks/7OyrP+urKbosrGr0ra1
+ r6y4t7KjubizfLe2sEqwr6kjjoyDBQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAP//////////////////////////////////////+AP//4AB//gAAH/AAAAfgAAAB4AA
+ AAGAAAAAgAAAAIAAAADQAAAD8AAAA8AAAAPAAAAH////////////////////////////////////////
+ ////////////////////////KAAAABAAAAAgAAAAAQAgAAAAAABABAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAALu6tf+7urX/u7q1/7u6tf+7urX/u7q1/7u6tf+7urX/u7q1/7u6tf+7urX/u7q1/7u6
+ tf+7urX/u7q1/7u6tf+bmZL/m5mS/5uZkv+bmZL/m5mS/5uZkv+bmZL/m5mS/5uZkv+bmZL/m5mS/5uZ
+ kv+bmZL/m5mS/5uZkv+bmZL/zczJ/83Myf/NzMn/zczJ/83Myf/NzMn/u7q1/0tKRf9LSkX/u7q1/83M
+ yf/NzMn/zczJ/83Myf/NzMn/zczJ/+Tk4v/k5OL/5OTi/+Tk4v/k5OL/5OTi/+Tk4v/k5OL/5OTi/+Tk
+ 4v/k5OL/5OTi/+Tk4v/k5OL/5OTi/+Tk4v8AAAAA5OTi/8HAu//BwLv/3KVW/96oUf/drU7/3K5P/9yu
+ Uf/cq1L/3KlT/9unVv/BwLv/wcC7/+Tk4v8AAAAAAAAAAAAAAAAAAAAAS0pF/0tKRf9LSkX/S0pF/0tK
+ Rf9LSkX/S0pF/0tKRf9LSkX/S0pF/wAAAAAAAAAAAAAAAAAAAAAAAAAAdHJq/3Ryav90cmr/dHJq/3Ry
+ av90cmr/dHJq/3Ryav90cmr/dHJq/3Ryav90cmr/AAAAAAAAAAAAAAAAgoB3/4KAd/+CgHf/goB3/4KA
+ d/+CgHf/goB3/4KAd/+CgHf/goB3/4KAd/+CgHf/goB3/4KAd/8AAAAAm5mS/5uZkv+bmZL/m5mS/5uZ
+ kv+bmZL/m5mS/5uZkv+bmZL/m5mS/5uZkv+bmZL/m5mS/5uZkv+bmZL/m5mS/wAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAD//wAA//8AAP//AAAAAAAAAAAAAAAAAAAAAAAAgAEAAOAHAADAAwAAgAEAAAAAAAD//wAA//8AAP//
+ AAD//wAA
+
+
+
\ No newline at end of file
diff --git a/samples/Sample.Net5Winform/scanner.ico b/samples/Sample.Net5Winform/scanner.ico
new file mode 100644
index 0000000..669bc9c
Binary files /dev/null and b/samples/Sample.Net5Winform/scanner.ico differ
diff --git a/src/NTwain/NTwain.csproj b/src/NTwain/NTwain.csproj
index 075de8a..5c672c0 100644
--- a/src/NTwain/NTwain.csproj
+++ b/src/NTwain/NTwain.csproj
@@ -2,7 +2,7 @@
NTwain
Library containing the TWAIN API for dotnet.
- net35;net40
+ net5.0-windows;net40;net35
https://github.com/soukoku/ntwain
twain scan
MIT
@@ -29,15 +29,16 @@
-
-
+
+ true
+ true
+
-