Doc PC industriel et API qui marche pas

This commit is contained in:
2023-06-02 14:11:37 -04:00
parent c4ba2cf72c
commit 31c6287b5d
174 changed files with 18383 additions and 0 deletions
@@ -0,0 +1,49 @@
DIO_Tool_For_eBOX640-521
==========================
Board : MANO521
Target : Desktop Windows
=====================================
Wrote by : Wychen He
Date : 2020/04/01
1. Request : .Net 3.5
2. Support : x32 and x64
3. Directory:
=============
"BIN"
- Contains demo binary files.
"SRC"
- Contains C# demo source code.
4. AxDIO API:
=============
BOOL __stdcall AxInit()
- Initialize AxDIO library.
BOOL __stdcall AxGetDIODirection(byte *pinData)
- Get DIO current direction.
- 0: Low voltage (Optput)
- 1: High voltage (Input)
BOOL __stdcall AxSetDIODirection(byte pinData)
- Set DIO direction.
- 0: Low voltage (Optput)
- 1: High voltage (Input)
BOOL __stdcall AxGetDI(byte *pinData)
- Get DIO current Status.
- 0: Low voltage
- 1: High voltage
BOOL __stdcall AxSetDO(byte pinData)
- Set DO status.
- 0: Low voltage
- 1: High voltage
void __stdcall AxOff()
- Release AxDIO resource.
5. Note:
========
- Please run application as administrator. (AxDIO needs administrator privilege)
@@ -0,0 +1,22 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.24720.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DIO_Demo", "DIO_Demo\DIO_Demo.csproj", "{6B7B3712-3AF0-47FC-A091-36769C36DBD5}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6B7B3712-3AF0-47FC-A091-36769C36DBD5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6B7B3712-3AF0-47FC-A091-36769C36DBD5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6B7B3712-3AF0-47FC-A091-36769C36DBD5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6B7B3712-3AF0-47FC-A091-36769C36DBD5}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>
@@ -0,0 +1,112 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{6B7B3712-3AF0-47FC-A091-36769C36DBD5}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>DIO_Demo</RootNamespace>
<AssemblyName>DIO_Demo</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>NotifyIcon.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup>
<TargetZone>LocalIntranet</TargetZone>
</PropertyGroup>
<PropertyGroup>
<GenerateManifests>false</GenerateManifests>
</PropertyGroup>
<PropertyGroup>
<ApplicationManifest>Properties\app.manifest</ApplicationManifest>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Form1.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Form1.Designer.cs">
<DependentUpon>Form1.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="Form1.resx">
<DependentUpon>Form1.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
<DesignTime>True</DesignTime>
</Compile>
<None Include="Properties\app.manifest" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
<Content Include="NotifyIcon.ico" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
@@ -0,0 +1,656 @@
namespace DIO_Demo
{
partial class Form1
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
this.status_gb = new System.Windows.Forms.GroupBox();
this.dirReset_button = new System.Windows.Forms.Button();
this.dioSet_button = new System.Windows.Forms.Button();
this.label6 = new System.Windows.Forms.Label();
this.Dio_lb8 = new System.Windows.Forms.Label();
this.Dio_cb8 = new System.Windows.Forms.CheckBox();
this.label10 = new System.Windows.Forms.Label();
this.Dio_lb7 = new System.Windows.Forms.Label();
this.Dio_cb7 = new System.Windows.Forms.CheckBox();
this.label13 = new System.Windows.Forms.Label();
this.Dio_lb6 = new System.Windows.Forms.Label();
this.Dio_cb6 = new System.Windows.Forms.CheckBox();
this.label15 = new System.Windows.Forms.Label();
this.Dio_lb5 = new System.Windows.Forms.Label();
this.Dio_cb5 = new System.Windows.Forms.CheckBox();
this.label17 = new System.Windows.Forms.Label();
this.Dio_lb4 = new System.Windows.Forms.Label();
this.Dio_cb4 = new System.Windows.Forms.CheckBox();
this.label19 = new System.Windows.Forms.Label();
this.Dio_lb3 = new System.Windows.Forms.Label();
this.Dio_cb3 = new System.Windows.Forms.CheckBox();
this.label21 = new System.Windows.Forms.Label();
this.Dio_lb2 = new System.Windows.Forms.Label();
this.Dio_cb2 = new System.Windows.Forms.CheckBox();
this.label23 = new System.Windows.Forms.Label();
this.Dio_lb1 = new System.Windows.Forms.Label();
this.Dio_cb1 = new System.Windows.Forms.CheckBox();
this.status_timer = new System.Windows.Forms.Timer(this.components);
this.dirstatus_gb = new System.Windows.Forms.GroupBox();
this.dirSet_button = new System.Windows.Forms.Button();
this.label41 = new System.Windows.Forms.Label();
this.Dir_cb8 = new System.Windows.Forms.CheckBox();
this.label43 = new System.Windows.Forms.Label();
this.Dir_cb7 = new System.Windows.Forms.CheckBox();
this.label45 = new System.Windows.Forms.Label();
this.Dir_cb6 = new System.Windows.Forms.CheckBox();
this.label47 = new System.Windows.Forms.Label();
this.Dir_cb5 = new System.Windows.Forms.CheckBox();
this.label49 = new System.Windows.Forms.Label();
this.Dir_cb4 = new System.Windows.Forms.CheckBox();
this.label51 = new System.Windows.Forms.Label();
this.Dir_cb3 = new System.Windows.Forms.CheckBox();
this.label53 = new System.Windows.Forms.Label();
this.Dir_cb2 = new System.Windows.Forms.CheckBox();
this.label55 = new System.Windows.Forms.Label();
this.Dir_cb1 = new System.Windows.Forms.CheckBox();
this.status_gb.SuspendLayout();
this.dirstatus_gb.SuspendLayout();
this.SuspendLayout();
//
// status_gb
//
this.status_gb.Controls.Add(this.dirReset_button);
this.status_gb.Controls.Add(this.dioSet_button);
this.status_gb.Controls.Add(this.label6);
this.status_gb.Controls.Add(this.Dio_lb8);
this.status_gb.Controls.Add(this.Dio_cb8);
this.status_gb.Controls.Add(this.label10);
this.status_gb.Controls.Add(this.Dio_lb7);
this.status_gb.Controls.Add(this.Dio_cb7);
this.status_gb.Controls.Add(this.label13);
this.status_gb.Controls.Add(this.Dio_lb6);
this.status_gb.Controls.Add(this.Dio_cb6);
this.status_gb.Controls.Add(this.label15);
this.status_gb.Controls.Add(this.Dio_lb5);
this.status_gb.Controls.Add(this.Dio_cb5);
this.status_gb.Controls.Add(this.label17);
this.status_gb.Controls.Add(this.Dio_lb4);
this.status_gb.Controls.Add(this.Dio_cb4);
this.status_gb.Controls.Add(this.label19);
this.status_gb.Controls.Add(this.Dio_lb3);
this.status_gb.Controls.Add(this.Dio_cb3);
this.status_gb.Controls.Add(this.label21);
this.status_gb.Controls.Add(this.Dio_lb2);
this.status_gb.Controls.Add(this.Dio_cb2);
this.status_gb.Controls.Add(this.label23);
this.status_gb.Controls.Add(this.Dio_lb1);
this.status_gb.Controls.Add(this.Dio_cb1);
this.status_gb.Enabled = false;
this.status_gb.Location = new System.Drawing.Point(16, 134);
this.status_gb.Margin = new System.Windows.Forms.Padding(4);
this.status_gb.Name = "status_gb";
this.status_gb.Padding = new System.Windows.Forms.Padding(4);
this.status_gb.Size = new System.Drawing.Size(545, 170);
this.status_gb.TabIndex = 5;
this.status_gb.TabStop = false;
this.status_gb.Text = "Status ( Checked as high)";
//
// dirReset_button
//
this.dirReset_button.Location = new System.Drawing.Point(435, 24);
this.dirReset_button.Margin = new System.Windows.Forms.Padding(4);
this.dirReset_button.Name = "dirReset_button";
this.dirReset_button.Size = new System.Drawing.Size(80, 61);
this.dirReset_button.TabIndex = 111;
this.dirReset_button.Text = "Reset Dir";
this.dirReset_button.UseVisualStyleBackColor = true;
this.dirReset_button.Click += new System.EventHandler(this.dirReset_button_Click);
//
// dioSet_button
//
this.dioSet_button.Location = new System.Drawing.Point(435, 99);
this.dioSet_button.Margin = new System.Windows.Forms.Padding(4);
this.dioSet_button.Name = "dioSet_button";
this.dioSet_button.Size = new System.Drawing.Size(80, 59);
this.dioSet_button.TabIndex = 110;
this.dioSet_button.Text = "Set";
this.dioSet_button.UseVisualStyleBackColor = true;
this.dioSet_button.Click += new System.EventHandler(this.dioSet_button_Click);
//
// label6
//
this.label6.AutoSize = true;
this.label6.Location = new System.Drawing.Point(385, 46);
this.label6.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(35, 15);
this.label6.TabIndex = 31;
this.label6.Text = "Bit 8";
//
// Dio_lb8
//
this.Dio_lb8.AutoSize = true;
this.Dio_lb8.Location = new System.Drawing.Point(385, 81);
this.Dio_lb8.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Dio_lb8.Name = "Dio_lb8";
this.Dio_lb8.Size = new System.Drawing.Size(33, 15);
this.Dio_lb8.TabIndex = 29;
this.Dio_lb8.Text = "Low";
//
// Dio_cb8
//
this.Dio_cb8.AutoSize = true;
this.Dio_cb8.Location = new System.Drawing.Point(395, 120);
this.Dio_cb8.Margin = new System.Windows.Forms.Padding(4);
this.Dio_cb8.Name = "Dio_cb8";
this.Dio_cb8.Size = new System.Drawing.Size(18, 17);
this.Dio_cb8.TabIndex = 30;
this.Dio_cb8.UseVisualStyleBackColor = true;
//
// label10
//
this.label10.AutoSize = true;
this.label10.Location = new System.Drawing.Point(335, 46);
this.label10.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(35, 15);
this.label10.TabIndex = 28;
this.label10.Text = "Bit 7";
//
// Dio_lb7
//
this.Dio_lb7.AutoSize = true;
this.Dio_lb7.Location = new System.Drawing.Point(336, 81);
this.Dio_lb7.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Dio_lb7.Name = "Dio_lb7";
this.Dio_lb7.Size = new System.Drawing.Size(33, 15);
this.Dio_lb7.TabIndex = 26;
this.Dio_lb7.Text = "Low";
//
// Dio_cb7
//
this.Dio_cb7.AutoSize = true;
this.Dio_cb7.Location = new System.Drawing.Point(347, 120);
this.Dio_cb7.Margin = new System.Windows.Forms.Padding(4);
this.Dio_cb7.Name = "Dio_cb7";
this.Dio_cb7.Size = new System.Drawing.Size(18, 17);
this.Dio_cb7.TabIndex = 27;
this.Dio_cb7.UseVisualStyleBackColor = true;
//
// label13
//
this.label13.AutoSize = true;
this.label13.Location = new System.Drawing.Point(281, 46);
this.label13.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(35, 15);
this.label13.TabIndex = 25;
this.label13.Text = "Bit 6";
//
// Dio_lb6
//
this.Dio_lb6.AutoSize = true;
this.Dio_lb6.Location = new System.Drawing.Point(283, 81);
this.Dio_lb6.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Dio_lb6.Name = "Dio_lb6";
this.Dio_lb6.Size = new System.Drawing.Size(33, 15);
this.Dio_lb6.TabIndex = 23;
this.Dio_lb6.Text = "Low";
//
// Dio_cb6
//
this.Dio_cb6.AutoSize = true;
this.Dio_cb6.Location = new System.Drawing.Point(292, 120);
this.Dio_cb6.Margin = new System.Windows.Forms.Padding(4);
this.Dio_cb6.Name = "Dio_cb6";
this.Dio_cb6.Size = new System.Drawing.Size(18, 17);
this.Dio_cb6.TabIndex = 24;
this.Dio_cb6.UseVisualStyleBackColor = true;
//
// label15
//
this.label15.AutoSize = true;
this.label15.Location = new System.Drawing.Point(228, 46);
this.label15.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label15.Name = "label15";
this.label15.Size = new System.Drawing.Size(35, 15);
this.label15.TabIndex = 22;
this.label15.Text = "Bit 5";
//
// Dio_lb5
//
this.Dio_lb5.AutoSize = true;
this.Dio_lb5.Location = new System.Drawing.Point(229, 81);
this.Dio_lb5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Dio_lb5.Name = "Dio_lb5";
this.Dio_lb5.Size = new System.Drawing.Size(33, 15);
this.Dio_lb5.TabIndex = 20;
this.Dio_lb5.Text = "Low";
//
// Dio_cb5
//
this.Dio_cb5.AutoSize = true;
this.Dio_cb5.Location = new System.Drawing.Point(240, 120);
this.Dio_cb5.Margin = new System.Windows.Forms.Padding(4);
this.Dio_cb5.Name = "Dio_cb5";
this.Dio_cb5.Size = new System.Drawing.Size(18, 17);
this.Dio_cb5.TabIndex = 21;
this.Dio_cb5.UseVisualStyleBackColor = true;
//
// label17
//
this.label17.AutoSize = true;
this.label17.Location = new System.Drawing.Point(175, 46);
this.label17.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label17.Name = "label17";
this.label17.Size = new System.Drawing.Size(35, 15);
this.label17.TabIndex = 19;
this.label17.Text = "Bit 4";
//
// Dio_lb4
//
this.Dio_lb4.AutoSize = true;
this.Dio_lb4.Location = new System.Drawing.Point(176, 81);
this.Dio_lb4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Dio_lb4.Name = "Dio_lb4";
this.Dio_lb4.Size = new System.Drawing.Size(33, 15);
this.Dio_lb4.TabIndex = 17;
this.Dio_lb4.Text = "Low";
//
// Dio_cb4
//
this.Dio_cb4.AutoSize = true;
this.Dio_cb4.Location = new System.Drawing.Point(185, 120);
this.Dio_cb4.Margin = new System.Windows.Forms.Padding(4);
this.Dio_cb4.Name = "Dio_cb4";
this.Dio_cb4.Size = new System.Drawing.Size(18, 17);
this.Dio_cb4.TabIndex = 18;
this.Dio_cb4.UseVisualStyleBackColor = true;
//
// label19
//
this.label19.AutoSize = true;
this.label19.Location = new System.Drawing.Point(121, 46);
this.label19.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label19.Name = "label19";
this.label19.Size = new System.Drawing.Size(35, 15);
this.label19.TabIndex = 16;
this.label19.Text = "Bit 3";
//
// Dio_lb3
//
this.Dio_lb3.AutoSize = true;
this.Dio_lb3.Location = new System.Drawing.Point(123, 81);
this.Dio_lb3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Dio_lb3.Name = "Dio_lb3";
this.Dio_lb3.Size = new System.Drawing.Size(33, 15);
this.Dio_lb3.TabIndex = 14;
this.Dio_lb3.Text = "Low";
//
// Dio_cb3
//
this.Dio_cb3.AutoSize = true;
this.Dio_cb3.Location = new System.Drawing.Point(132, 120);
this.Dio_cb3.Margin = new System.Windows.Forms.Padding(4);
this.Dio_cb3.Name = "Dio_cb3";
this.Dio_cb3.Size = new System.Drawing.Size(18, 17);
this.Dio_cb3.TabIndex = 15;
this.Dio_cb3.UseVisualStyleBackColor = true;
//
// label21
//
this.label21.AutoSize = true;
this.label21.Location = new System.Drawing.Point(63, 46);
this.label21.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label21.Name = "label21";
this.label21.Size = new System.Drawing.Size(35, 15);
this.label21.TabIndex = 13;
this.label21.Text = "Bit 2";
//
// Dio_lb2
//
this.Dio_lb2.AutoSize = true;
this.Dio_lb2.Location = new System.Drawing.Point(64, 81);
this.Dio_lb2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Dio_lb2.Name = "Dio_lb2";
this.Dio_lb2.Size = new System.Drawing.Size(33, 15);
this.Dio_lb2.TabIndex = 11;
this.Dio_lb2.Text = "Low";
//
// Dio_cb2
//
this.Dio_cb2.AutoSize = true;
this.Dio_cb2.Location = new System.Drawing.Point(72, 120);
this.Dio_cb2.Margin = new System.Windows.Forms.Padding(4);
this.Dio_cb2.Name = "Dio_cb2";
this.Dio_cb2.Size = new System.Drawing.Size(18, 17);
this.Dio_cb2.TabIndex = 12;
this.Dio_cb2.UseVisualStyleBackColor = true;
//
// label23
//
this.label23.AutoSize = true;
this.label23.Location = new System.Drawing.Point(12, 46);
this.label23.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label23.Name = "label23";
this.label23.Size = new System.Drawing.Size(35, 15);
this.label23.TabIndex = 10;
this.label23.Text = "Bit 1";
//
// Dio_lb1
//
this.Dio_lb1.AutoSize = true;
this.Dio_lb1.Location = new System.Drawing.Point(12, 81);
this.Dio_lb1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Dio_lb1.Name = "Dio_lb1";
this.Dio_lb1.Size = new System.Drawing.Size(33, 15);
this.Dio_lb1.TabIndex = 0;
this.Dio_lb1.Text = "Low";
//
// Dio_cb1
//
this.Dio_cb1.AutoSize = true;
this.Dio_cb1.Location = new System.Drawing.Point(21, 120);
this.Dio_cb1.Margin = new System.Windows.Forms.Padding(4);
this.Dio_cb1.Name = "Dio_cb1";
this.Dio_cb1.Size = new System.Drawing.Size(18, 17);
this.Dio_cb1.TabIndex = 9;
this.Dio_cb1.UseVisualStyleBackColor = true;
//
// status_timer
//
this.status_timer.Tick += new System.EventHandler(this.status_timer_Tick);
//
// dirstatus_gb
//
this.dirstatus_gb.Controls.Add(this.dirSet_button);
this.dirstatus_gb.Controls.Add(this.label41);
this.dirstatus_gb.Controls.Add(this.Dir_cb8);
this.dirstatus_gb.Controls.Add(this.label43);
this.dirstatus_gb.Controls.Add(this.Dir_cb7);
this.dirstatus_gb.Controls.Add(this.label45);
this.dirstatus_gb.Controls.Add(this.Dir_cb6);
this.dirstatus_gb.Controls.Add(this.label47);
this.dirstatus_gb.Controls.Add(this.Dir_cb5);
this.dirstatus_gb.Controls.Add(this.label49);
this.dirstatus_gb.Controls.Add(this.Dir_cb4);
this.dirstatus_gb.Controls.Add(this.label51);
this.dirstatus_gb.Controls.Add(this.Dir_cb3);
this.dirstatus_gb.Controls.Add(this.label53);
this.dirstatus_gb.Controls.Add(this.Dir_cb2);
this.dirstatus_gb.Controls.Add(this.label55);
this.dirstatus_gb.Controls.Add(this.Dir_cb1);
this.dirstatus_gb.Location = new System.Drawing.Point(16, 15);
this.dirstatus_gb.Margin = new System.Windows.Forms.Padding(4);
this.dirstatus_gb.Name = "dirstatus_gb";
this.dirstatus_gb.Padding = new System.Windows.Forms.Padding(4);
this.dirstatus_gb.Size = new System.Drawing.Size(545, 111);
this.dirstatus_gb.TabIndex = 111;
this.dirstatus_gb.TabStop = false;
this.dirstatus_gb.Text = "DIO Direction (Checked as Output)";
//
// dirSet_button
//
this.dirSet_button.Location = new System.Drawing.Point(433, 35);
this.dirSet_button.Margin = new System.Windows.Forms.Padding(4);
this.dirSet_button.Name = "dirSet_button";
this.dirSet_button.Size = new System.Drawing.Size(80, 59);
this.dirSet_button.TabIndex = 112;
this.dirSet_button.Text = "Set";
this.dirSet_button.UseVisualStyleBackColor = true;
this.dirSet_button.Click += new System.EventHandler(this.dirSet_button_Click);
//
// label41
//
this.label41.AutoSize = true;
this.label41.Location = new System.Drawing.Point(388, 35);
this.label41.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label41.Name = "label41";
this.label41.Size = new System.Drawing.Size(35, 15);
this.label41.TabIndex = 82;
this.label41.Text = "Bit 8";
//
// Dir_cb8
//
this.Dir_cb8.AutoSize = true;
this.Dir_cb8.Location = new System.Drawing.Point(397, 64);
this.Dir_cb8.Margin = new System.Windows.Forms.Padding(4);
this.Dir_cb8.Name = "Dir_cb8";
this.Dir_cb8.Size = new System.Drawing.Size(18, 17);
this.Dir_cb8.TabIndex = 81;
this.Dir_cb8.UseVisualStyleBackColor = true;
//
// label43
//
this.label43.AutoSize = true;
this.label43.Location = new System.Drawing.Point(337, 35);
this.label43.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label43.Name = "label43";
this.label43.Size = new System.Drawing.Size(35, 15);
this.label43.TabIndex = 79;
this.label43.Text = "Bit 7";
//
// Dir_cb7
//
this.Dir_cb7.AutoSize = true;
this.Dir_cb7.Location = new System.Drawing.Point(349, 64);
this.Dir_cb7.Margin = new System.Windows.Forms.Padding(4);
this.Dir_cb7.Name = "Dir_cb7";
this.Dir_cb7.Size = new System.Drawing.Size(18, 17);
this.Dir_cb7.TabIndex = 78;
this.Dir_cb7.UseVisualStyleBackColor = true;
//
// label45
//
this.label45.AutoSize = true;
this.label45.Location = new System.Drawing.Point(284, 35);
this.label45.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label45.Name = "label45";
this.label45.Size = new System.Drawing.Size(35, 15);
this.label45.TabIndex = 76;
this.label45.Text = "Bit 6";
//
// Dir_cb6
//
this.Dir_cb6.AutoSize = true;
this.Dir_cb6.Location = new System.Drawing.Point(295, 64);
this.Dir_cb6.Margin = new System.Windows.Forms.Padding(4);
this.Dir_cb6.Name = "Dir_cb6";
this.Dir_cb6.Size = new System.Drawing.Size(18, 17);
this.Dir_cb6.TabIndex = 75;
this.Dir_cb6.UseVisualStyleBackColor = true;
//
// label47
//
this.label47.AutoSize = true;
this.label47.Location = new System.Drawing.Point(231, 35);
this.label47.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label47.Name = "label47";
this.label47.Size = new System.Drawing.Size(35, 15);
this.label47.TabIndex = 73;
this.label47.Text = "Bit 5";
//
// Dir_cb5
//
this.Dir_cb5.AutoSize = true;
this.Dir_cb5.Location = new System.Drawing.Point(243, 64);
this.Dir_cb5.Margin = new System.Windows.Forms.Padding(4);
this.Dir_cb5.Name = "Dir_cb5";
this.Dir_cb5.Size = new System.Drawing.Size(18, 17);
this.Dir_cb5.TabIndex = 72;
this.Dir_cb5.UseVisualStyleBackColor = true;
//
// label49
//
this.label49.AutoSize = true;
this.label49.Location = new System.Drawing.Point(177, 35);
this.label49.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label49.Name = "label49";
this.label49.Size = new System.Drawing.Size(35, 15);
this.label49.TabIndex = 70;
this.label49.Text = "Bit 4";
//
// Dir_cb4
//
this.Dir_cb4.AutoSize = true;
this.Dir_cb4.Location = new System.Drawing.Point(188, 64);
this.Dir_cb4.Margin = new System.Windows.Forms.Padding(4);
this.Dir_cb4.Name = "Dir_cb4";
this.Dir_cb4.Size = new System.Drawing.Size(18, 17);
this.Dir_cb4.TabIndex = 69;
this.Dir_cb4.UseVisualStyleBackColor = true;
//
// label51
//
this.label51.AutoSize = true;
this.label51.Location = new System.Drawing.Point(124, 35);
this.label51.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label51.Name = "label51";
this.label51.Size = new System.Drawing.Size(35, 15);
this.label51.TabIndex = 67;
this.label51.Text = "Bit 3";
//
// Dir_cb3
//
this.Dir_cb3.AutoSize = true;
this.Dir_cb3.Location = new System.Drawing.Point(135, 64);
this.Dir_cb3.Margin = new System.Windows.Forms.Padding(4);
this.Dir_cb3.Name = "Dir_cb3";
this.Dir_cb3.Size = new System.Drawing.Size(18, 17);
this.Dir_cb3.TabIndex = 66;
this.Dir_cb3.UseVisualStyleBackColor = true;
//
// label53
//
this.label53.AutoSize = true;
this.label53.Location = new System.Drawing.Point(65, 35);
this.label53.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label53.Name = "label53";
this.label53.Size = new System.Drawing.Size(35, 15);
this.label53.TabIndex = 64;
this.label53.Text = "Bit 2";
//
// Dir_cb2
//
this.Dir_cb2.AutoSize = true;
this.Dir_cb2.Location = new System.Drawing.Point(75, 64);
this.Dir_cb2.Margin = new System.Windows.Forms.Padding(4);
this.Dir_cb2.Name = "Dir_cb2";
this.Dir_cb2.Size = new System.Drawing.Size(18, 17);
this.Dir_cb2.TabIndex = 63;
this.Dir_cb2.UseVisualStyleBackColor = true;
//
// label55
//
this.label55.AutoSize = true;
this.label55.Location = new System.Drawing.Point(15, 35);
this.label55.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label55.Name = "label55";
this.label55.Size = new System.Drawing.Size(35, 15);
this.label55.TabIndex = 61;
this.label55.Text = "Bit 1";
//
// Dir_cb1
//
this.Dir_cb1.AutoSize = true;
this.Dir_cb1.Location = new System.Drawing.Point(24, 64);
this.Dir_cb1.Margin = new System.Windows.Forms.Padding(4);
this.Dir_cb1.Name = "Dir_cb1";
this.Dir_cb1.Size = new System.Drawing.Size(18, 17);
this.Dir_cb1.TabIndex = 60;
this.Dir_cb1.UseVisualStyleBackColor = true;
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(578, 315);
this.Controls.Add(this.dirstatus_gb);
this.Controls.Add(this.status_gb);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Margin = new System.Windows.Forms.Padding(4);
this.Name = "Form1";
this.Text = "DIO Demo for eBOX640-521";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
this.Load += new System.EventHandler(this.Form1_Load);
this.status_gb.ResumeLayout(false);
this.status_gb.PerformLayout();
this.dirstatus_gb.ResumeLayout(false);
this.dirstatus_gb.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.GroupBox status_gb;
private System.Windows.Forms.Button dioSet_button;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.Label Dio_lb8;
private System.Windows.Forms.CheckBox Dio_cb8;
private System.Windows.Forms.Label label10;
private System.Windows.Forms.Label Dio_lb7;
private System.Windows.Forms.CheckBox Dio_cb7;
private System.Windows.Forms.Label label13;
private System.Windows.Forms.Label Dio_lb6;
private System.Windows.Forms.CheckBox Dio_cb6;
private System.Windows.Forms.Label label15;
private System.Windows.Forms.Label Dio_lb5;
private System.Windows.Forms.CheckBox Dio_cb5;
private System.Windows.Forms.Label label17;
private System.Windows.Forms.Label Dio_lb4;
private System.Windows.Forms.CheckBox Dio_cb4;
private System.Windows.Forms.Label label19;
private System.Windows.Forms.Label Dio_lb3;
private System.Windows.Forms.CheckBox Dio_cb3;
private System.Windows.Forms.Label label21;
private System.Windows.Forms.Label Dio_lb2;
private System.Windows.Forms.CheckBox Dio_cb2;
private System.Windows.Forms.Label label23;
private System.Windows.Forms.Label Dio_lb1;
private System.Windows.Forms.CheckBox Dio_cb1;
private System.Windows.Forms.Timer status_timer;
private System.Windows.Forms.Button dirReset_button;
private System.Windows.Forms.GroupBox dirstatus_gb;
private System.Windows.Forms.Button dirSet_button;
private System.Windows.Forms.Label label41;
private System.Windows.Forms.CheckBox Dir_cb8;
private System.Windows.Forms.Label label43;
private System.Windows.Forms.CheckBox Dir_cb7;
private System.Windows.Forms.Label label45;
private System.Windows.Forms.CheckBox Dir_cb6;
private System.Windows.Forms.Label label47;
private System.Windows.Forms.CheckBox Dir_cb5;
private System.Windows.Forms.Label label49;
private System.Windows.Forms.CheckBox Dir_cb4;
private System.Windows.Forms.Label label51;
private System.Windows.Forms.CheckBox Dir_cb3;
private System.Windows.Forms.Label label53;
private System.Windows.Forms.CheckBox Dir_cb2;
private System.Windows.Forms.Label label55;
private System.Windows.Forms.CheckBox Dir_cb1;
}
}
@@ -0,0 +1,265 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Diagnostics;
namespace DIO_Demo
{
public partial class Form1 : Form
{ // 32 bit
[DllImport("AxDIOx32.dll", EntryPoint = "AxInit")]
static extern bool AxInit32();
[DllImport("AxDIOx32.dll", EntryPoint = "AxGetDIODirection")]
static extern bool AxGetDIODirection32(ref byte pin);
[DllImport("AxDIOx32.dll", EntryPoint = "AxSetDIODirection")]
static extern bool AxSetDIODirection32(byte pin);
[DllImport("AxDIOx32.dll", EntryPoint = "AxGetDI")]
static extern bool AxGetDI32(ref byte status);
[DllImport("AxDIOx32.dll", EntryPoint = "AxSetDO")]
static extern bool AxSetDO32(byte data);
[DllImport("AxDIOx32.dll", EntryPoint = "AxOff")]
static extern bool AxOff32();
// 64 bit
[DllImport("AxDIOx64.dll", EntryPoint = "AxInit")]
static extern bool AxInit64();
[DllImport("AxDIOx64.dll", EntryPoint = "AxGetDIODirection")]
static extern bool AxGetDIODirection64(ref byte pin);
[DllImport("AxDIOx64.dll", EntryPoint = "AxSetDIODirection")]
static extern bool AxSetDIODirection64(byte pin);
[DllImport("AxDIOx64.dll", EntryPoint = "AxGetDI")]
static extern bool AxGetDI64(ref byte status);
[DllImport("AxDIOx64.dll", EntryPoint = "AxSetDO")]
static extern bool AxSetDO64(byte data);
[DllImport("AxDIOx64.dll", EntryPoint = "AxOff")]
static extern bool AxOff64();
// Function type
delegate bool AxInit_F();
delegate bool AxGetDIODirection_F(ref byte pin);
delegate bool AxSetDIODirection_F(byte pin);
delegate bool AxGetDI_F(ref byte status);
delegate bool AxSetDO_F(byte data);
delegate bool AxOff_F();
// Function pointer
AxInit_F AxInit = null;
AxGetDIODirection_F AxGetDIODirection = null;
AxSetDIODirection_F AxSetDIODirection = null;
AxGetDI_F AxGetDI = null;
AxSetDO_F AxSetDO = null;
AxOff_F AxOff = null;
CheckBox[] dir_cb_1 = new CheckBox[8];
CheckBox[] dio_cb_1 = new CheckBox[8];
Label[] dio_lb_1 = new Label[8];
private bool InitialUIControls()
{
try
{
// Binding to DIO label
// dir_cb
for (int i = 0; i < dir_cb_1.Length; i++)
dir_cb_1[i] = (CheckBox)this.Controls.Find(string.Format("Dir_cb{0}", i + 1), true).FirstOrDefault();
// dio_cb
for (int i = 0; i < dio_cb_1.Length; i++)
dio_cb_1[i] = (CheckBox)this.Controls.Find(string.Format("Dio_cb{0}", i + 1), true).FirstOrDefault();
// Label
for (int i = 0; i < dio_lb_1.Length; i++)
dio_lb_1[i] = (Label)this.Controls.Find(string.Format("Dio_lb{0}", i +1), true).FirstOrDefault();
return true;
}
catch (Exception e)
{
Debug.WriteLine(string.Format("[InitialUIControls Exception]: {0}", e.Message));
return false;
}
}
private void Refresh_Dirstatus_CheckBox(byte dir)
{
for (int i = 0; i < 8; i++)
dir_cb_1[i].Checked = (dir & (0x01 << i)) > 0 ? false : true;
}
private void Refresh_Status_CheckBox(byte dir)
{
for (int i = 0; i < 8; i++)
{
dio_cb_1[i].Enabled = (dir & (0x01 << i)) > 0 ? false : true;
dio_cb_1[i].Checked = (dir & (0x01 << i)) > 0 ? true : false;
}
}
private void Refresh_Status_Label(byte status)
{
for (int i = 0; i < 8; i++)
{
bool state = ((status & (0x01 << i)) > 0);
dio_lb_1[i].Text = (state) ? "High" : "Low";
dio_lb_1[i].ForeColor = (state) ? Color.Red : Color.Green;
}
}
private void OneProcClick()
{
if (Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName).Length > 1)
this.Close();
}
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
try
{
// Initialize function pointer
if (IntPtr.Size == 4)
{
// 32 bit
AxInit = AxInit32;
AxGetDIODirection = AxGetDIODirection32;
AxSetDIODirection = AxSetDIODirection32;
AxGetDI = AxGetDI32;
AxSetDO = AxSetDO32;
AxOff = AxOff32;
}
else
{
// 64 bit
AxInit = AxInit64;
AxGetDIODirection = AxGetDIODirection64;
AxSetDIODirection = AxSetDIODirection64;
AxGetDI = AxGetDI64;
AxSetDO = AxSetDO64;
AxOff = AxOff64;
}
OneProcClick();
// Initialize I/O driver
if (!AxInit())
throw new Exception("Failed to initialize I/O driver.");
// Initialize UI controls
if (!InitialUIControls())
throw new Exception("Failed to initialize UI controls.");
// Get DIO current direction
byte dirstatus = 0x00;
AxGetDIODirection(ref dirstatus);
// Get DIO current direction (Inputs and Outputs are reverse.)
Refresh_Dirstatus_CheckBox((byte)~dirstatus);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
this.Close();
AxOff();
}
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
// Release AxDIO resource
AxOff();
}
private void status_timer_Tick(object sender, EventArgs e)
{
try
{
byte status = 0x00;
AxGetDI(ref status);
Refresh_Status_Label(status);
}
catch (Exception ex)
{
MessageBox.Show("[status_timer_Tick exception]: " + ex.Message);
}
}
private void dioSet_button_Click(object sender, EventArgs e)
{
try
{
status_timer.Enabled = false;
byte status = 0x00;
// Get user's DO setting
for (int i = 0; i < 8; i++)
status = (dio_cb_1[i].Checked) ? (byte)(status | (0x01 << i)) : status;
// Set DO to high or low voltage
// For input ports, the respective bits can be read only from pins. Write accesses will be ignored
AxSetDO(status);
status_timer.Enabled = true;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void dirSet_button_Click(object sender, EventArgs e)
{
try
{
status_timer.Enabled = false;
dirstatus_gb.Enabled = false;
byte dir1 = 0x00;
for (int i = 0; i < 8; i++)
dir1 = (dir_cb_1[i].Checked) ? dir1 : (byte)(dir1 | 0x01 << i);
// Set DIO direction (Inputs and Outputs are reverse.)
AxSetDIODirection((byte)~dir1);
// Set 0x00 refresh status
byte status = 0x00;
AxSetDO(status);
// Refresh DIO status CheckBox (Enable/Disable)
Refresh_Status_CheckBox(dir1);
status_gb.Enabled = true;
status_timer.Enabled = true;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void dirReset_button_Click(object sender, EventArgs e)
{
try
{
status_gb.Enabled = false;
status_timer.Enabled = false;
byte status = 0x00;
AxSetDO(status);
Refresh_Status_Label(status);
Refresh_Status_CheckBox(status);
dirstatus_gb.Enabled = true;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
@@ -0,0 +1,804 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="status_timer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAkAICAQAAEABADoAgAAlgAAABAQEAABAAQAKAEAAH4DAAAwMAAAAQAIAKgOAACmBAAAICAAAAEA
CACoCAAAThMAABAQAAABAAgAaAUAAPYbAABAQAAAAQAgAChCAABeIQAAMDAAAAEAIACoJQAAhmMAACAg
AAABACAAqBAAAC6JAAAQEAAAAQAgAGgEAADWmQAAKAAAACAAAABAAAAAAQAEAAAAAACAAgAAAAAAAAAA
AAAQAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8A
AAD/AP8A//8AAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACHl3j/WPiHV3
l1d4AAAAAFFRUVj3f/cVFRUVFRAAAAVRUVFV/5f/VRUVFRUVAABxFTeFEY+Fj4kRWIiVFXAAdRVZiHFY
+Jj3UY/4UVFQAFEVF4iVF/9X/1f/hRFRcABVEVF4hVGPhY+I+HUVEVAAURUVGIiRWPdf//gVFRVwAFUV
FRWIhVX/l/+FFRURUABRUVFRiIeRj4WPgRFRFXAAcRUVFRiIVRj4WPhRUVFQAFFRURUV/4lX/1f/UVFR
UABRUVFRUYj3X/+Jj4UVEXAAURUVFRUf/4//+Fj4FRVQAFUVFRUVFf//hf91/5URUABxURUVEVGIiBGP
iY+FFXAABRUVFVFVFVVVGPhY+BUAAAdRURERERERERf/V/9YAHAAB1dVdVdVdVdVj4ePAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////////////
/////////////+AAAD/AAAAfgAAADwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAA
AAcAAAAHAAAABwAAAAeAAAAPgAAADeAAAD//////////////////////////////////////KAAAABAA
AAAgAAAAAQAEAAAAAADAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICA
AACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAHV4iIlXVwAIEXWNh5VxUAUViXh4WIFYB1F4mIj4UVcFEVh1iIgVGAVRFfl42JUYBRUViI+IhRgBUV
FY9YeHEABRUVFReIhwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA//8AAIAH
AAAAAwAAAAEAAAABAAAAAQAAAAEAAAABAAAAAwAAgAMAAP//AAD//wAA//8AAP//AAAoAAAAMAAAAGAA
AAABAAgAAAAAAIAKAAAAAAAAAAAAAAABAAAAAAAAAAAAADoAfQA8An4APQR/AD4GgAA/CIEAQAeAAEEJ
gQBDDIIARA2DAEQOhABGEIUASBKGAEkUhwBKFYgAShmKAE0ZiQBOHIsAUByLAFEdjABTII4AVSOPAFAk
jgBXJZAAWCeQAFUtkgBXL5YAWiqSAFwskwBdLpQAXzCVAF00lgBgMpYAYjSXAGM1mABkNpgAYDqbAGU4
mQBlPZ0AaDqbAGk9nABpQZ4AbUKeAG5GoABxR6EAckmiAHRLowB0TKMAdk6kAHdRpgB5UqcAc1inAHtU
qAB8VakAc12rAH5ZqgB7Y68AgFurAIFdrACFYq8AiGaxAIJosQCLabIAjWu0AI5ttACOdLgAiX26AJFy
tgCSdLcAk3O4AJR0uACReLkAlnm6AJh6uwCafLsAmXu8AJp8vACKhb0AnYG+AJ+DwACehcAAkYrAAJiM
wgCSkcMAlpXFAJiYxwCdnckAoYbBAKOIwgCkisMApozEAKiOxQCqkccAq5PIAK2VyQCnnMsAqZzLALCY
ywCym8wAspzMALWfzgCgoswApaLMAKSlzgC2oc8AqarQAKut0gCvrdIAt6LQALKm0AC5pdEAvKjTAL6q
1AC/rNUAr7HTALO11gC0ttYAvbHWALi11gC4utgAv7vbALu92gC9vtsAwK7VAMSz2ADFtNkAyLfbAMi4
2wDKutwAy7zdAMy93QC/wt0Aw8XfAM7A3wDPxOAAx8jhAMvI4QDLzeMAzs7kANLF4QDUyOMA1snkANHN
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
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
/////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
AAD///////8AAPwAAAAD/wAA4AAAAAD/AADAAAAAAH8AAIAAAAAAPwAAgAAAAAAfAAAAAAAAAB8AAAAA
AAAADwAAAAAAAAAPAAAAAAAAAA8AAAAAAAAADwAAAAAAAAAPAAAAAAAAAA8AAAAAAAAADwAAAAAAAAAP
AAAAAAAAAA8AAAAAAAAADwAAAAAAAAAPAAAAAAAAAA8AAAAAAAAADwAAAAAAAAAPAAAAAAAAAA8AAAAA
AAAADwAAAAAAAAAPAAAAAAAAAB8AAIAAAAAAHwAAgAAAAAA7AADAAAAAAHsAAPAAAAAA+QAA////////
AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
/////wAA////////AAD///////8AACgAAAAgAAAAQAAAAAEACAAAAAAAgAQAAAAAAAAAAAAAAAEAAAAA
AAAAAAAAOgB9ADwCfgA9BH8APgaAAEAHgABACYEAQw2DAEQNhABGEIQASBOGAEoViABMF4kASRiKAE0a
igBNHIsAUB2MAFMhjQBUIo4AVSSPAFclkABYJpAAWSiSAFwskwBcLpQAXzCVAF44mQBfPZsAYDKWAGI0
lwBiNZgAZDaZAGY5mgBoO5sAaz+dAGZAngBrQJ0AbUKfAG5FoABtSqEAcEahAHJKogB1TaQAeFClAHtU
qAB8VagAfViqAH1nsACBXKsAgVysAIRgrQCIZbAAi2myAI5utACAc7QAhXG0AIR3twCMdbgAiX+7AJNz
uACWeboAmHq7AJp8vACcf74Am4K/AJ6CvwCbh8EAk4vBAJ6VxwCfncoAoYbBAKOIwwCkisMApozEAKiO
xQCqkcYArpbJALGazACyn80AtJ7NAJ+gygCtps8AtaDOAKmq0AC4o9AAuqbRALWq0gCusNMAsLDTALm3
2AC7vdoAwK7VAMOy1wDGtdkAybnbAMq73ADKvN0AzL3dAMnC3gDOwN8AxsjgAMvM4wDOzeMA0cPgANLF
4QDUyOMA1srkANfM5ADZzeUA1NHmANzS6ADf1eoA2dvqAODX6wDh2OsA5NztAOfg7wDo4e8A5ebwAOji
8ADq5fEA7efzAOnp8gDt6PMA7+r0APDr9QDx7fUA8/D3APTx+AD29PkA+Pb6APn4+wD6+fwA/Pr9AP39
/gDwwwAA/9IRAP/YMQD/3VEA/+RxAP/qkQD/8LEA//bRAP///wAAAAAALxQAAFAiAABwMAAAkD4AALBN
AADPWwAA8GkAAP95EQD/ijEA/51RAP+vcQD/wZEA/9KxAP/l0QD///8AAAAAAC8DAABQBAAAcAYAAJAJ
AACwCgAAzwwAAPAOAAD/IBIA/z4xAP9cUQD/enEA/5eRAP+2sQD/1NEA////AAAAAAAvAA4AUAAXAHAA
IQCQACsAsAA2AM8AQADwAEkA/xFaAP8xcAD/UYYA/3GcAP+RsgD/scgA/9HfAP///wAAAAAALwAgAFAA
NgBwAEwAkABiALAAeADPAI4A8ACkAP8RswD/Mb4A/1HHAP9x0QD/kdwA/7HlAP/R8AD///8AAAAAACwA
LwBLAFAAaQBwAIcAkAClALAAxADPAOEA8ADwEf8A8jH/APRR/wD2cf8A95H/APmx/wD70f8A////AAAA
AAAbAC8ALQBQAD8AcABSAJAAYwCwAHYAzwCIAPAAmRH/AKYx/wC0Uf8AwnH/AM+R/wDcsf8A69H/AP//
/wAAAAAACAAvAA4AUAAVAHAAGwCQACEAsAAmAM8ALADwAD4R/wBYMf8AcVH/AIxx/wCmkf8Av7H/ANrR
/wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAASjIuLi5VhnU1XYZzNC4uLi4uLi4uMkoAAAAAAAAAABYCAQEBARNs
hDwfc4I1AwEBAQEBAQEBAxcAAAAAAAARAQEEBgYCAix/dyI0gnQfAQEBAQgJCQUBARIAAAAANAEBAhs2
OBoCBkuGXhRVhlsLAQEPVWlcFgEBAjUAAAAdAQEBDTpQQw8BEmqEPh1ygzsDBUeFhUEFAQEBIAAAABUB
AQECGkVTNwYCK355JjOBdSErfY9hDgEBAQEYAAAAFQEBAQEGL1dYJwIGSoVhFVSGaW6PeCQBAQEBARgA
AAAUAQEBAQEPRFpREwERaIVBHG+Pj4Q9BAEBAQEBGAAAABUBAQEBAQIjWWRCBwEqfnsoMoCPYQsBAQEB
AQEYAAAAFAEBAQEBAQY5ZWYuAwZIhWcVT4ZjDAEBAQEBARgAAAAVAQEBAQEBARBWcGIYARBnhUYZboQ+
BAEBAQEBGAAAABQBAQEBAQEBAiZtdk4JA0GPfCoxgHklAQEBAQEYAAAAFAEBAQEBAQEBBkB6ezQccY+P
aBZNhmEOAQEBARgAAAAUAQEBAQEBAQEBEGGDdGiGgniFSRhshUEFAQEBGAAAABkBAQEBAQEBAQEBKnuP
j4ZSK3l+Ky6AeygBAQEdAAAALQEBAQEBAQEBAQEFPWdjWxYEP4RqF0yGYxABATAAAAAACQEBAQEBAQEB
AQEECAgHAgEMX4VLGGuFRwUKAAAAAABGCQEBAQEBAQEBAQEBAQEBAQEkeH4sLX58LkgAADwAAAAALhwY
GBgYGBgYGBgYGBgYGBxShmspXYYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAP///////////////////////////////+AAAD/AAAAfgAAADwAAAAcAAAAHAAAABwAA
AAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAeAAAAPgAAADeAAAD//////////////
////////////////////////KAAAABAAAAAgAAAAAQAIAAAAAABAAQAAAAAAAAAAAAAAAQAAAAAAAAAA
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
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
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH9/fwKTdboaj2y1SX9ZqXJdLpVyWyyTclss
k3JbLJNyWyyTclssk3JbLJNyjGuycvbz+HL+/v5y/v7+cvz8/nK1ns1yXS6Vcl0slXKpj8dy/Pz8cv7+
/nL+/v5y/Pr8cqWKxHJbLpNyWyyTclssk3JbLJNyWyyTclssk3JbLJNyWyyTclssk3JbLJNyWyyTclss
k3JbLJNyWyyTclssk3JbLJNyWyyTclssk3JgMZVygV2scragzmnNwt0u6en/DAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqqqqA5RztB9uQp9zWSeRzUgS
hfBFDoT/QAiB/z8HgP8/B4D/PweA/z8HgP8/B4D/PweA/1Ykj//Pwd///v7+///////+/v7/1cjj/1op
kf9AB4H/aj6c/+Xe7v////////////7+/v/Ku9z/UyGN/z8HgP8/B4D/PweA/z8HgP8/B4D/PweA/z8H
gP8/B4D/PweA/z8HgP8/B4D/PweA/z8HgP8/B4D/PweA/z8HgP8/B4D/QAiB/0UPhP9RH4z8bkOf5ZyB
v6nUxuJI/v7+CQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzMzMBaSJ
wl1jNJjQQgqB+jsBff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff87An7/dk2l/+3o
8/////////////v6/P+pkMb/QguC/z4GgP+Udbn/+Pb6////////////+Pb7/5l7u/8/BoD/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zsBff9GEIX+e1So7L2p03Xi4v4JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAzMz/BZt+u19bKpPoPAN+/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/0EJgv+kisP/+vn8////////////8Ov1/3tUqP88An7/TBaJ/8Ox1//+/f7/////////
///n4e//bUKe/zsBfv86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zwEf/9iNZfwr5fIduLi/gkAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKaIw0VhMpfnOwJ+/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/VCGO/8/B3//+/v7////////////Ux+L/VyWQ/zsB
ff9pPJz/5N3t/////////////v7+/8u73P9QHIv/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PAN+/2xB
nvHDs9Zf////AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKp/vwxmN5mqPQV//joAff86AH3/OgB9/zoA
ff86AH3/PAN//z0Ff/89BX//PQV//z0FgP89BX//OwJ+/zoAff86AH3/OgB9/zsCfv9ySaL/6+by////
////////+/r8/6qRx/9DC4P/PgWA/5Bvtf/39Pn////////////59/v/noG//0AHgf86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zwDfv9BCYH/QQmC/0EJgv9BCYL/QQmC/z8HgP87AX3/OgB9/zoA
ff86AH3/OgB9/zoAff9AB4H/immyzufb7SsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACEYK9HSBKG7ToA
ff86AH3/OgB9/zoAff86AH3/OwF+/1QslP9wXKr/dGGr/3ZjrP94ZK3/eGWt/1oylv87An7/OgB9/zoA
ff86AH3/QAiB/56Cv//6+Pz////////////x7fb/gFur/zwCfv9KFIf/vqvU//39/v///////////+rk
8f9xR6H/OwF+/zoAff86AH3/OgB9/zoAff86AH3/OgB9/z0Ef/9/War/u6fS/7yp0/+8qdP/vKnT/7un
0v+CXa3/PQR//zoAff86AH3/OgB9/zoAff86AH3/OgB9/1cmkfu1oc1o////AQAAAAAAAAAAAAAAAAAA
AAAAAAAAcEWflj4GgP46AH3/OgB9/zoAff86AH3/OgB9/zoAff9JGIr/gXa3/5OUxP+Wl8b/mZrH/5yd
yf+Mg73/TiCM/zoAff86AH3/OgB9/zoAff9QHYz/zLzd//7+/v///////////9jN5f9ZKJL/OgF9/2U4
mv/j2+z////////////+/v//y7zd/1Ifjf86AH3/OgB9/zoAff86AH3/OgB9/zoAff9kNpn/4tns////
///////////////////g2Ov/ZDaZ/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff8/B4D/kXG2seXM
5QoAAAAAAAAAAAAAAAAAAAAAAAAAAGc7m9M6AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OwJ+/1w3
mv+QjcL/mZrH/5udyf+foMv/oaLM/35qsf9BCoL/OgB9/zoAff86AH3/OwF9/3FIov/r5fL/////////
///8+/3/rpfK/0QNg/8+BX//j2+1//b0+f////////////r5/P+ih8L/QQmC/zoAff86AH3/OgB9/zoA
ff9KFYj/vqzU//39/v/////////////////18vj/imiy/z0Ef/86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OwJ9/3lSpuTt5/MsAAAAAAAAAAAAAAAAAAAAAAAAAABZKJHgOgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff9ACIL/dFys/5qayP+eoMv/oaPM/6Smzv+gnsr/Y0Cc/zsDfv86AH3/OgB9/zoA
ff9ACIH/nYC+//n3+/////////////Ht9v+BXKz/PAN+/0gTh/+5pdH//f3+////////////7Ofy/3VM
pP87AX7/OgB9/zoAff8+BYD/k3O3//f1+v/////////////////9/P7/tqHP/0gShv86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff9oPJvv183mNAAAAAAAAAAAAAAAAAAAAAAAAAAATReJ4DoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/0gWiv+Kfbv/oaPM/6Smzf+nqc//qqzR/5mR
xP9SJI//OgB9/zoAff86AH3/OgB9/08biv/It9v//v7+/////////v//2tDn/10tlP86AX3/YTOX/+DX
6v////////////7+///Pwd//VCKO/zoAff87AX3/az+d/+Xd7v//////////////////////3dLo/14u
lP86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/YDGW77+r0jQAAAAAAAAAAAAA
AAAAAAAAAAAAAEsViOA6AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff87AX7/YDuc/52b
yf+nqc//qqzR/62v0v+vsNP/iXa3/0INg/86AH3/OgB9/zoAff87AX3/bkOf/+jh8P////////////38
/v+znc3/Rg+F/zwDf/+LabL/9fL5////////////+/v9/6eOxf9CC4L/ThmK/8a12f/+/v7/////////
////////8+/3/4Vhrv88A37/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/2Ax
lu+/q9I0AAAAAAAAAAAAAAAAAAAAAAAAAABLFYjgOgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/0AJgv95YK7/qKjP/6yu0v+vstT/s7XW/6+u0/9vTaP/PQR//zoAff86AH3/OgB9/z8H
gf+afLz/+ff7////////////8/D3/4Rgrv88A37/SBKG/7ql0f/+/f7////////////v6vT/f1mq/5x/
vf/49/v//////////////////Pv9/7CZy/9FDoT/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff9gMZbvv6vSNAAAAAAAAAAAAAAAAAAAAAAAAAAASxWI4DoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/SheK/5KFwP+vsdP/srXV/7a41/+4utn/qKHM/1Yo
kf86AH3/OgB9/zoAff86AH3/ThqK/8e32v/+/v7////////////b0ej/Xi6V/zsBff9hMpf/3dTp////
/////////v7//+jh8P/w7PX//////////////////////9fM5f9aKZL/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/YDGW77+r0jQAAAAAAAAAAAAAAAAAAAAAAAAAAEsV
iOA6AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zsBfv9jPJz/qabO/7W4
1/+5u9n/u73b/76/3P+Vg77/RRCF/zoAff86AH3/OgB9/zsBff9rP57/5t/v/////////////fz9/7ij
0P9HEYb/PAN+/4djr//z8Pf///////////////////////////////////////Dr9f98Van/PAJ+/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/2Axlu+/q9I0AAAAAAAA
AAAAAAAAAAAAAAAAAABLFYjgOgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/QAiC/4Bmsv+2t9f/u77a/77A3P/CxN7/vr3b/3ZVp/88BH//OgB9/zoAff86AH3/PgWA/5V2
uf/49vr////////////18vj/iWax/z0Ef/9GEIX/tZ/O//38/f////////////////////////////v6
/P+rkcf/QwuD/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff9gMZbvv6vSNAAAAAAAAAAAAAAAAAAAAAAAAAAASxWI4DoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff9MGYv/m43E/72/3P/Bw97/xcfg/8fJ4f+1rdP/Wy6U/zsB
ff86AH3/OgB9/zoAff9MF4j/w7HY//7+/v///////////9/W6v9gMZb/OwF9/10ulP/c0uj/////////
///////////////+///Rw+D/VSOP/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/YDGW77+r0jQAAAAAAAAAAAAAAAAAAAAAAAAAAEsViOA6AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OwF9/2I5m/+2stb/xMbf/8fJ
4f/KzOL/zM3j/6SUx/9IFIf/OgB9/zoAff86AH3/OwF9/2k9nP/m3+7////////////9/P7/uaXR/0gS
hv89BH//hWCu//Pv9//////////////////z8Pf/e1So/zwCfv86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/2Axlu+/q9I0AAAAAAAAAAAAAAAAAAAAAAAA
AABLFYjgOgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff9ACIH/h261/8TE3//Ky+L/zc/k/9HS5v/OzOP/f16s/z0Ef/86AH3/OgB9/zoAff8+BYD/lXa5//f1
+v////////////Xy+f+NbLT/PQV//0QNhP+xmcv//Pv9////////////9vP5/4Rgrv88A37/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff9gMZbvv6vSNAAA
AAAAAAAAAAAAAAAAAAAAAAAASxWI4DoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/0sYiv+jlMj/zc7j/9DS5v/U1ej/19jp/8W/3f9iN5j/OgF9/zoA
ff86AH3/OgB9/0sWiP/ArdX//v3+////////////4dnr/2Q3mf87AX3/WyqS/9nO5v//////////////
///azub/XCuT/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/YDGW77+r0jQAAAAAAAAAAAAAAAAAAAAAAAAAAEsViOA6AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff87AX3/ZTyc/8O/3f/T1Of/1tjp/9rb
6//c3ez/r57M/0oWiP86AH3/OgB9/zoAff87AX3/ZTia/+Pa7P////////////79/v+9qtT/SROH/zwD
fv+BXKz/8u73/////////////Pv9/7GazP9EDoT/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/2Axlu+/q9I0AAAAAAAAAAAAAAAAAAAAAAAAAABLFYjgOgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/0AI
gf+LcLb/0dHl/9nb6//d3uz/4OHu/93c6/+MbbT/PgaA/zoAff86AH3/OgB9/z4Ff/+Pb7X/9vT5////
////////9vP5/5Bvtv8+BX//RA2E/6+Yy//8+/3////////////z7/f/gl6t/zwDfv86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff9gMZbvv6vSNAAAAAAAAAAAAAAAAAAA
AAAAAAAASxWI4DoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/TBiK/6+hz//c3ez/4OHt/+Pk7//m5/H/1M3k/2Y7m/87AX3/OgB9/zoA
ff86AH3/TBeJ/87A3//////////////////k3O3/Zzub/zsBff9YJ5H/1cnj//7+/////////////9rQ
5v9dLpT/OgF9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/YDGW77+r
0jQAAAAAAAAAAAAAAAAAAAAAAAAAAEsViOA6AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zsBfv9lOpv/zcjh/+Lj7//l5vH/6ery/+vr
9P+7qtP/TxuL/zoAff86AH3/OgB9/2Axlv/f1ur//////////////////v7+/8Gv1v9LFoj/PAJ+/31X
qf/w7PX////////////9/P3/taDP/0YQhf86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/2Axlu+/q9I0AAAAAAAAAAAAAAAAAAAAAAAAAABLFYjgOgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PwaA/49y
t//h4O3/6ery/+zt9P/v8Pb/7ez1/5Z4uv8/BoD/OgB9/0gShv+5pdH//f3+////////////////////
///49fr/lHS4/z4FgP9DDIP/qpLI//z7/f////////////Tx+P+HZLD/PAN//zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff9gMZbvv6vSNAAAAAAAAAAAAAAAAAAAAAAAAAAASxWI4DoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff9NGor/uarT/+rr8//u7/b/8fL4//X1+f/g2ev/aj+d/z4Ff/+LabP/9fL4////
/////////////////////////////+Xd7v9oPJv/OwF+/1cnkf/VyeT///7/////////////3dPp/14w
lf86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/YDGW77+r0jQAAAAAAAAAAAAA
AAAAAAAAAAAAAEsViOA6AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgF9/2Q4mv/X0ef/8fL4//X1+f/4+Pv/+vr8/8q7
3P98Vaj/4djr///////////////////////+/v7////////////+/f7/xbTY/00Ziv87An7/elOn/+7p
9P////////////38/v+2oc//SBKG/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/2Ax
lu+/q9I0AAAAAAAAAAAAAAAAAAAAAAAAAABLFYjgOgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff8/BoD/lnm6/+/u
9v/4+Pv/+/v8//7+/v/6+fz/7Ofz//39/v/////////////////18vj/w7HX//Xy+P////////////j2
+/+Yerv/PweA/0IKgv+mjMT/+/r8////////////9fL5/4xqs/89BH//OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff9gMZbvv6vSNAAAAAAAAAAAAAAAAAAAAAAAAAAAUyGO4DoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/00Yif++rdT/+fr7//39/v/////////////////////////////////9/P3/tqDP/1Mh
jv+1oM7//fz+////////////5+Dv/2xBnv87AX3/VSKP/9LF4f///v/////////////g1+r/YjSX/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/YjSX78m11zQAAAAAAAAAAAAAAAAAAAAAAAAAAGEz
lt46AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/Zjqa/+La7P//////////////////////////////
////////29Dn/1wsk/86AX3/Xi+V/9zS6P////////////7+/v/Gttr/ThqK/zsCfv94Uab/7ur0////
/////////f3+/7qn0v9IEof/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/3BHoO3m3OszAAAAAAAA
AAAAAAAAAAAAAAAAAABfLpWpPAJ+/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/z4FgP+UdLj/+PX6////
////////////////////////8u72/4Nerf88A37/OgB9/zwDfv+GYq//8+/3////////////+fj7/52A
vv9ACIH/QQqC/6aMxf/7+fz////////////18/n/jGqz/z0Ff/86AH3/OgB9/zoAff86AH3/OgB9/zwD
f/+AWqzC5NbxEwAAAAAAAAAAAAAAAAAAAAAAAAAAcUegZ0EKgvg6AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/ShSH/5l6u/+ulsr/rpbK/66Wyv+ulsr/rpbK/5Bwtv9EDYP/OgB9/zoAff86AH3/RA6E/7Ca
y//9/P3////////////q5PH/cEah/zsBff9TIY7/zr/e//7+/////////////+Pa7P9mOZr/OgB9/zoA
ff86AH3/OgB9/zoAff9HEYX8noPAgv///wMAAAAAMwCZBTMAfwp/AH8CAAAAAKuUyStfL5XcOgF9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff88A3//PgaA/z4GgP8+BoD/PgaA/z4GgP88A3//OgB9/zoA
ff86AH3/OgB9/zoAff9bKpP/2s7m/////////////v7+/8q63P9QHIv/OwF+/3RKo//s5vP/////////
///9/f7/wK3V/0oViP86AH3/OgB9/zoAff87AX7/YzaY2a6Vxyl/AH8COQB8MToAfXI5AHt4OQB6YjMA
fxS/f78EdUykaEgShvc6AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PAN+/4JdrP/y7vb////////////6+Pz/n4PA/0EI
gf9ACIH/oobC//r5/P////////////f0+f+QcLb/PgWA/zoAff86AH3/ThyK/Jx/voL///8EPAB/IjkA
e3w5AHyNOwB9eDkAfIU5AH1mAAAAALib1BJnOZqWQQmB+DoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff9DDIP/rJTI//z7
/f///////////+zn8/90S6P/OwJ+/1Ifjf/Ov97//v7/////////////49vs/2Y5mv87AX3/RhCF+4Vh
rqza0ewcAAAAADgAe0g5AHxMOQB8nDkAfK47AH1FOgB9cgAAAAAAAAAAeFChE2s+npZKFYf4OwF9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/1gnkP/VyeP////////////+/v//zsDf/1Mgjf87An7/c0qj/+vl8v////////////39
/v/Dstj/XCyT9YJerKq4p9MdAAAAAAAAAAA7AH1FOgB9UzkAfYo4AH1sOgB8dTgAfHUAAAAAAAAAAAAA
AACuodYTjGqzelork9VFDoT7OwJ+/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff88An7/fVap//Ds9f////////////r5/P+ih8L/QQmB/0AH
gf+dgL7/+vj7//7+/v7+/v719/X5wLahzl+/stgUAAAAAAAAAAAAAAAAOgB/GjgAe3o5AHykOgB8mTgA
fI04AHxWAAAAAAAAAAAAAAAAAAAAAKqq/wOegsAld1CmYmpBnaxKFIa9OgB9vToAfb06AH29OgB9vToA
fb06AH29OgB9vToAfb06AH29OgB9vToAfb06AH29OgB9vToAfb06AH29OgB9vToAfb06AH29OgB9vToA
fb06AH29OgB9vToAfb06AH29OgB9vToAfb06AH29OgB9vToAfb06AH29OgB9vUYQhb2/rtW9/v3+vf7+
/r3+/v696N/wvWU4mb07AX29ZTeZveLZ7L3+/v6Y/v7+Uv7+/hb///8BAAAAAAAAAAAAAAAAAAAAAAAA
AAE3AHcgOAB8XjgAfWg8AHtELgBzCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wGfn78IZjOZCjMA
fwozAH8KMwB/CjMAfwozAH8KMwB/CjMAfwozAH8KMwB/CjMAfwozAH8KMwB/CjMAfwozAH8KMwB/CjMA
fwozAH8KMwB/CjMAfwozAH8KMwB/CjMAfwozAH8KMwB/CjMAfwozAH8KMwB/CjMAfwozAH8KMwB/CjMA
fwozAH8KspnMCv///wr///8K////Cv///wp/TLIKMwB/CmYzmQrMzOUK////BgAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAH8AfwI/AH8EAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
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
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAA////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////+AAAAAAAB//gAAAAAAAB/8AA
AAAAAAD/gAAAAAAAAH+AAAAAAAAAPwAAAAAAAAA/AAAAAAAAAB8AAAAAAAAAHwAAAAAAAAAfAAAAAAAA
AB8AAAAAAAAAHwAAAAAAAAAfAAAAAAAAAB8AAAAAAAAAHwAAAAAAAAAfAAAAAAAAAB8AAAAAAAAAHwAA
AAAAAAAfAAAAAAAAAB8AAAAAAAAAHwAAAAAAAAAfAAAAAAAAAB8AAAAAAAAAHwAAAAAAAAAfAAAAAAAA
AB8AAAAAAAAAHwAAAAAAAAAfAAAAAAAAAB8AAAAAAAAAHwAAAAAAAAAfAAAAAAAAAB8AAAAAAAAAEQAA
AAAAAAAAAAAAAAAAAACAAAAAAAAAQMAAAAAAAADA4AAAAAAAAcDwAAAAAAADwPwAAAAAAB/x////////
////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////8oAAAAMAAAAGAAAAABACAAAAAAAIAl
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
AAAAAAAAAAAAAAAAAAAAAAAA/wD/AQAA/wEAAP8BAAD/AQAA/wEAAP8B////Af///wH///8B////AQAA
/wEAAP8B////Af///wH///8B////AQAA/wEAAP8BAAD/AQAA/wEAAP8BAAD/AQAA/wEAAP8BAAD/AQAA
/wEAAP8BAAD/AQAA/wEAAP8BAAD/Af///wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAf3+/BH9XriZwRqBmZTiZlFIfjZRSH42UUh+NlFIfjZRSH42UlHW4lPn5
/ZT+/v6U9vT5lIRgr5RUIo+UrJTJlP39/pT+/v6U8u32lHxWqJRSH42UUh+NlFIfjZRSH42UUh+NlFIf
jZRSH42UUh+NlFIfjZRSH42UUh+NlFIfjZRSH42UWSeSlIFcrJKihL9gyrvZIv///wIAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACki8Ufaz6cgksWiNlACID6PAN//zsCfv87An7/OwJ+/zsC
fv87An7/VSOP/9TI4////////f3+/7ei0P9HEYb/ZTiZ/+Xd7v///////Pz9/62Vyf9DDIP/OwJ+/zsC
fv87An7/OwJ+/zsCfv87An7/OwJ+/zsCfv87An7/OwJ+/zsCfv87An7/PAJ+/z4GgP9MF4n5ckmi1LGa
y23i4v4JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKKNxiRpPZy3QQqB/DoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OwF+/3lSp//w7PX///////Xz+f+IZbH/PweA/5Fxtv/49vr///////Ht
9v98Van/OwJ+/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/PAJ+/1gmkPKZe7t44uL+CQAAAAAAAAAAAAAAAAAAAAAAAAAAqn+/DG1Dnqc/B4H9OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/0EJgv+ojsX/+/v9///////g1ur/XzCV/0gT
h/+/rNX//v3+///////Zzub/WCeR/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoBff9cK5PxrpXKXP///wIAAAAAAAAAAAAAAAAAAAAAcUafSEQN
hO86AH3/OgB9/zoAff87AX7/ShuL/1Qskv9VLpP/Vy+T/1Akjv88A37/OgB9/zoAff9SH43/0sXh////
///9/f7/uqbS/0cRhf9iNJf/49rs///////9/P7/sJjL/0MLg/86AH3/OgB9/zoAff86AH3/OgB9/0YQ
hf9xR6H/d0+l/3dPpf92TqX/VyWQ/zoBff86AH3/OgB9/zoAff88A37/eFKmzdfN4RoAAAAAAAAAAAAA
AAAAAAAAYTKVojsCfv86AH3/OgB9/zoAff86AX7/Vy+W/4qFvf+SkcP/lpXF/5GKwP9WLJP/OgF9/zoA
ff87AX3/dk2k/+/q9P//////9/X6/4tqs/9AB4D/jWy0//f1+v//////8+/3/4Bbq/88An7/OgB9/zoA
ff86AH3/PgWA/5d4uv/08Pf/+Pb6//j2+v/h2ev/Zjia/zoAff86AH3/OgB9/zoAff86AH3/UR6M9KuQ
xUwAAAAAAAAAAAAAAAAAAAAAVyWQ1zoAff86AH3/OgB9/zoAff86AH3/PwiB/3Ndq/+YmMf/nZ7K/6Gi
zP+JfLn/RRGF/zoAff86AH3/QAiB/6SJw//7+vz//////+La7P9iM5f/SBKG/7un0v/+/f7//////9zS
6P9bK5P/OgB9/zoAff86AX3/bUKe/+nj8f////////////n3+/+UdLj/PgV//zoAff86AH3/OgB9/zoA
ff86AH3/QguC/p6Bv4z///8BAAAAAAAAAAAAAAAASxaI3zoAff86AH3/OgB9/zoAff86AH3/OgB9/0oY
i/+Jfrv/oKLM/6Smzv+lpc7/c1in/z0Ff/86AH3/OgB9/1EejP/Pwd////////79/v++qtT/SROH/18w
lv/h2Ov///////39/v+znc3/RQ6E/zoAff9OGor/yrrc//7+/////////v7+/8Gv1v9KFIf/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/PQV//4dksJj///8BAAAAAAAAAAAAAAAARQ6E3zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zsBfv9gOpv/npzJ/6iq0P+rrdL/paLM/100lv86AX3/OgB9/zsBfv9ySaL/7ejz////
///39fr/j2+2/z8Hgf+JZ7H/9vP5///////18fj/hmOv/0EJgv+fg8D/+vn8////////////5Nzt/2Q3
mf86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PQR//4Fcq5j///8BAAAAAAAAAAAAAAAARQ6E3zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff8/CIH/e2Ov/6qr0f+vsdP/tLbW/5mMwf9JFoj/OgB9/zoA
ff8/B4H/oYXB//v6/P//////5Nzt/2Q3mf9GEIX/uaXR//39/v//////39Xq/5NzuP/t6PP/////////
///39Pn/jWu0/z0Df/86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PQR//4Fcq5j///8BAAAAAAAA
AAAAAAAARQ6E3zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/ShiK/5iNw/+ztdb/uLrY/7m6
2f+CaLH/PwaA/zoAff86AH3/UByM/82/3v///v///v7+/8Gv1v9KFIj/XS6U/97U6f///////v3+//f1
+v////////////79/v+7p9L/RxGG/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PQR//4Fc
q5j///8BAAAAAAAAAAAAAAAARQ6E3zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OwF+/2Q9
nf+vrdL/u73a/7/C3f+4tdb/ZDua/zsBff86AH3/OgF9/29FoP/r5vL///////j2+/+Tc7j/PweA/4Zi
r//18vj//////////////////////9/W6v9fMJb/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/PQR//4Fcq5j///8BAAAAAAAAAAAAAAAARQ6E3zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/z8Hgf+CabL/vb7b/8PF3//HyeH/qZzL/04ci/86AH3/OgB9/z8GgP+dgL7/+vn8////
///n3+//aDqb/0UOhP+1n87//f3+////////////9fL4/4Vhr/88A37/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/PQR//4Fcq5j///8BAAAAAAAAAAAAAAAARQ6E3zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff9NGov/p5zL/8fI4f/LzeP/zs7k/5F4uf8/B4D/OgB9/zoA
ff9OGor/zLzd//7+///+/v7/xLPY/0sXif9bK5P/3NHo////////////3NHo/1EdjP86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PQR//4Fcq5j///8BAAAAAAAAAAAAAAAARQ6E3zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff87AX7/Zj6d/7+72//P0eX/09Xn/8vI
4f9uR6H/OwF9/zoAff87AX3/bkOf/+rj8f//////+fj7/5d5uv9AB4H/gV2s//Tx+P//////9/X6/45s
tP89A3//OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PQR//4Fcq5j///8BAAAAAAAA
AAAAAAAARQ6E3zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PwaA/450
uP/R0eb/19nq/9vd7P+9stb/Uh+N/zoAff86AH3/PgaA/5l7vP/6+Pv//////+ji8P9qPp3/RA2D/7Kb
zP/9/f7//////+Pb7P9jNZj/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PQR//4Fc
q5j///8BAAAAAAAAAAAAAAAARQ6E3zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/04bi/+yptD/293r/+Dh7f/h4u7/noXA/0EJgv86AH3/OgB9/00Yif/LvN3///////7+
///It9v/TRiJ/1kokf/Zzub///////79/v++q9T/SBKG/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/PQR//4Fcq5j///8BAAAAAAAAAAAAAAAARQ6E3zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zsBff9pQZ7/0c3k/+Pk7//o6fL/39zs/3dRpv88An7/OgB9/0YQ
hf/ArdX////////////6+Pv/m369/0AIgf9+War/8u/3///////49vr/kXG2/z0Ef/86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/PQR//4Fcq5j///8BAAAAAAAAAAAAAAAARQ6E3zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff8/B4D/lXu7/+Tk8P/s7PT/8PD2/8/E
4P9VI4//PAN+/4lmsf/28/n/////////////////6uTx/21Dn/9DC4P/rpbK//z8/f//////5d7u/2Y5
mv86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PQR//4Fcq5j///8BAAAAAAAAAAAAAAAARQ6E3zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/ThuL/76w
1v/v8Pb/9PT5//b1+f+rk8j/aj6c/+DX6////////////////////////v7//8u83f9PG4v/VyaR/9jM
5f///////v7+/8Gv1v9KFIf/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PQR//4Fcq5j///8BAAAAAAAA
AAAAAAAARQ6E3zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgF9/21Dn//k3+7/+Pj6//z8/f/18vj/4Nfq//79/v////////7//+DX6//s5vL///////v5
/P+fg8D/QAiB/3tUqP/x7fb///////n3+/+Vdbn/PgV//zoAff86AH3/OgB9/zoAff86AH3/PQR//4Fc
q5j///8BAAAAAAAAAAAAAAAATRmK3zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/z8Hgf+afb3/9/b5//7+////////////////////////6+Xy/3NK
o/+Scrf/+Pb7///////s5vP/cUeh/0ILgv+qkcf//Pv9///////o4fD/aTyc/zoAff86AH3/OgB9/zoA
ff86AH3/PgV//4losZj///8BAAAAAAAAAAAAAAAAVCKOzjoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff9NGIn/ybnb//7+////////////////
///6+Pz/m329/z4GgP9JFIf/wa/W//7+/v///v//zsDf/1EejP9VI4//1snk///////+/v//xbTZ/0sW
iP86AH3/OgB9/zoAff86AH3/Qw2E/Zt9vYD///8BAAAAAAAAAAAAAAAAXCyUkDwDfv46AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff87AX3/aT2c/7qm
0v/ArdX/wK3V/8Ct1f+pj8b/TBiJ/zoAff86AH3/YzaY/+Pb7f//////+/r8/6KHwv9BCYL/eVKn//Dr
9f//////+ff7/5h6u/8+BYD/OgB9/zoAff86AH3/UiCM7aeOxD0AAAABMwB/CjgAcQkAAAABhWKvQ0oU
h+o6AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OwF+/z8Hgf9ACIH/QAiB/0AIgf8+BYD/OgB9/zoAff86AH3/PQR//41stP/39fr//////+7p
8/91TKT/QQqC/6aMxP/8+/3//////+nj8f9sQJ7/OgF9/zoAff8+BX/+bUSfqKqU1Aw1AHg5OAB6cDkA
fHM3AH0zkW22B2c6m4g/B4D4OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/0gR
hv+8qNP//v3+///+///SxeH/UyCO/1Mhjv/TxuL///////7+/v/IuNv/TBiJ/zsCfv9eLpXgqZHKPzwA
eRU6AH5lOgB7kDoAfX44AHtjAAAAAHhLpRFeL5WRRA6E+DoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff9gMZb/4djr///////8+/3/po3F/0EKgv93TqX/7ur0///////6+Pv/nYG+/V4u
lduRcLdPqqr/AzgAehs5AHtdOQB8hTkAen05AH1mAAAAAAAAAACvj88QeFGkblUjjsxEDYPzPAR+/DkA
fPw5AHz8OQB8/DkAfPw5AHz8OQB8/DkAfPw5AHz8OQB8/DkAfPw5AHz8OQB8/DkAfPw5AHz8OQB8/DkA
fPw5AHz8OQB8/DkAfPw5AHz8OQB8/DkAfPw7A378imiy/Pbz+Pz+/v787unz/HZNpPxACYH8pozE/Pv6
/Pj+/v7c6+XyjaiNwy//qv8DAAAAACQAbQc5AHxYOgB8lTgAfIs4AHpRAAAAAAAAAAAAAAAAf39/ApR0
tBh2T6VHShSGWTkAflk5AH5ZOQB+WTkAflk5AH5ZOQB+WTkAflk5AH5ZOQB+WTkAflk5AH5ZOQB+WTkA
flk5AH5ZOQB+WTkAflk5AH5ZOQB+WTkAflk5AH5ZOQB+WTkAflk5AH5ZWCWSWeXc7Vn+/v5Z/v7+WbGX
y1k/CIBZe1WpWfLv+FH+/v4j////BQAAAAAAAAAAAAAAAAAAAAA4AHEJNgB5KjoAfCckAJEHAAAAAAAA
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
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////
AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAPwA
AAAD/wAA4AAAAAB/AADAAAAAAD8AAIAAAAAAHwAAAAAAAAAPAAAAAAAAAA8AAAAAAAAADwAAAAAAAAAH
AAAAAAAAAAcAAAAAAAAABwAAAAAAAAAHAAAAAAAAAAcAAAAAAAAABwAAAAAAAAAHAAAAAAAAAAcAAAAA
AAAABwAAAAAAAAAHAAAAAAAAAAcAAAAAAAAABwAAAAAAAAAHAAAAAAAAAAcAAAAAAAAABwAAAAAAAAAH
AAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAwAAAAAAgAADgAAAAAPAAAP//
/////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
AAD///////8AAP///////wAAKAAAACAAAABAAAAAAQAgAAAAAACAEAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/f38Cf1WqBn9V
qgZ/VaoGf1WqBtTU1Ab///8G1NTUBn9VqgbU1P8G////BtSq1AZ/VaoGf1WqBn9VqgZ/VaoGf1WqBn9V
qgZ/VaoGf1WqBn9VqgZ/f6oG////AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZmcwFaz2eMlgm
kYVOGomwRg+FsUYPhbFIEYWxm36+sfz6/bHf1emxXzCVsayUyLH9/f6x2c7msVkokbFGD4WxRg+FsUYP
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
pf9+WKr/8/D3/+3o8/9wRqH/OgF9/zoAff86AH3/URyM5amJyicAAAAAAAAAAEwYibo6AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/QAeA/5h6u//Pwd//z8Hf/8Ct1f9ZKJH/PgaA/5x/
vv/6+fz/1cnj/1sqk/+ulsn//Pz9/8/B3/9PHIv/OgB9/zoAff9bK5LDrpPJEzoAdQ0zAGYFZjeYYT8H
gPU6AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/PgWA/0QNhP9EDYT/QgqC/zsB
ff86AH3/TBeJ/8q73P/8+/3/qpDG/1wsk//YzOX//Pr9/6KHwv8/B4D/QwyD93FKo2c8BH03OAB6cDcA
fE5/VaoMVCGPi0AJgfY6AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoAff86AH3/OgB9/zoA
ff86AH3/OgB9/zoAff86AH3/az+d/+rk8f/y7vb/e1So/3xVqP/y7vb/7+r0/3lSp/RkOJqVk3i7EzgA
elE5AHyFOgB8ZAAAAACJYsQNaDuZYkwZibc9BH/QOQB90DkAfdA5AH3QOQB90DkAfdA5AH3QOQB90DkA
fdA5AH3QOQB90DkAfdA5AH3QOQB90DkAfdA+Bn/QpYvE0Pz8/dDPwd/QUyGO0Lun0s/+/v6u2MznVZF/
tg4AAAAAOgB6MDoAfXI4AHtIAAAAAAAAAAD/AP8Bi1yiC1AahhM1AIYTNQCGEzUAhhM1AIYTNQCGEzUA
hhM1AIYTNQCGEzUAhhM1AIYTNQCGEzUAhhM1AIYTNQCGEzUAhhN4Xa4T/v7+E/Hx/hNrNaEToYa7E/7+
/gkAAAAAAAAAAAAAAAAAAAABPwB/CFUAVQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAD//////////////////////////+AAAD+AAAAPAAAABwAAAAMAAAADAAAAAwAA
AAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAAAAAACAAAAIwAAAOP//
/////////////////////////////ygAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAB/VaoGXy+PEF8vjxDfz+8Qr4/PEN/P7xCff78QTx+PEE8fjxBPH48QTx+PEG1I
ow5/f/8CAAAAAAAAAABjMZUpRxGGnT8HgclBCIHLpIrCy7il0MuznszLspvMy0MMg8s+BYDLPgWAyz4G
gMtHEoXDYzeYbo1xqQkAAAAARxGFrDwDfv5VLJP/WDCU/1kpkv/Nv97/mHq7/9LF4f9ySaL/OwF+/2Y5
mv+CXq3/Rg+F/0EKgvFrQZxOAAAAAD4GgN06AX3/XjmZ/5WOwv9ZL5T/fliq/8u83f+egb//yrrc/2tA
nf/WyuT/qY/G/0AIgf86AX3/WSiRgwAAAAA8BH7fOgB9/z8Hgf+DbbP/mYzC/08di/+tlMn/sZrL/7qm
0f/l3u7/0sXh/1Ifjf86AH3/OgB9/1Qjj4cAAAAAPAR+3zoAff86AH3/Th2M/6yizv+JbbT/WSiR/82+
3v+Ze7z/3tTp/5R1uP87AX7/OgB9/zoAff9UI4+HAAAAADwEft86AH3/OgB9/zsBff9wS6P/ycLe/2xC
nv+KaLL/1cnj/51/vv/MvN3/Uh+N/zoAff86AH3/VCOPhwAAAAA8BH7fOgB9/zoAff86AH3/QAmB/6SN
xP/NwN7/xLPY//Ds9f+znc3/uKPQ/6iOxf9ACIH/OgB9/1Qjj4cAAAAAQAiB1DoAff86AH3/OgB9/zoA
ff9VI4//xbXZ/9LF4v+DX63/y7zd/5t9vf/Rw+D/eVKn/zwDfv1bKpJ4MwB/CkoUhns8BH7zOgB9/joA
ff86AH3/OwF9/0YQhf9IE4b/PAN+/3dPpf/Ov97/nH+9/82/3vxhMZbNUiGOTTgAfFpcLqILTh2MTjwE
fnE6AH1yOgB9cjoAfXI6AH1yOgB9cjoAfXJFD4Nyy7vdcpp9u3LPwuBluqXVJTwPeBE5AHksAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAA//8AAP//AACAAwAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAP//
AAD//wAA//8AAA==
</value>
</data>
</root>
Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

@@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace DIO_Demo
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("DIO_Demo")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("DIO_Demo")]
[assembly: AssemblyCopyright("Copyright © 2018")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("6b7b3712-3af0-47fc-a091-36769c36dbd5")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
@@ -0,0 +1,63 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 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.
// </auto-generated>
//------------------------------------------------------------------------------
namespace DIO_Demo.Properties {
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("DIO_Demo.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
}
}
@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
@@ -0,0 +1,26 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 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.
// </auto-generated>
//------------------------------------------------------------------------------
namespace DIO_Demo.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.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;
}
}
}
}
@@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>
@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app" />
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!-- UAC Manifest Options
If you want to change the Windows User Account Control level replace the
requestedExecutionLevel node with one of the following.
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
Specifying requestedExecutionLevel element will disable file and registry virtualization.
Remove this element if your application requires this virtualization for backwards
compatibility.
-->
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
</requestedPrivileges>
<applicationRequestMinimum>
<defaultAssemblyRequest permissionSetReference="Custom" />
<PermissionSet class="System.Security.PermissionSet" version="1" ID="Custom" SameSite="site" Unrestricted="true" />
</applicationRequestMinimum>
</security>
</trustInfo>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<!-- A list of the Windows versions that this application has been tested on and is
is designed to work with. Uncomment the appropriate elements and Windows will
automatically selected the most compatible environment. -->
<!-- Windows Vista -->
<!--<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" />-->
<!-- Windows 7 -->
<!--<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}" />-->
<!-- Windows 8 -->
<!--<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" />-->
<!-- Windows 8.1 -->
<!--<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}" />-->
<!-- Windows 10 -->
<!--<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />-->
</application>
</compatibility>
<!-- Indicates that the application is DPI-aware and will not be automatically scaled by Windows at higher
DPIs. Windows Presentation Foundation (WPF) applications are automatically DPI-aware and do not need
to opt in. Windows Forms applications targeting .NET Framework 4.6 that opt into this setting, should
also set the 'EnableWindowsFormsHighDpiAutoResizing' setting to 'true' in their app.config. -->
<!--
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
</windowsSettings>
</application>
-->
<!-- Enable themes for Windows common controls and dialogs (Windows XP and later) -->
<!--
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
-->
</assembly>
@@ -0,0 +1,9 @@
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\bin\Debug\DIO_Demo.exe.config
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\bin\Debug\DIO_Demo.exe
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\bin\Debug\DIO_Demo.pdb
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Debug\DIO_Demo.csprojResolveAssemblyReference.cache
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Debug\DIO_Demo.Form1.resources
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Debug\DIO_Demo.Properties.Resources.resources
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Debug\DIO_Demo.csproj.GenerateResource.Cache
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Debug\DIO_Demo.exe
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Debug\DIO_Demo.pdb
@@ -0,0 +1,26 @@
C:\Users\wychen.he\Desktop\DIO_Tool_For_MMB501\SRC\DIO_Demo\DIO_Demo\bin\Release\DIO_Demo.exe.config
C:\Users\wychen.he\Desktop\DIO_Tool_For_MMB501\SRC\DIO_Demo\DIO_Demo\bin\Release\DIO_Demo.exe
C:\Users\wychen.he\Desktop\DIO_Tool_For_MMB501\SRC\DIO_Demo\DIO_Demo\bin\Release\DIO_Demo.pdb
C:\Users\wychen.he\Desktop\DIO_Tool_For_MMB501\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.Form1.resources
C:\Users\wychen.he\Desktop\DIO_Tool_For_MMB501\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.Properties.Resources.resources
C:\Users\wychen.he\Desktop\DIO_Tool_For_MMB501\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.csproj.GenerateResource.Cache
C:\Users\wychen.he\Desktop\DIO_Tool_For_MMB501\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.exe
C:\Users\wychen.he\Desktop\DIO_Tool_For_MMB501\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.pdb
C:\Users\wychen.he\Desktop\Demo_Tool\SRC\DIO_Demo\DIO_Demo\bin\Release\DIO_Demo.exe.config
C:\Users\wychen.he\Desktop\Demo_Tool\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.exe
C:\Users\wychen.he\Desktop\Demo_Tool\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.pdb
C:\Users\wychen.he\Desktop\Demo_Tool\SRC\DIO_Demo\DIO_Demo\bin\Release\DIO_Demo.exe
C:\Users\wychen.he\Desktop\Demo_Tool\SRC\DIO_Demo\DIO_Demo\bin\Release\DIO_Demo.pdb
C:\Users\wychen.he\Desktop\Demo_Tool\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.Form1.resources
C:\Users\wychen.he\Desktop\Demo_Tool\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.Properties.Resources.resources
C:\Users\wychen.he\Desktop\Demo_Tool\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.csproj.GenerateResource.Cache
C:\Users\wychen.he\Desktop\Demo_Tool\SRC\DIO_Demo\DIO_Demo\obj\Release\DIO_Demo.csprojResolveAssemblyReference.cache
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\bin\Release\DIO_Demo.exe.config
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\bin\Release\DIO_Demo.exe
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\bin\Release\DIO_Demo.pdb
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Release\DIO_Demo.csprojResolveAssemblyReference.cache
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Release\DIO_Demo.Form1.resources
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Release\DIO_Demo.Properties.Resources.resources
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Release\DIO_Demo.csproj.GenerateResource.Cache
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Release\DIO_Demo.exe
D:\tasks_wychen\Coding\2020\eBOX640-521_DIODemo_20200331\Demo_Tool\SRC\DIO_Demo\obj\Release\DIO_Demo.pdb