diff --git a/DD_CommunicationService/MyComService.Designer.vb b/DD_CommunicationService/MyComService.Designer.vb
index 5166ce05..a3dcb3ce 100644
--- a/DD_CommunicationService/MyComService.Designer.vb
+++ b/DD_CommunicationService/MyComService.Designer.vb
@@ -44,6 +44,7 @@ Partial Class MyComService
'
'MyComService
'
+ Me.AutoLog = False
Me.CanShutdown = True
Me.ServiceName = "DDEDMI_ComService"
diff --git a/DD_CommunicationService/MyComService.vb b/DD_CommunicationService/MyComService.vb
index d161b978..14e47018 100644
--- a/DD_CommunicationService/MyComService.vb
+++ b/DD_CommunicationService/MyComService.vb
@@ -83,7 +83,7 @@ Public Class MyComService
If oAccountRow.Item("GUID") = oEMAILACCOUNT_ID Then
oMailFrom = oAccountRow.Item("EMAIL_FROM")
oMailSMTP = oAccountRow.Item("SERVER_OUT")
- oMailport = oAccountRow.Item("PORT")
+ oMailport = oAccountRow.Item("PORT_OUT")
oMailUser = oAccountRow.Item("EMAIL_USER")
oAuthType = oAccountRow.Item("AUTH_TYPE")
oMailPW = oAccountRow.Item("EMAIL_PW")
@@ -120,12 +120,17 @@ Public Class MyComService
End If
If _Email.NewEmail(oEmailTo, oSubject, oBody, oMailFrom, oMailSMTP, oMailport, oMailUser, oMailPW, oAuthType) = True Then
- Dim upd = "UPDATE TBPMO_WORKFLOW_REMINDER SET EMAIL_SENT = CURRENT_TIMESTAMP WHERE GUID = " & oGUID
+ Dim upd = "UPDATE TBEDM_EMAIL_QUEUE SET EMAIL_SENT = CURRENT_TIMESTAMP WHERE GUID = " & oGUID
_firebird.ExecuteNonQuery(upd)
End If
Next
Else
- _Logger.Warn("Check the Email_Config Tables in EDM_MASTER. At least on table returns nothing or is empty.")
+ If oDT_EMAIL_ACCOUNT.Rows.Count = 0 Then
+ _Logger.Warn("Check the Email_Config Table TBEDM_EMAIL_ACCOUNT. The table seems to be empty.")
+ ElseIf IsNothing(oDT_EMAIL_QUEUE) Then
+ _Logger.Warn($"DT_EMAIL_QUEUE is nothing: {oSQL}")
+ End If
+
End If
diff --git a/GUI_EDMI/App.config b/GUI_EDMI/App.config
index 5534e287..4e26231d 100644
--- a/GUI_EDMI/App.config
+++ b/GUI_EDMI/App.config
@@ -1,6 +1,60 @@
-
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 172.24.12.41
+
+
+ 172.24.12.41:E:\DB\Firebird\Databases\EDMI_TEMPLATE\EDMI_MASTER.FDB
+
+
+ sysdba
+
+
+ dd
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GUI_EDMI/Form1.resx b/GUI_EDMI/Form1.resx
deleted file mode 100644
index 74443647..00000000
--- a/GUI_EDMI/Form1.resx
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 17, 17
-
-
\ No newline at end of file
diff --git a/GUI_EDMI/Form1.vb b/GUI_EDMI/Form1.vb
deleted file mode 100644
index 17d65956..00000000
--- a/GUI_EDMI/Form1.vb
+++ /dev/null
@@ -1,3 +0,0 @@
-Public Class Form1
-
-End Class
diff --git a/GUI_EDMI/GUI_EDMI.vbproj b/GUI_EDMI/GUI_EDMI.vbproj
index 20d14a84..af852fcb 100644
--- a/GUI_EDMI/GUI_EDMI.vbproj
+++ b/GUI_EDMI/GUI_EDMI.vbproj
@@ -46,15 +46,102 @@
On
+
+ TOOL_ohne_slogan.ico
+
+
+
+
+
+
+ ..\Modules.Database\bin\Debug\DigitalData.Modules.Database.dll
+
+
+ ..\Modules.Logging\bin\Debug\DigitalData.Modules.Logging.dll
+
+
+ ..\Message\bin\Debug\DigitalData.Modules.Messaging.dll
+
+
+ ..\packages\EntityFramework.6.2.0\lib\net45\EntityFramework.dll
+
+
+ ..\packages\EntityFramework.Firebird.6.4.0\lib\net452\EntityFramework.Firebird.dll
+
+
+ ..\packages\EntityFramework.6.2.0\lib\net45\EntityFramework.SqlServer.dll
+
+
+ False
+ ..\Modules.Database\bin\Debug\FirebirdSql.Data.FirebirdClient.dll
+
+
+ ..\packages\FirebirdSql.EntityFrameworkCore.Firebird.6.4.0\lib\netstandard2.0\FirebirdSql.EntityFrameworkCore.Firebird.dll
+
+
+
+ ..\packages\Microsoft.EntityFrameworkCore.2.0.3\lib\netstandard2.0\Microsoft.EntityFrameworkCore.dll
+
+
+ ..\packages\Microsoft.EntityFrameworkCore.Relational.2.0.3\lib\netstandard2.0\Microsoft.EntityFrameworkCore.Relational.dll
+
+
+ ..\packages\Microsoft.Extensions.Caching.Abstractions.2.0.2\lib\netstandard2.0\Microsoft.Extensions.Caching.Abstractions.dll
+
+
+ ..\packages\Microsoft.Extensions.Caching.Memory.2.0.2\lib\netstandard2.0\Microsoft.Extensions.Caching.Memory.dll
+
+
+ ..\packages\Microsoft.Extensions.Configuration.Abstractions.2.0.2\lib\netstandard2.0\Microsoft.Extensions.Configuration.Abstractions.dll
+
+
+ ..\packages\Microsoft.Extensions.DependencyInjection.2.0.0\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.dll
+
+
+ ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll
+
+
+ ..\packages\Microsoft.Extensions.Logging.2.0.2\lib\netstandard2.0\Microsoft.Extensions.Logging.dll
+
+
+ ..\packages\Microsoft.Extensions.Logging.Abstractions.2.0.2\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll
+
+
+ ..\packages\Microsoft.Extensions.Options.2.0.2\lib\netstandard2.0\Microsoft.Extensions.Options.dll
+
+
+ ..\packages\Microsoft.Extensions.Primitives.2.0.0\lib\netstandard2.0\Microsoft.Extensions.Primitives.dll
+
+
+ ..\packages\Remotion.Linq.2.1.1\lib\net45\Remotion.Linq.dll
+
+
+ ..\packages\System.Collections.Immutable.1.4.0\lib\netstandard2.0\System.Collections.Immutable.dll
+
+
+ ..\packages\System.ComponentModel.Annotations.4.4.0\lib\net461\System.ComponentModel.Annotations.dll
+
+
+
+
+ ..\packages\System.Diagnostics.DiagnosticSource.4.4.1\lib\net46\System.Diagnostics.DiagnosticSource.dll
+
+
+ ..\packages\System.Interactive.Async.3.1.1\lib\net46\System.Interactive.Async.dll
+
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.4.4.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
+
+
@@ -76,11 +163,18 @@
-
+
+
+ frmEmailAccount.vb
+
+
Form
-
- Form1.vb
+
+ Form
+
+
+ frmMain.vb
Form
@@ -98,10 +192,18 @@
Settings.settings
True
+
+ True
+ True
+ MyDataset.xsd
+
-
- Form1.vb
+
+ frmEmailAccount.vb
+
+
+ frmMain.vb
@@ -122,6 +224,24 @@
Settings.Designer.vb
+
+ MyDataset.xsd
+
+
+ Designer
+ MSDataSetGenerator
+ MyDataset.Designer.vb
+
+
+ MyDataset.xsd
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GUI_EDMI/My Project/Application.Designer.vb b/GUI_EDMI/My Project/Application.Designer.vb
index b08f5516..35678923 100644
--- a/GUI_EDMI/My Project/Application.Designer.vb
+++ b/GUI_EDMI/My Project/Application.Designer.vb
@@ -1,10 +1,10 @@
'------------------------------------------------------------------------------
'
-' This code was generated by a tool.
-' Runtime Version:4.0.30319.42000
+' Dieser Code wurde von einem Tool generiert.
+' Laufzeitversion:4.0.30319.42000
'
-' Changes to this file may cause incorrect behavior and will be lost if
-' the code is regenerated.
+' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
+' der Code erneut generiert wird.
'
'------------------------------------------------------------------------------
@@ -13,15 +13,15 @@ Option Explicit On
Namespace My
-
- 'NOTE: This file is auto-generated; do not modify it directly. To make changes,
- ' or if you encounter build errors in this file, go to the Project Designer
- ' (go to Project Properties or double-click the My Project node in
- ' Solution Explorer), and make changes on the Application tab.
+
+ 'HINWEIS: Diese Datei wird automatisch generiert und darf nicht direkt bearbeitet werden. Wenn Sie Änderungen vornehmen möchten
+ ' oder in dieser Datei Buildfehler auftreten, wechseln Sie zum Projekt-Designer.
+ ' (Wechseln Sie dazu zu den Projekteigenschaften, oder doppelklicken Sie auf den Knoten "Mein Projekt" im
+ ' Projektmappen-Explorer). Nehmen Sie auf der Registerkarte "Anwendung" entsprechende Änderungen vor.
'
Partial Friend Class MyApplication
-
- _
+
+ _
Public Sub New()
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
Me.IsSingleInstance = false
@@ -29,10 +29,10 @@ Namespace My
Me.SaveMySettingsOnExit = true
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
End Sub
-
- _
+
+ _
Protected Overrides Sub OnCreateMainForm()
- Me.MainForm = Global.GUI_EDMI.Form1
+ Me.MainForm = Global.GUI_EDMI.frmMain
End Sub
End Class
End Namespace
diff --git a/GUI_EDMI/My Project/Application.myapp b/GUI_EDMI/My Project/Application.myapp
index 1243847f..739ea6fe 100644
--- a/GUI_EDMI/My Project/Application.myapp
+++ b/GUI_EDMI/My Project/Application.myapp
@@ -1,11 +1,10 @@
true
- Form1
+ frmMain
false
0
true
0
- 0
true
-
+
\ No newline at end of file
diff --git a/GUI_EDMI/My Project/Resources.Designer.vb b/GUI_EDMI/My Project/Resources.Designer.vb
index 640fa7a1..7fc75ee3 100644
--- a/GUI_EDMI/My Project/Resources.Designer.vb
+++ b/GUI_EDMI/My Project/Resources.Designer.vb
@@ -1,40 +1,41 @@
'------------------------------------------------------------------------------
'
-' This code was generated by a tool.
-' Runtime Version:4.0.30319.42000
+' Dieser Code wurde von einem Tool generiert.
+' Laufzeitversion:4.0.30319.42000
'
-' Changes to this file may cause incorrect behavior and will be lost if
-' the code is regenerated.
+' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
+' der Code erneut generiert wird.
'
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
+Imports System
Namespace My.Resources
-
- '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.
+
+ 'Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
+ '-Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
+ 'Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
+ 'mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
'''
- ''' A strongly-typed resource class, for looking up localized strings, etc.
+ ''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
'''
- _
+ _
Friend Module Resources
-
+
Private resourceMan As Global.System.Resources.ResourceManager
-
+
Private resourceCulture As Global.System.Globalization.CultureInfo
-
+
'''
- ''' Returns the cached ResourceManager instance used by this class.
+ ''' Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
'''
- _
+ _
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
@@ -44,19 +45,49 @@ Namespace My.Resources
Return resourceMan
End Get
End Property
-
+
'''
- ''' Overrides the current thread's CurrentUICulture property for all
- ''' resource lookups using this strongly typed resource class.
+ ''' Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
+ ''' Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
'''
- _
+ _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
- Set(ByVal value As Global.System.Globalization.CultureInfo)
+ Set
resourceCulture = value
End Set
End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ '''
+ Friend ReadOnly Property email_go() As System.Drawing.Bitmap
+ Get
+ Dim obj As Object = ResourceManager.GetObject("email_go", resourceCulture)
+ Return CType(obj,System.Drawing.Bitmap)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ '''
+ Friend ReadOnly Property key_16xLG() As System.Drawing.Bitmap
+ Get
+ Dim obj As Object = ResourceManager.GetObject("key_16xLG", resourceCulture)
+ Return CType(obj,System.Drawing.Bitmap)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
+ '''
+ Friend ReadOnly Property save_16xMD() As System.Drawing.Bitmap
+ Get
+ Dim obj As Object = ResourceManager.GetObject("save_16xMD", resourceCulture)
+ Return CType(obj,System.Drawing.Bitmap)
+ End Get
+ End Property
End Module
End Namespace
diff --git a/GUI_EDMI/My Project/Resources.resx b/GUI_EDMI/My Project/Resources.resx
index af7dbebb..514eb216 100644
--- a/GUI_EDMI/My Project/Resources.resx
+++ b/GUI_EDMI/My Project/Resources.resx
@@ -46,7 +46,7 @@
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
- : System.Serialization.Formatters.Binary.BinaryFormatter
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
@@ -60,6 +60,7 @@
: and then encoded with base64 encoding.
-->
+
@@ -68,9 +69,10 @@
-
+
+
@@ -85,9 +87,10 @@
-
+
+
@@ -109,9 +112,19 @@
2.0
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ ..\Resources\key_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\save_16xMD.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\email_go.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
\ No newline at end of file
diff --git a/GUI_EDMI/My Project/Settings.Designer.vb b/GUI_EDMI/My Project/Settings.Designer.vb
index b772c8ab..17f2f48e 100644
--- a/GUI_EDMI/My Project/Settings.Designer.vb
+++ b/GUI_EDMI/My Project/Settings.Designer.vb
@@ -1,10 +1,10 @@
'------------------------------------------------------------------------------
'
-' This code was generated by a tool.
-' Runtime Version:4.0.30319.42000
+' Dieser Code wurde von einem Tool generiert.
+' Laufzeitversion:4.0.30319.42000
'
-' Changes to this file may cause incorrect behavior and will be lost if
-' the code is regenerated.
+' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
+' der Code erneut generiert wird.
'
'------------------------------------------------------------------------------
@@ -13,57 +13,105 @@ Option Explicit On
Namespace My
-
- _
+
+ _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
-
- Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
-
-#Region "My.Settings Auto-Save Functionality"
+
+ Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
+
+#Region "Automatische My.Settings-Speicherfunktion"
#If _MyType = "WindowsForms" Then
- Private Shared addedHandler As Boolean
+ Private Shared addedHandler As Boolean
- Private Shared addedHandlerLockObject As New Object
+ Private Shared addedHandlerLockObject As New Object
- _
- Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
- If My.Application.SaveMySettingsOnExit Then
- My.Settings.Save()
- End If
- End Sub
+ _
+ Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs)
+ If My.Application.SaveMySettingsOnExit Then
+ My.Settings.Save()
+ End If
+ End Sub
#End If
#End Region
-
+
Public Shared ReadOnly Property [Default]() As MySettings
Get
-
+
#If _MyType = "WindowsForms" Then
- If Not addedHandler Then
- SyncLock addedHandlerLockObject
- If Not addedHandler Then
- AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
- addedHandler = True
- End If
- End SyncLock
- End If
+ If Not addedHandler Then
+ SyncLock addedHandlerLockObject
+ If Not addedHandler Then
+ AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
+ addedHandler = True
+ End If
+ End SyncLock
+ End If
#End If
Return defaultInstance
End Get
End Property
+
+ _
+ Public ReadOnly Property FB_DATASOURCE() As String
+ Get
+ Return CType(Me("FB_DATASOURCE"),String)
+ End Get
+ End Property
+
+ _
+ Public ReadOnly Property FB_DATABASE() As String
+ Get
+ Return CType(Me("FB_DATABASE"),String)
+ End Get
+ End Property
+
+ _
+ Public ReadOnly Property FB_USER() As String
+ Get
+ Return CType(Me("FB_USER"),String)
+ End Get
+ End Property
+
+ _
+ Public ReadOnly Property FB_PW() As String
+ Get
+ Return CType(Me("FB_PW"),String)
+ End Get
+ End Property
+
+ _
+ Public Property EmailTestAdress() As String
+ Get
+ Return CType(Me("EmailTestAdress"),String)
+ End Get
+ Set
+ Me("EmailTestAdress") = value
+ End Set
+ End Property
End Class
End Namespace
Namespace My
-
- _
+
+ _
Friend Module MySettingsProperty
-
- _
+
+ _
Friend ReadOnly Property Settings() As Global.GUI_EDMI.My.MySettings
Get
Return Global.GUI_EDMI.My.MySettings.Default
diff --git a/GUI_EDMI/My Project/Settings.settings b/GUI_EDMI/My Project/Settings.settings
index 85b890b3..6707f7a0 100644
--- a/GUI_EDMI/My Project/Settings.settings
+++ b/GUI_EDMI/My Project/Settings.settings
@@ -1,7 +1,21 @@
-
-
-
-
-
-
+
+
+
+
+ 172.24.12.41
+
+
+ 172.24.12.41:E:\DB\Firebird\Databases\EDMI_TEMPLATE\EDMI_MASTER.FDB
+
+
+ sysdba
+
+
+ dd
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GUI_EDMI/My Project/licenses.licx b/GUI_EDMI/My Project/licenses.licx
index d87e83cf..a00d7f76 100644
--- a/GUI_EDMI/My Project/licenses.licx
+++ b/GUI_EDMI/My Project/licenses.licx
@@ -1 +1,2 @@
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v18.1, Version=18.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v18.1, Version=18.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/GUI_EDMI/MyDataset.Designer.vb b/GUI_EDMI/MyDataset.Designer.vb
new file mode 100644
index 00000000..b8c554d0
--- /dev/null
+++ b/GUI_EDMI/MyDataset.Designer.vb
@@ -0,0 +1,242 @@
+'------------------------------------------------------------------------------
+'
+' Dieser Code wurde von einem Tool generiert.
+' Laufzeitversion:4.0.30319.42000
+'
+' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
+' der Code erneut generiert wird.
+'
+'------------------------------------------------------------------------------
+
+Option Strict Off
+Option Explicit On
+
+
+
+'''
+'''Represents a strongly typed in-memory cache of data.
+'''
+ _
+Partial Public Class MyDataset
+ Inherits Global.System.Data.DataSet
+
+ Private _schemaSerializationMode As Global.System.Data.SchemaSerializationMode = Global.System.Data.SchemaSerializationMode.IncludeSchema
+
+ _
+ Public Sub New()
+ MyBase.New
+ Me.BeginInit
+ Me.InitClass
+ Dim schemaChangedHandler As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged
+ AddHandler MyBase.Tables.CollectionChanged, schemaChangedHandler
+ AddHandler MyBase.Relations.CollectionChanged, schemaChangedHandler
+ Me.EndInit
+ End Sub
+
+ _
+ Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext)
+ MyBase.New(info, context, false)
+ If (Me.IsBinarySerialized(info, context) = true) Then
+ Me.InitVars(false)
+ Dim schemaChangedHandler1 As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged
+ AddHandler Me.Tables.CollectionChanged, schemaChangedHandler1
+ AddHandler Me.Relations.CollectionChanged, schemaChangedHandler1
+ Return
+ End If
+ Dim strSchema As String = CType(info.GetValue("XmlSchema", GetType(String)),String)
+ If (Me.DetermineSchemaSerializationMode(info, context) = Global.System.Data.SchemaSerializationMode.IncludeSchema) Then
+ Dim ds As Global.System.Data.DataSet = New Global.System.Data.DataSet()
+ ds.ReadXmlSchema(New Global.System.Xml.XmlTextReader(New Global.System.IO.StringReader(strSchema)))
+ Me.DataSetName = ds.DataSetName
+ Me.Prefix = ds.Prefix
+ Me.Namespace = ds.Namespace
+ Me.Locale = ds.Locale
+ Me.CaseSensitive = ds.CaseSensitive
+ Me.EnforceConstraints = ds.EnforceConstraints
+ Me.Merge(ds, false, Global.System.Data.MissingSchemaAction.Add)
+ Me.InitVars
+ Else
+ Me.ReadXmlSchema(New Global.System.Xml.XmlTextReader(New Global.System.IO.StringReader(strSchema)))
+ End If
+ Me.GetSerializationData(info, context)
+ Dim schemaChangedHandler As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged
+ AddHandler MyBase.Tables.CollectionChanged, schemaChangedHandler
+ AddHandler Me.Relations.CollectionChanged, schemaChangedHandler
+ End Sub
+
+ _
+ Public Overrides Property SchemaSerializationMode() As Global.System.Data.SchemaSerializationMode
+ Get
+ Return Me._schemaSerializationMode
+ End Get
+ Set
+ Me._schemaSerializationMode = value
+ End Set
+ End Property
+
+ _
+ Public Shadows ReadOnly Property Tables() As Global.System.Data.DataTableCollection
+ Get
+ Return MyBase.Tables
+ End Get
+ End Property
+
+ _
+ Public Shadows ReadOnly Property Relations() As Global.System.Data.DataRelationCollection
+ Get
+ Return MyBase.Relations
+ End Get
+ End Property
+
+ _
+ Protected Overrides Sub InitializeDerivedDataSet()
+ Me.BeginInit
+ Me.InitClass
+ Me.EndInit
+ End Sub
+
+ _
+ Public Overrides Function Clone() As Global.System.Data.DataSet
+ Dim cln As MyDataset = CType(MyBase.Clone,MyDataset)
+ cln.InitVars
+ cln.SchemaSerializationMode = Me.SchemaSerializationMode
+ Return cln
+ End Function
+
+ _
+ Protected Overrides Function ShouldSerializeTables() As Boolean
+ Return false
+ End Function
+
+ _
+ Protected Overrides Function ShouldSerializeRelations() As Boolean
+ Return false
+ End Function
+
+ _
+ Protected Overrides Sub ReadXmlSerializable(ByVal reader As Global.System.Xml.XmlReader)
+ If (Me.DetermineSchemaSerializationMode(reader) = Global.System.Data.SchemaSerializationMode.IncludeSchema) Then
+ Me.Reset
+ Dim ds As Global.System.Data.DataSet = New Global.System.Data.DataSet()
+ ds.ReadXml(reader)
+ Me.DataSetName = ds.DataSetName
+ Me.Prefix = ds.Prefix
+ Me.Namespace = ds.Namespace
+ Me.Locale = ds.Locale
+ Me.CaseSensitive = ds.CaseSensitive
+ Me.EnforceConstraints = ds.EnforceConstraints
+ Me.Merge(ds, false, Global.System.Data.MissingSchemaAction.Add)
+ Me.InitVars
+ Else
+ Me.ReadXml(reader)
+ Me.InitVars
+ End If
+ End Sub
+
+ _
+ Protected Overrides Function GetSchemaSerializable() As Global.System.Xml.Schema.XmlSchema
+ Dim stream As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream()
+ Me.WriteXmlSchema(New Global.System.Xml.XmlTextWriter(stream, Nothing))
+ stream.Position = 0
+ Return Global.System.Xml.Schema.XmlSchema.Read(New Global.System.Xml.XmlTextReader(stream), Nothing)
+ End Function
+
+ _
+ Friend Overloads Sub InitVars()
+ Me.InitVars(true)
+ End Sub
+
+ _
+ Friend Overloads Sub InitVars(ByVal initTable As Boolean)
+ End Sub
+
+ _
+ Private Sub InitClass()
+ Me.DataSetName = "MyDataset"
+ Me.Prefix = ""
+ Me.Namespace = "http://tempuri.org/MyDataset.xsd"
+ Me.EnforceConstraints = true
+ Me.SchemaSerializationMode = Global.System.Data.SchemaSerializationMode.IncludeSchema
+ End Sub
+
+ _
+ Private Sub SchemaChanged(ByVal sender As Object, ByVal e As Global.System.ComponentModel.CollectionChangeEventArgs)
+ If (e.Action = Global.System.ComponentModel.CollectionChangeAction.Remove) Then
+ Me.InitVars
+ End If
+ End Sub
+
+ _
+ Public Shared Function GetTypedDataSetSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType
+ Dim ds As MyDataset = New MyDataset()
+ Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType()
+ Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence()
+ Dim any As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny()
+ any.Namespace = ds.Namespace
+ sequence.Items.Add(any)
+ type.Particle = sequence
+ Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable
+ If xs.Contains(dsSchema.TargetNamespace) Then
+ Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream()
+ Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream()
+ Try
+ Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing
+ dsSchema.Write(s1)
+ Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator
+ Do While schemas.MoveNext
+ schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema)
+ s2.SetLength(0)
+ schema.Write(s2)
+ If (s1.Length = s2.Length) Then
+ s1.Position = 0
+ s2.Position = 0
+
+ Do While ((s1.Position <> s1.Length) _
+ AndAlso (s1.ReadByte = s2.ReadByte))
+
+
+ Loop
+ If (s1.Position = s1.Length) Then
+ Return type
+ End If
+ End If
+
+ Loop
+ Finally
+ If (Not (s1) Is Nothing) Then
+ s1.Close
+ End If
+ If (Not (s2) Is Nothing) Then
+ s2.Close
+ End If
+ End Try
+ End If
+ xs.Add(dsSchema)
+ Return type
+ End Function
+End Class
diff --git a/GUI_EDMI/MyDataset.xsc b/GUI_EDMI/MyDataset.xsc
new file mode 100644
index 00000000..05b01991
--- /dev/null
+++ b/GUI_EDMI/MyDataset.xsc
@@ -0,0 +1,9 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/GUI_EDMI/MyDataset.xsd b/GUI_EDMI/MyDataset.xsd
new file mode 100644
index 00000000..a27cf704
--- /dev/null
+++ b/GUI_EDMI/MyDataset.xsd
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GUI_EDMI/MyDataset.xss b/GUI_EDMI/MyDataset.xss
new file mode 100644
index 00000000..8ed002c5
--- /dev/null
+++ b/GUI_EDMI/MyDataset.xss
@@ -0,0 +1,10 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GUI_EDMI/Resources/email_go.png b/GUI_EDMI/Resources/email_go.png
new file mode 100644
index 00000000..4a6c5d39
Binary files /dev/null and b/GUI_EDMI/Resources/email_go.png differ
diff --git a/GUI_EDMI/Resources/key_16xLG.png b/GUI_EDMI/Resources/key_16xLG.png
new file mode 100644
index 00000000..03dd1a00
Binary files /dev/null and b/GUI_EDMI/Resources/key_16xLG.png differ
diff --git a/GUI_EDMI/Resources/save_16xMD.png b/GUI_EDMI/Resources/save_16xMD.png
new file mode 100644
index 00000000..c9ceec3b
Binary files /dev/null and b/GUI_EDMI/Resources/save_16xMD.png differ
diff --git a/GUI_EDMI/TOOL_ohne_slogan.ico b/GUI_EDMI/TOOL_ohne_slogan.ico
new file mode 100644
index 00000000..a48812dd
Binary files /dev/null and b/GUI_EDMI/TOOL_ohne_slogan.ico differ
diff --git a/GUI_EDMI/clsEncryption.vb b/GUI_EDMI/clsEncryption.vb
new file mode 100644
index 00000000..d6adca68
--- /dev/null
+++ b/GUI_EDMI/clsEncryption.vb
@@ -0,0 +1,72 @@
+Imports System.Security.Cryptography
+Public Class clsEncryption
+ Private TripleDes As New TripleDESCryptoServiceProvider
+ Sub New(ByVal key As String)
+ ' Initialize the crypto provider.
+ TripleDes.Key = TruncateHash(key, TripleDes.KeySize \ 8)
+ TripleDes.IV = TruncateHash("", TripleDes.BlockSize \ 8)
+ End Sub
+
+ Private Function TruncateHash(
+ ByVal key As String,
+ ByVal length As Integer) As Byte()
+
+ Dim sha1 As New SHA1CryptoServiceProvider
+
+ ' Hash the key.
+ Dim keyBytes() As Byte =
+ System.Text.Encoding.Unicode.GetBytes(key)
+ Dim hash() As Byte = sha1.ComputeHash(keyBytes)
+
+ ' Truncate or pad the hash.
+ ReDim Preserve hash(length - 1)
+ Return hash
+ End Function
+ Public Function EncryptData(
+ ByVal plaintext As String) As String
+
+ ' Convert the plaintext string to a byte array.
+ Dim plaintextBytes() As Byte =
+ System.Text.Encoding.Unicode.GetBytes("!Didalog35452Heuchelheim=" & plaintext)
+
+ ' Create the stream.
+ Dim ms As New System.IO.MemoryStream
+ ' Create the encoder to write to the stream.
+ Dim encStream As New CryptoStream(ms,
+ TripleDes.CreateEncryptor(),
+ System.Security.Cryptography.CryptoStreamMode.Write)
+
+ ' Use the crypto stream to write the byte array to the stream.
+ encStream.Write(plaintextBytes, 0, plaintextBytes.Length)
+ encStream.FlushFinalBlock()
+
+ ' Convert the encrypted stream to a printable string.
+ Return Convert.ToBase64String(ms.ToArray)
+ End Function
+ 'Entschlüsselt die Zeichenfolge
+ Public Function DecryptData(
+ ByVal encryptedtext As String) As String
+ Try
+ ' Convert the encrypted text string to a byte array.
+ Dim encryptedBytes() As Byte = Convert.FromBase64String(encryptedtext)
+
+ ' Create the stream.
+ Dim ms As New System.IO.MemoryStream
+ ' Create the decoder to write to the stream.
+ Dim decStream As New CryptoStream(ms,
+ TripleDes.CreateDecryptor(),
+ System.Security.Cryptography.CryptoStreamMode.Write)
+
+ ' Use the crypto stream to write the byte array to the stream.
+ decStream.Write(encryptedBytes, 0, encryptedBytes.Length)
+ decStream.FlushFinalBlock()
+ Dim result = System.Text.Encoding.Unicode.GetString(ms.ToArray)
+ result = result.Replace("!Didalog35452Heuchelheim=", "")
+ ' Convert the plaintext stream to a string.
+ Return result
+ Catch ex As Exception
+ Return Nothing
+ End Try
+
+ End Function
+End Class
diff --git a/GUI_EDMI/frmEmailAccount.Designer.vb b/GUI_EDMI/frmEmailAccount.Designer.vb
new file mode 100644
index 00000000..55cbf7d3
--- /dev/null
+++ b/GUI_EDMI/frmEmailAccount.Designer.vb
@@ -0,0 +1,712 @@
+ _
+Partial Class frmEmailAccount
+ Inherits System.Windows.Forms.Form
+
+ 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
+ _
+ Protected Overrides Sub Dispose(ByVal disposing As Boolean)
+ Try
+ If disposing AndAlso components IsNot Nothing Then
+ components.Dispose()
+ End If
+ Finally
+ MyBase.Dispose(disposing)
+ End Try
+ End Sub
+
+ 'Wird vom Windows Form-Designer benötigt.
+ Private components As System.ComponentModel.IContainer
+
+ 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich.
+ 'Das Bearbeiten ist mit dem Windows Form-Designer möglich.
+ 'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
+ _
+ Private Sub InitializeComponent()
+ Me.components = New System.ComponentModel.Container()
+ Dim GUIDLabel3 As System.Windows.Forms.Label
+ Dim AUTH_TYPELabel As System.Windows.Forms.Label
+ Dim Label5 As System.Windows.Forms.Label
+ Dim NAMELabel As System.Windows.Forms.Label
+ Dim EMAIL_FROMLabel As System.Windows.Forms.Label
+ Dim EMAIL_SMTPLabel As System.Windows.Forms.Label
+ Dim EMAIL_USERLabel As System.Windows.Forms.Label
+ Dim EMAIL_PWLabel As System.Windows.Forms.Label
+ Dim PORTLabel As System.Windows.Forms.Label
+ Dim ADDED_WHOLabel As System.Windows.Forms.Label
+ Dim ADDED_WHENLabel As System.Windows.Forms.Label
+ Dim CHANGED_WHOLabel As System.Windows.Forms.Label
+ Dim CHANGED_WHENLabel As System.Windows.Forms.Label
+ Dim Label2 As System.Windows.Forms.Label
+ Dim Label3 As System.Windows.Forms.Label
+ Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmEmailAccount))
+ Dim Label4 As System.Windows.Forms.Label
+ Me.StatusStrip1 = New System.Windows.Forms.StatusStrip()
+ Me.TabControl1 = New System.Windows.Forms.TabControl()
+ Me.TabPage1 = New System.Windows.Forms.TabPage()
+ Me.cmbPOP_IMAP = New System.Windows.Forms.ComboBox()
+ Me.txtSERVER_OUT = New System.Windows.Forms.TextBox()
+ Me.txtTestmail = New System.Windows.Forms.TextBox()
+ Me.Label1 = New System.Windows.Forms.Label()
+ Me.btnsendtestmail = New System.Windows.Forms.Button()
+ Me.txtPORT_IN = New System.Windows.Forms.TextBox()
+ Me.ACTIVECheckBox = New System.Windows.Forms.CheckBox()
+ Me.ADDED_WHOTextBox = New System.Windows.Forms.TextBox()
+ Me.ADDED_WHENTextBox = New System.Windows.Forms.TextBox()
+ Me.CHANGED_WHOTextBox = New System.Windows.Forms.TextBox()
+ Me.CHANGED_WHENTextBox = New System.Windows.Forms.TextBox()
+ Me.cmbAUTH_TYPE = New System.Windows.Forms.ComboBox()
+ Me.txtnewpasswort = New System.Windows.Forms.TextBox()
+ Me.Button4 = New System.Windows.Forms.Button()
+ Me.txtPROFILE_NAME = New System.Windows.Forms.TextBox()
+ Me.txtEMAIL_FROM = New System.Windows.Forms.TextBox()
+ Me.txtSERVER_IN = New System.Windows.Forms.TextBox()
+ Me.txtEMAIL_USER = New System.Windows.Forms.TextBox()
+ Me.txtEMAIL_PW = New System.Windows.Forms.TextBox()
+ Me.txtGUID = New System.Windows.Forms.TextBox()
+ Me.GridControl1 = New DevExpress.XtraGrid.GridControl()
+ Me.GridView1 = New DevExpress.XtraGrid.Views.Grid.GridView()
+ Me.BindingNavigator1 = New System.Windows.Forms.BindingNavigator(Me.components)
+ Me.BindingNavigatorAddNewItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorCountItem = New System.Windows.Forms.ToolStripLabel()
+ Me.BindingNavigatorDeleteItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorMoveFirstItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorMovePreviousItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorSeparator = New System.Windows.Forms.ToolStripSeparator()
+ Me.BindingNavigatorPositionItem = New System.Windows.Forms.ToolStripTextBox()
+ Me.BindingNavigatorSeparator1 = New System.Windows.Forms.ToolStripSeparator()
+ Me.BindingNavigatorMoveNextItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorMoveLastItem = New System.Windows.Forms.ToolStripButton()
+ Me.BindingNavigatorSeparator2 = New System.Windows.Forms.ToolStripSeparator()
+ Me.tsbtnSaveEmailAccount = New System.Windows.Forms.ToolStripButton()
+ Me.TabPage2 = New System.Windows.Forms.TabPage()
+ Me.BindingSourceForm = New System.Windows.Forms.BindingSource(Me.components)
+ Me.BindingSourceGrid = New System.Windows.Forms.BindingSource(Me.components)
+ Me.txtPORT_OUT = New System.Windows.Forms.TextBox()
+ GUIDLabel3 = New System.Windows.Forms.Label()
+ AUTH_TYPELabel = New System.Windows.Forms.Label()
+ Label5 = New System.Windows.Forms.Label()
+ NAMELabel = New System.Windows.Forms.Label()
+ EMAIL_FROMLabel = New System.Windows.Forms.Label()
+ EMAIL_SMTPLabel = New System.Windows.Forms.Label()
+ EMAIL_USERLabel = New System.Windows.Forms.Label()
+ EMAIL_PWLabel = New System.Windows.Forms.Label()
+ PORTLabel = New System.Windows.Forms.Label()
+ ADDED_WHOLabel = New System.Windows.Forms.Label()
+ ADDED_WHENLabel = New System.Windows.Forms.Label()
+ CHANGED_WHOLabel = New System.Windows.Forms.Label()
+ CHANGED_WHENLabel = New System.Windows.Forms.Label()
+ Label2 = New System.Windows.Forms.Label()
+ Label3 = New System.Windows.Forms.Label()
+ Label4 = New System.Windows.Forms.Label()
+ Me.TabControl1.SuspendLayout()
+ Me.TabPage1.SuspendLayout()
+ CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.BindingNavigator1, System.ComponentModel.ISupportInitialize).BeginInit()
+ Me.BindingNavigator1.SuspendLayout()
+ CType(Me.BindingSourceForm, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.BindingSourceGrid, System.ComponentModel.ISupportInitialize).BeginInit()
+ Me.SuspendLayout()
+ '
+ 'GUIDLabel3
+ '
+ GUIDLabel3.AutoSize = True
+ GUIDLabel3.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ GUIDLabel3.Location = New System.Drawing.Point(228, 38)
+ GUIDLabel3.Name = "GUIDLabel3"
+ GUIDLabel3.Size = New System.Drawing.Size(20, 13)
+ GUIDLabel3.TabIndex = 5
+ GUIDLabel3.Text = "ID:"
+ '
+ 'AUTH_TYPELabel
+ '
+ AUTH_TYPELabel.AutoSize = True
+ AUTH_TYPELabel.Location = New System.Drawing.Point(288, 124)
+ AUTH_TYPELabel.Name = "AUTH_TYPELabel"
+ AUTH_TYPELabel.Size = New System.Drawing.Size(112, 13)
+ AUTH_TYPELabel.TabIndex = 48
+ AUTH_TYPELabel.Text = "Authentification type:"
+ '
+ 'Label5
+ '
+ Label5.AutoSize = True
+ Label5.Location = New System.Drawing.Point(879, 168)
+ Label5.Name = "Label5"
+ Label5.Size = New System.Drawing.Size(88, 13)
+ Label5.TabIndex = 47
+ Label5.Text = "Neues Passwort:"
+ '
+ 'NAMELabel
+ '
+ NAMELabel.AutoSize = True
+ NAMELabel.Location = New System.Drawing.Point(288, 38)
+ NAMELabel.Name = "NAMELabel"
+ NAMELabel.Size = New System.Drawing.Size(100, 13)
+ NAMELabel.TabIndex = 35
+ NAMELabel.Text = "Profilname (intern):"
+ '
+ 'EMAIL_FROMLabel
+ '
+ EMAIL_FROMLabel.AutoSize = True
+ EMAIL_FROMLabel.Location = New System.Drawing.Point(288, 79)
+ EMAIL_FROMLabel.Name = "EMAIL_FROMLabel"
+ EMAIL_FROMLabel.Size = New System.Drawing.Size(60, 13)
+ EMAIL_FROMLabel.TabIndex = 37
+ EMAIL_FROMLabel.Text = "Email from:"
+ '
+ 'EMAIL_SMTPLabel
+ '
+ EMAIL_SMTPLabel.AutoSize = True
+ EMAIL_SMTPLabel.Location = New System.Drawing.Point(573, 79)
+ EMAIL_SMTPLabel.Name = "EMAIL_SMTPLabel"
+ EMAIL_SMTPLabel.Size = New System.Drawing.Size(90, 13)
+ EMAIL_SMTPLabel.TabIndex = 39
+ EMAIL_SMTPLabel.Text = "Eingangs-Server:"
+ '
+ 'EMAIL_USERLabel
+ '
+ EMAIL_USERLabel.AutoSize = True
+ EMAIL_USERLabel.Location = New System.Drawing.Point(288, 168)
+ EMAIL_USERLabel.Name = "EMAIL_USERLabel"
+ EMAIL_USERLabel.Size = New System.Drawing.Size(61, 13)
+ EMAIL_USERLabel.TabIndex = 41
+ EMAIL_USERLabel.Text = "Email-User:"
+ '
+ 'EMAIL_PWLabel
+ '
+ EMAIL_PWLabel.AutoSize = True
+ EMAIL_PWLabel.Location = New System.Drawing.Point(573, 168)
+ EMAIL_PWLabel.Name = "EMAIL_PWLabel"
+ EMAIL_PWLabel.Size = New System.Drawing.Size(82, 13)
+ EMAIL_PWLabel.TabIndex = 43
+ EMAIL_PWLabel.Text = "Email Passwort:"
+ '
+ 'PORTLabel
+ '
+ PORTLabel.AutoSize = True
+ PORTLabel.Location = New System.Drawing.Point(879, 79)
+ PORTLabel.Name = "PORTLabel"
+ PORTLabel.Size = New System.Drawing.Size(31, 13)
+ PORTLabel.TabIndex = 50
+ PORTLabel.Text = "Port:"
+ '
+ 'ADDED_WHOLabel
+ '
+ ADDED_WHOLabel.AutoSize = True
+ ADDED_WHOLabel.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ ADDED_WHOLabel.Location = New System.Drawing.Point(288, 225)
+ ADDED_WHOLabel.Name = "ADDED_WHOLabel"
+ ADDED_WHOLabel.Size = New System.Drawing.Size(62, 13)
+ ADDED_WHOLabel.TabIndex = 53
+ ADDED_WHOLabel.Text = "Added who:"
+ '
+ 'ADDED_WHENLabel
+ '
+ ADDED_WHENLabel.AutoSize = True
+ ADDED_WHENLabel.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ ADDED_WHENLabel.Location = New System.Drawing.Point(447, 225)
+ ADDED_WHENLabel.Name = "ADDED_WHENLabel"
+ ADDED_WHENLabel.Size = New System.Drawing.Size(67, 13)
+ ADDED_WHENLabel.TabIndex = 55
+ ADDED_WHENLabel.Text = "Added when:"
+ '
+ 'CHANGED_WHOLabel
+ '
+ CHANGED_WHOLabel.AutoSize = True
+ CHANGED_WHOLabel.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ CHANGED_WHOLabel.Location = New System.Drawing.Point(288, 266)
+ CHANGED_WHOLabel.Name = "CHANGED_WHOLabel"
+ CHANGED_WHOLabel.Size = New System.Drawing.Size(74, 13)
+ CHANGED_WHOLabel.TabIndex = 57
+ CHANGED_WHOLabel.Text = "Changed who:"
+ '
+ 'CHANGED_WHENLabel
+ '
+ CHANGED_WHENLabel.AutoSize = True
+ CHANGED_WHENLabel.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ CHANGED_WHENLabel.Location = New System.Drawing.Point(447, 266)
+ CHANGED_WHENLabel.Name = "CHANGED_WHENLabel"
+ CHANGED_WHENLabel.Size = New System.Drawing.Size(79, 13)
+ CHANGED_WHENLabel.TabIndex = 59
+ CHANGED_WHENLabel.Text = "Changed when:"
+ '
+ 'Label2
+ '
+ Label2.AutoSize = True
+ Label2.Location = New System.Drawing.Point(573, 124)
+ Label2.Name = "Label2"
+ Label2.Size = New System.Drawing.Size(73, 13)
+ Label2.TabIndex = 64
+ Label2.Text = "SMTP-Server:"
+ '
+ 'Label3
+ '
+ Label3.AutoSize = True
+ Label3.Location = New System.Drawing.Point(443, 124)
+ Label3.Name = "Label3"
+ Label3.Size = New System.Drawing.Size(77, 13)
+ Label3.TabIndex = 66
+ Label3.Text = "IMAP or POP?:"
+ '
+ 'StatusStrip1
+ '
+ Me.StatusStrip1.Location = New System.Drawing.Point(0, 595)
+ Me.StatusStrip1.Name = "StatusStrip1"
+ Me.StatusStrip1.Size = New System.Drawing.Size(1260, 22)
+ Me.StatusStrip1.TabIndex = 0
+ Me.StatusStrip1.Text = "StatusStrip1"
+ '
+ 'TabControl1
+ '
+ Me.TabControl1.Controls.Add(Me.TabPage1)
+ Me.TabControl1.Controls.Add(Me.TabPage2)
+ Me.TabControl1.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.TabControl1.Location = New System.Drawing.Point(0, 0)
+ Me.TabControl1.Name = "TabControl1"
+ Me.TabControl1.SelectedIndex = 0
+ Me.TabControl1.Size = New System.Drawing.Size(1260, 595)
+ Me.TabControl1.TabIndex = 1
+ '
+ 'TabPage1
+ '
+ Me.TabPage1.Controls.Add(Label4)
+ Me.TabPage1.Controls.Add(Me.txtPORT_OUT)
+ Me.TabPage1.Controls.Add(Label3)
+ Me.TabPage1.Controls.Add(Me.cmbPOP_IMAP)
+ Me.TabPage1.Controls.Add(Label2)
+ Me.TabPage1.Controls.Add(Me.txtSERVER_OUT)
+ Me.TabPage1.Controls.Add(Me.txtTestmail)
+ Me.TabPage1.Controls.Add(Me.Label1)
+ Me.TabPage1.Controls.Add(Me.btnsendtestmail)
+ Me.TabPage1.Controls.Add(PORTLabel)
+ Me.TabPage1.Controls.Add(Me.txtPORT_IN)
+ Me.TabPage1.Controls.Add(Me.ACTIVECheckBox)
+ Me.TabPage1.Controls.Add(ADDED_WHOLabel)
+ Me.TabPage1.Controls.Add(Me.ADDED_WHOTextBox)
+ Me.TabPage1.Controls.Add(ADDED_WHENLabel)
+ Me.TabPage1.Controls.Add(Me.ADDED_WHENTextBox)
+ Me.TabPage1.Controls.Add(CHANGED_WHOLabel)
+ Me.TabPage1.Controls.Add(Me.CHANGED_WHOTextBox)
+ Me.TabPage1.Controls.Add(CHANGED_WHENLabel)
+ Me.TabPage1.Controls.Add(Me.CHANGED_WHENTextBox)
+ Me.TabPage1.Controls.Add(AUTH_TYPELabel)
+ Me.TabPage1.Controls.Add(Me.cmbAUTH_TYPE)
+ Me.TabPage1.Controls.Add(Label5)
+ Me.TabPage1.Controls.Add(Me.txtnewpasswort)
+ Me.TabPage1.Controls.Add(Me.Button4)
+ Me.TabPage1.Controls.Add(NAMELabel)
+ Me.TabPage1.Controls.Add(Me.txtPROFILE_NAME)
+ Me.TabPage1.Controls.Add(EMAIL_FROMLabel)
+ Me.TabPage1.Controls.Add(Me.txtEMAIL_FROM)
+ Me.TabPage1.Controls.Add(EMAIL_SMTPLabel)
+ Me.TabPage1.Controls.Add(Me.txtSERVER_IN)
+ Me.TabPage1.Controls.Add(EMAIL_USERLabel)
+ Me.TabPage1.Controls.Add(Me.txtEMAIL_USER)
+ Me.TabPage1.Controls.Add(EMAIL_PWLabel)
+ Me.TabPage1.Controls.Add(Me.txtEMAIL_PW)
+ Me.TabPage1.Controls.Add(GUIDLabel3)
+ Me.TabPage1.Controls.Add(Me.txtGUID)
+ Me.TabPage1.Controls.Add(Me.GridControl1)
+ Me.TabPage1.Controls.Add(Me.BindingNavigator1)
+ Me.TabPage1.Location = New System.Drawing.Point(4, 22)
+ Me.TabPage1.Name = "TabPage1"
+ Me.TabPage1.Padding = New System.Windows.Forms.Padding(3)
+ Me.TabPage1.Size = New System.Drawing.Size(1252, 569)
+ Me.TabPage1.TabIndex = 0
+ Me.TabPage1.Text = "Email-Accounts"
+ Me.TabPage1.UseVisualStyleBackColor = True
+ '
+ 'cmbPOP_IMAP
+ '
+ Me.cmbPOP_IMAP.FormattingEnabled = True
+ Me.cmbPOP_IMAP.Items.AddRange(New Object() {"SSL", "TLS", "None"})
+ Me.cmbPOP_IMAP.Location = New System.Drawing.Point(446, 140)
+ Me.cmbPOP_IMAP.Name = "cmbPOP_IMAP"
+ Me.cmbPOP_IMAP.Size = New System.Drawing.Size(121, 21)
+ Me.cmbPOP_IMAP.TabIndex = 67
+ '
+ 'txtSERVER_OUT
+ '
+ Me.txtSERVER_OUT.Location = New System.Drawing.Point(576, 140)
+ Me.txtSERVER_OUT.Name = "txtSERVER_OUT"
+ Me.txtSERVER_OUT.Size = New System.Drawing.Size(303, 21)
+ Me.txtSERVER_OUT.TabIndex = 65
+ '
+ 'txtTestmail
+ '
+ Me.txtTestmail.DataBindings.Add(New System.Windows.Forms.Binding("Text", Global.GUI_EDMI.My.MySettings.Default, "EmailTestAdress", True, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged))
+ Me.txtTestmail.Location = New System.Drawing.Point(291, 323)
+ Me.txtTestmail.Name = "txtTestmail"
+ Me.txtTestmail.Size = New System.Drawing.Size(312, 21)
+ Me.txtTestmail.TabIndex = 63
+ Me.txtTestmail.Text = Global.GUI_EDMI.My.MySettings.Default.EmailTestAdress
+ '
+ 'Label1
+ '
+ Me.Label1.AutoSize = True
+ Me.Label1.Location = New System.Drawing.Point(288, 307)
+ Me.Label1.Name = "Label1"
+ Me.Label1.Size = New System.Drawing.Size(84, 13)
+ Me.Label1.TabIndex = 62
+ Me.Label1.Text = "Testempfänger:"
+ '
+ 'btnsendtestmail
+ '
+ Me.btnsendtestmail.Image = Global.GUI_EDMI.My.Resources.Resources.email_go
+ Me.btnsendtestmail.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft
+ Me.btnsendtestmail.Location = New System.Drawing.Point(291, 350)
+ Me.btnsendtestmail.Name = "btnsendtestmail"
+ Me.btnsendtestmail.Size = New System.Drawing.Size(311, 24)
+ Me.btnsendtestmail.TabIndex = 61
+ Me.btnsendtestmail.Text = "Send testmail"
+ Me.btnsendtestmail.TextAlign = System.Drawing.ContentAlignment.MiddleRight
+ Me.btnsendtestmail.UseVisualStyleBackColor = True
+ '
+ 'txtPORT_IN
+ '
+ Me.txtPORT_IN.Location = New System.Drawing.Point(882, 95)
+ Me.txtPORT_IN.Name = "txtPORT_IN"
+ Me.txtPORT_IN.Size = New System.Drawing.Size(104, 21)
+ Me.txtPORT_IN.TabIndex = 51
+ '
+ 'ACTIVECheckBox
+ '
+ Me.ACTIVECheckBox.Location = New System.Drawing.Point(576, 51)
+ Me.ACTIVECheckBox.Name = "ACTIVECheckBox"
+ Me.ACTIVECheckBox.Size = New System.Drawing.Size(64, 24)
+ Me.ACTIVECheckBox.TabIndex = 52
+ Me.ACTIVECheckBox.Text = "active"
+ Me.ACTIVECheckBox.UseVisualStyleBackColor = True
+ '
+ 'ADDED_WHOTextBox
+ '
+ Me.ADDED_WHOTextBox.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.ADDED_WHOTextBox.Location = New System.Drawing.Point(291, 241)
+ Me.ADDED_WHOTextBox.Name = "ADDED_WHOTextBox"
+ Me.ADDED_WHOTextBox.ReadOnly = True
+ Me.ADDED_WHOTextBox.Size = New System.Drawing.Size(153, 22)
+ Me.ADDED_WHOTextBox.TabIndex = 54
+ '
+ 'ADDED_WHENTextBox
+ '
+ Me.ADDED_WHENTextBox.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.ADDED_WHENTextBox.Location = New System.Drawing.Point(450, 241)
+ Me.ADDED_WHENTextBox.Name = "ADDED_WHENTextBox"
+ Me.ADDED_WHENTextBox.ReadOnly = True
+ Me.ADDED_WHENTextBox.Size = New System.Drawing.Size(153, 22)
+ Me.ADDED_WHENTextBox.TabIndex = 56
+ '
+ 'CHANGED_WHOTextBox
+ '
+ Me.CHANGED_WHOTextBox.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.CHANGED_WHOTextBox.Location = New System.Drawing.Point(291, 282)
+ Me.CHANGED_WHOTextBox.Name = "CHANGED_WHOTextBox"
+ Me.CHANGED_WHOTextBox.ReadOnly = True
+ Me.CHANGED_WHOTextBox.Size = New System.Drawing.Size(153, 22)
+ Me.CHANGED_WHOTextBox.TabIndex = 58
+ '
+ 'CHANGED_WHENTextBox
+ '
+ Me.CHANGED_WHENTextBox.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.CHANGED_WHENTextBox.Location = New System.Drawing.Point(450, 282)
+ Me.CHANGED_WHENTextBox.Name = "CHANGED_WHENTextBox"
+ Me.CHANGED_WHENTextBox.ReadOnly = True
+ Me.CHANGED_WHENTextBox.Size = New System.Drawing.Size(153, 22)
+ Me.CHANGED_WHENTextBox.TabIndex = 60
+ '
+ 'cmbAUTH_TYPE
+ '
+ Me.cmbAUTH_TYPE.FormattingEnabled = True
+ Me.cmbAUTH_TYPE.Items.AddRange(New Object() {"SSL", "TLS", "None"})
+ Me.cmbAUTH_TYPE.Location = New System.Drawing.Point(291, 140)
+ Me.cmbAUTH_TYPE.Name = "cmbAUTH_TYPE"
+ Me.cmbAUTH_TYPE.Size = New System.Drawing.Size(121, 21)
+ Me.cmbAUTH_TYPE.TabIndex = 49
+ '
+ 'txtnewpasswort
+ '
+ Me.txtnewpasswort.Location = New System.Drawing.Point(882, 184)
+ Me.txtnewpasswort.Name = "txtnewpasswort"
+ Me.txtnewpasswort.Size = New System.Drawing.Size(178, 21)
+ Me.txtnewpasswort.TabIndex = 46
+ Me.txtnewpasswort.UseSystemPasswordChar = True
+ '
+ 'Button4
+ '
+ Me.Button4.Image = Global.GUI_EDMI.My.Resources.Resources.key_16xLG
+ Me.Button4.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft
+ Me.Button4.Location = New System.Drawing.Point(882, 211)
+ Me.Button4.Name = "Button4"
+ Me.Button4.Size = New System.Drawing.Size(178, 23)
+ Me.Button4.TabIndex = 45
+ Me.Button4.Text = "Encrypt passwort"
+ Me.Button4.TextAlign = System.Drawing.ContentAlignment.MiddleRight
+ Me.Button4.UseVisualStyleBackColor = True
+ '
+ 'txtPROFILE_NAME
+ '
+ Me.txtPROFILE_NAME.Location = New System.Drawing.Point(291, 54)
+ Me.txtPROFILE_NAME.Name = "txtPROFILE_NAME"
+ Me.txtPROFILE_NAME.Size = New System.Drawing.Size(276, 21)
+ Me.txtPROFILE_NAME.TabIndex = 36
+ '
+ 'txtEMAIL_FROM
+ '
+ Me.txtEMAIL_FROM.Location = New System.Drawing.Point(291, 95)
+ Me.txtEMAIL_FROM.Name = "txtEMAIL_FROM"
+ Me.txtEMAIL_FROM.Size = New System.Drawing.Size(276, 21)
+ Me.txtEMAIL_FROM.TabIndex = 38
+ '
+ 'txtSERVER_IN
+ '
+ Me.txtSERVER_IN.Location = New System.Drawing.Point(576, 95)
+ Me.txtSERVER_IN.Name = "txtSERVER_IN"
+ Me.txtSERVER_IN.Size = New System.Drawing.Size(303, 21)
+ Me.txtSERVER_IN.TabIndex = 40
+ '
+ 'txtEMAIL_USER
+ '
+ Me.txtEMAIL_USER.Location = New System.Drawing.Point(291, 184)
+ Me.txtEMAIL_USER.Name = "txtEMAIL_USER"
+ Me.txtEMAIL_USER.Size = New System.Drawing.Size(276, 21)
+ Me.txtEMAIL_USER.TabIndex = 42
+ '
+ 'txtEMAIL_PW
+ '
+ Me.txtEMAIL_PW.Location = New System.Drawing.Point(576, 184)
+ Me.txtEMAIL_PW.Name = "txtEMAIL_PW"
+ Me.txtEMAIL_PW.ReadOnly = True
+ Me.txtEMAIL_PW.Size = New System.Drawing.Size(303, 21)
+ Me.txtEMAIL_PW.TabIndex = 44
+ Me.txtEMAIL_PW.UseSystemPasswordChar = True
+ '
+ 'txtGUID
+ '
+ Me.txtGUID.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.txtGUID.Location = New System.Drawing.Point(231, 54)
+ Me.txtGUID.Name = "txtGUID"
+ Me.txtGUID.ReadOnly = True
+ Me.txtGUID.Size = New System.Drawing.Size(51, 22)
+ Me.txtGUID.TabIndex = 6
+ '
+ 'GridControl1
+ '
+ Me.GridControl1.Dock = System.Windows.Forms.DockStyle.Left
+ Me.GridControl1.Location = New System.Drawing.Point(3, 28)
+ Me.GridControl1.MainView = Me.GridView1
+ Me.GridControl1.Name = "GridControl1"
+ Me.GridControl1.Size = New System.Drawing.Size(219, 538)
+ Me.GridControl1.TabIndex = 1
+ Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1})
+ '
+ 'GridView1
+ '
+ Me.GridView1.GridControl = Me.GridControl1
+ Me.GridView1.Name = "GridView1"
+ '
+ 'BindingNavigator1
+ '
+ Me.BindingNavigator1.AddNewItem = Me.BindingNavigatorAddNewItem
+ Me.BindingNavigator1.CountItem = Me.BindingNavigatorCountItem
+ Me.BindingNavigator1.DeleteItem = Me.BindingNavigatorDeleteItem
+ Me.BindingNavigator1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BindingNavigatorMoveFirstItem, Me.BindingNavigatorMovePreviousItem, Me.BindingNavigatorSeparator, Me.BindingNavigatorPositionItem, Me.BindingNavigatorCountItem, Me.BindingNavigatorSeparator1, Me.BindingNavigatorMoveNextItem, Me.BindingNavigatorMoveLastItem, Me.BindingNavigatorSeparator2, Me.BindingNavigatorAddNewItem, Me.BindingNavigatorDeleteItem, Me.tsbtnSaveEmailAccount})
+ Me.BindingNavigator1.Location = New System.Drawing.Point(3, 3)
+ Me.BindingNavigator1.MoveFirstItem = Me.BindingNavigatorMoveFirstItem
+ Me.BindingNavigator1.MoveLastItem = Me.BindingNavigatorMoveLastItem
+ Me.BindingNavigator1.MoveNextItem = Me.BindingNavigatorMoveNextItem
+ Me.BindingNavigator1.MovePreviousItem = Me.BindingNavigatorMovePreviousItem
+ Me.BindingNavigator1.Name = "BindingNavigator1"
+ Me.BindingNavigator1.PositionItem = Me.BindingNavigatorPositionItem
+ Me.BindingNavigator1.Size = New System.Drawing.Size(1246, 25)
+ Me.BindingNavigator1.TabIndex = 0
+ Me.BindingNavigator1.Text = "BindingNavigator1"
+ '
+ 'BindingNavigatorAddNewItem
+ '
+ Me.BindingNavigatorAddNewItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ Me.BindingNavigatorAddNewItem.Image = CType(resources.GetObject("BindingNavigatorAddNewItem.Image"), System.Drawing.Image)
+ Me.BindingNavigatorAddNewItem.Name = "BindingNavigatorAddNewItem"
+ Me.BindingNavigatorAddNewItem.RightToLeftAutoMirrorImage = True
+ Me.BindingNavigatorAddNewItem.Size = New System.Drawing.Size(23, 22)
+ Me.BindingNavigatorAddNewItem.Text = "Neu hinzufügen"
+ '
+ 'BindingNavigatorCountItem
+ '
+ Me.BindingNavigatorCountItem.Name = "BindingNavigatorCountItem"
+ Me.BindingNavigatorCountItem.Size = New System.Drawing.Size(44, 22)
+ Me.BindingNavigatorCountItem.Text = "von {0}"
+ Me.BindingNavigatorCountItem.ToolTipText = "Die Gesamtanzahl der Elemente."
+ '
+ 'BindingNavigatorDeleteItem
+ '
+ Me.BindingNavigatorDeleteItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ Me.BindingNavigatorDeleteItem.Image = CType(resources.GetObject("BindingNavigatorDeleteItem.Image"), System.Drawing.Image)
+ Me.BindingNavigatorDeleteItem.Name = "BindingNavigatorDeleteItem"
+ Me.BindingNavigatorDeleteItem.RightToLeftAutoMirrorImage = True
+ Me.BindingNavigatorDeleteItem.Size = New System.Drawing.Size(23, 22)
+ Me.BindingNavigatorDeleteItem.Text = "Löschen"
+ '
+ 'BindingNavigatorMoveFirstItem
+ '
+ Me.BindingNavigatorMoveFirstItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ Me.BindingNavigatorMoveFirstItem.Image = CType(resources.GetObject("BindingNavigatorMoveFirstItem.Image"), System.Drawing.Image)
+ Me.BindingNavigatorMoveFirstItem.Name = "BindingNavigatorMoveFirstItem"
+ Me.BindingNavigatorMoveFirstItem.RightToLeftAutoMirrorImage = True
+ Me.BindingNavigatorMoveFirstItem.Size = New System.Drawing.Size(23, 22)
+ Me.BindingNavigatorMoveFirstItem.Text = "Erste verschieben"
+ '
+ 'BindingNavigatorMovePreviousItem
+ '
+ Me.BindingNavigatorMovePreviousItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ Me.BindingNavigatorMovePreviousItem.Image = CType(resources.GetObject("BindingNavigatorMovePreviousItem.Image"), System.Drawing.Image)
+ Me.BindingNavigatorMovePreviousItem.Name = "BindingNavigatorMovePreviousItem"
+ Me.BindingNavigatorMovePreviousItem.RightToLeftAutoMirrorImage = True
+ Me.BindingNavigatorMovePreviousItem.Size = New System.Drawing.Size(23, 22)
+ Me.BindingNavigatorMovePreviousItem.Text = "Vorherige verschieben"
+ '
+ 'BindingNavigatorSeparator
+ '
+ Me.BindingNavigatorSeparator.Name = "BindingNavigatorSeparator"
+ Me.BindingNavigatorSeparator.Size = New System.Drawing.Size(6, 25)
+ '
+ 'BindingNavigatorPositionItem
+ '
+ Me.BindingNavigatorPositionItem.AccessibleName = "Position"
+ Me.BindingNavigatorPositionItem.AutoSize = False
+ Me.BindingNavigatorPositionItem.Name = "BindingNavigatorPositionItem"
+ Me.BindingNavigatorPositionItem.Size = New System.Drawing.Size(50, 23)
+ Me.BindingNavigatorPositionItem.Text = "0"
+ Me.BindingNavigatorPositionItem.ToolTipText = "Aktuelle Position"
+ '
+ 'BindingNavigatorSeparator1
+ '
+ Me.BindingNavigatorSeparator1.Name = "BindingNavigatorSeparator1"
+ Me.BindingNavigatorSeparator1.Size = New System.Drawing.Size(6, 25)
+ '
+ 'BindingNavigatorMoveNextItem
+ '
+ Me.BindingNavigatorMoveNextItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ Me.BindingNavigatorMoveNextItem.Image = CType(resources.GetObject("BindingNavigatorMoveNextItem.Image"), System.Drawing.Image)
+ Me.BindingNavigatorMoveNextItem.Name = "BindingNavigatorMoveNextItem"
+ Me.BindingNavigatorMoveNextItem.RightToLeftAutoMirrorImage = True
+ Me.BindingNavigatorMoveNextItem.Size = New System.Drawing.Size(23, 22)
+ Me.BindingNavigatorMoveNextItem.Text = "Nächste verschieben"
+ '
+ 'BindingNavigatorMoveLastItem
+ '
+ Me.BindingNavigatorMoveLastItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ Me.BindingNavigatorMoveLastItem.Image = CType(resources.GetObject("BindingNavigatorMoveLastItem.Image"), System.Drawing.Image)
+ Me.BindingNavigatorMoveLastItem.Name = "BindingNavigatorMoveLastItem"
+ Me.BindingNavigatorMoveLastItem.RightToLeftAutoMirrorImage = True
+ Me.BindingNavigatorMoveLastItem.Size = New System.Drawing.Size(23, 22)
+ Me.BindingNavigatorMoveLastItem.Text = "Letzte verschieben"
+ '
+ 'BindingNavigatorSeparator2
+ '
+ Me.BindingNavigatorSeparator2.Name = "BindingNavigatorSeparator2"
+ Me.BindingNavigatorSeparator2.Size = New System.Drawing.Size(6, 25)
+ '
+ 'tsbtnSaveEmailAccount
+ '
+ Me.tsbtnSaveEmailAccount.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
+ Me.tsbtnSaveEmailAccount.Image = Global.GUI_EDMI.My.Resources.Resources.save_16xMD
+ Me.tsbtnSaveEmailAccount.ImageTransparentColor = System.Drawing.Color.Magenta
+ Me.tsbtnSaveEmailAccount.Name = "tsbtnSaveEmailAccount"
+ Me.tsbtnSaveEmailAccount.Size = New System.Drawing.Size(23, 22)
+ Me.tsbtnSaveEmailAccount.Text = "Save"
+ '
+ 'TabPage2
+ '
+ Me.TabPage2.Location = New System.Drawing.Point(4, 22)
+ Me.TabPage2.Name = "TabPage2"
+ Me.TabPage2.Padding = New System.Windows.Forms.Padding(3)
+ Me.TabPage2.Size = New System.Drawing.Size(1182, 402)
+ Me.TabPage2.TabIndex = 1
+ Me.TabPage2.Text = "TabPage2"
+ Me.TabPage2.UseVisualStyleBackColor = True
+ '
+ 'Label4
+ '
+ Label4.AutoSize = True
+ Label4.Location = New System.Drawing.Point(879, 124)
+ Label4.Name = "Label4"
+ Label4.Size = New System.Drawing.Size(31, 13)
+ Label4.TabIndex = 68
+ Label4.Text = "Port:"
+ '
+ 'txtPORT_OUT
+ '
+ Me.txtPORT_OUT.Location = New System.Drawing.Point(882, 140)
+ Me.txtPORT_OUT.Name = "txtPORT_OUT"
+ Me.txtPORT_OUT.Size = New System.Drawing.Size(104, 21)
+ Me.txtPORT_OUT.TabIndex = 69
+ '
+ 'frmEmailAccount
+ '
+ Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
+ Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
+ Me.ClientSize = New System.Drawing.Size(1260, 617)
+ Me.Controls.Add(Me.TabControl1)
+ Me.Controls.Add(Me.StatusStrip1)
+ Me.Font = New System.Drawing.Font("Tahoma", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
+ Me.Name = "frmEmailAccount"
+ Me.Text = "Email Administration"
+ Me.TabControl1.ResumeLayout(False)
+ Me.TabPage1.ResumeLayout(False)
+ Me.TabPage1.PerformLayout()
+ CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.GridView1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.BindingNavigator1, System.ComponentModel.ISupportInitialize).EndInit()
+ Me.BindingNavigator1.ResumeLayout(False)
+ Me.BindingNavigator1.PerformLayout()
+ CType(Me.BindingSourceForm, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.BindingSourceGrid, System.ComponentModel.ISupportInitialize).EndInit()
+ Me.ResumeLayout(False)
+ Me.PerformLayout()
+
+ End Sub
+
+ Friend WithEvents StatusStrip1 As StatusStrip
+ Friend WithEvents TabControl1 As TabControl
+ Friend WithEvents TabPage1 As TabPage
+ Friend WithEvents BindingNavigator1 As BindingNavigator
+ Friend WithEvents BindingNavigatorAddNewItem As ToolStripButton
+ Friend WithEvents BindingNavigatorCountItem As ToolStripLabel
+ Friend WithEvents BindingNavigatorDeleteItem As ToolStripButton
+ Friend WithEvents BindingNavigatorMoveFirstItem As ToolStripButton
+ Friend WithEvents BindingNavigatorMovePreviousItem As ToolStripButton
+ Friend WithEvents BindingNavigatorSeparator As ToolStripSeparator
+ Friend WithEvents BindingNavigatorPositionItem As ToolStripTextBox
+ Friend WithEvents BindingNavigatorSeparator1 As ToolStripSeparator
+ Friend WithEvents BindingNavigatorMoveNextItem As ToolStripButton
+ Friend WithEvents BindingNavigatorMoveLastItem As ToolStripButton
+ Friend WithEvents BindingNavigatorSeparator2 As ToolStripSeparator
+ Friend WithEvents TabPage2 As TabPage
+ Friend WithEvents GridControl1 As DevExpress.XtraGrid.GridControl
+ Friend WithEvents GridView1 As DevExpress.XtraGrid.Views.Grid.GridView
+ Friend WithEvents txtTestmail As TextBox
+ Friend WithEvents Label1 As Label
+ Friend WithEvents btnsendtestmail As Button
+ Friend WithEvents txtPORT_IN As TextBox
+ Friend WithEvents ACTIVECheckBox As CheckBox
+ Friend WithEvents ADDED_WHOTextBox As TextBox
+ Friend WithEvents ADDED_WHENTextBox As TextBox
+ Friend WithEvents CHANGED_WHOTextBox As TextBox
+ Friend WithEvents CHANGED_WHENTextBox As TextBox
+ Friend WithEvents cmbAUTH_TYPE As ComboBox
+ Friend WithEvents txtnewpasswort As TextBox
+ Friend WithEvents Button4 As Button
+ Friend WithEvents txtPROFILE_NAME As TextBox
+ Friend WithEvents txtEMAIL_FROM As TextBox
+ Friend WithEvents txtSERVER_IN As TextBox
+ Friend WithEvents txtEMAIL_USER As TextBox
+ Friend WithEvents txtEMAIL_PW As TextBox
+ Friend WithEvents txtGUID As TextBox
+ Friend WithEvents BindingSourceForm As BindingSource
+ Friend WithEvents txtSERVER_OUT As TextBox
+ Friend WithEvents cmbPOP_IMAP As ComboBox
+ Friend WithEvents BindingSourceGrid As BindingSource
+ Friend WithEvents tsbtnSaveEmailAccount As ToolStripButton
+ Friend WithEvents txtPORT_OUT As TextBox
+End Class
diff --git a/GUI_EDMI/frmEmailAccount.resx b/GUI_EDMI/frmEmailAccount.resx
new file mode 100644
index 00000000..7e8a7594
--- /dev/null
+++ b/GUI_EDMI/frmEmailAccount.resx
@@ -0,0 +1,1448 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ 17, 17
+
+
+ False
+
+
+ 134, 17
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ wwAADsMBx2+oZAAAAUpJREFUOE9jGLzg7gL2/7fmcf6/Oofr/8UZvP+hwsSD60CNfx41/v/zsOH/yckC
+ pBtwfjov3ICDPSKkG3B8kiBQc93/Pw+q/u9oFydswKWZPP/PTuX7fxKo8Ui/0P993SJAzeX//94r+r++
+ Qeb/qhq5/0srFf/PL1X+P6tIFdPAU0B//nlYD9RUC8SV///cKwHivP9/72b+/3sn+f/f23H//92MAOKQ
+ /5NyNDENONQrDHbu3/ulQI0FQI3ZQI2pQI0J///digZqDPv/70bQ/3/X/f53peliGrCzXeL/lmap/+vA
+ zpX/v6RC8f/fWzFAjeH/p+Zp/J+QpfW/O0P3f3uq/v/mREPCYTIb6E+Qc//dCPjfk6FDWAM6APnz3w1/
+ IPb735qsT7oB3em6YP+CcH2cEekGtCQZ/G+IN/xfE2v8vzLahHQD6AQYGAAkI9iedfyIaQAAAABJRU5E
+ rkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ wwAADsMBx2+oZAAAAW9JREFUOE+1kE0ow2Ecx3dV3krt4oJaOSCTvIRkMqSxyITIzCQHDouEdnFwIOVC
+ DrhIDiQl5UTiNG/z2ppafy1S2gX/uDwfY6i1v7Hie3nqeb7fz+/7/FR/Ilwn0G0Exw4fV5GJlXlEZxXC
+ rIet9bAQvB5Ymgn2sLYAvSZEux7RUQFzE4qQt4bCXAYjPaHvnDoCkLpsRGMB2JqCTGLIijDlwqQ9bEMV
+ i9OIytR3EMNWcJ/BWH8A6j8/bOGFxwXNxYEvGbMQ9XnQ1/K78KfY3/VXzkMY0qFGG2H4RoLGQshJQNbG
+ 86CNhdrsX9a/uQZTPhQl4rMY4OLofbl3aX7I8uwPC7y/g1YdjyVJuEvT8e1tfwUYteHUxCCfHChDeHmG
+ QQvokjlOU+PbWA0x3pZnILVVI3uvQyHsbiLnqnGmRCF1NYD8pDhpRxOH7HQoAKZGkFKjceszQbpSrumX
+ bO+G80MFwKUTxgfgcO/b8D9IpXoFiiMDHIQm0skAAAAASUVORK5CYII=
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ wwAADsMBx2+oZAAAASpJREFUOE9jGDygcNbz/00Lnv/PnPj4P1QIA4S3P8Apx5A789n/VUfe/8elKL77
+ wf/ghmu4DciY8vT/wn0fsCqK73n4f+n+///9qy/gNiCh58n/aVveYyiKaL8P1pw56/9/r9ITuA2I7Hr0
+ v3f1BxRFoa33wJpb1wFt7/z73yX/AG4DApsf/q+b/w6uKLjl7v9Fe///7wBqzpjz879d3c//9hnbcRvg
+ UXX/f/60NyiK7Ipv/0+f8/u/f9e3/zqF7/5bJKzHbYB96d3/2ZNfYyjSTzn/36ToxX+VrE//jSOX4TbA
+ Iu/O/9T+11gVGSSd+C+b9vW/bvA83AYYZt3+H9byEqci/dTL/zV8p+E2QCftxn+/6od4Fal4TMBtgFPu
+ lf8gBXgVDULAwAAA8HbAq6XlmnAAAAAASUVORK5CYII=
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ wwAADsMBx2+oZAAAALZJREFUOE9jGDogvP3BfyiTdBDf/eB/cMM18gyI73n4f+n+///9qy+QbkBE+32w
+ 5sxZ//97lZ4gzYDQ1ntgza3rgLZ3/v3vkn+AeAOCW+7+X7T3//8OoOaMOT//29X9/G+fsZ00F9gV3/6f
+ Puf3f/+ub/91Ct/9t0hYT3oY6Kec/29S9OK/Stan/8aRy0g3AAQMkk78l037+l83eB55BoCAfurl/xq+
+ 08g3AARUPCZQZsBgBQwMANAUYJgEulBVAAAAAElFTkSuQmCC
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ wwAADsMBx2+oZAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78
+ n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI
+ N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f
+ oAc0QjgAAAAASUVORK5CYII=
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ wwAADsMBx2+oZAAAASxJREFUOE9jGFygcNbz/1AmBgDJNS14/j9z4mOcahhyZz77n9B9D6sCkNyqI+//
+ h7c/wG1AxpSn/+ft//0/oesOhiKQ3MJ9H/4HN1zDbUBCz5P/s/f9+t+59e9/t9LLKApBctO2vP/vX30B
+ twGRXY/+T9n263/J0r//E6b//W+TexauGCTXu/rDf6/SE7gNCGx++L917XuwZuOSL/+lo6/9N45cBtYA
+ kqub/+6/S/4B3AZ4VN3/XzL3HVyzoksPXDFILn/am//2GdtxG2Bfevd/YMszDM0gAJLLnvz6v0XCetwG
+ WOTd+W9TcAVDMwiA5FL7X8O9hBUYZt3GqhkEQHJhLS//6wbPw22ATtoNnJIgOb/qh/81fKfhNgAfcMq9
+ 8l/FYwIYQ4UGBWBgAAC+0b+zuQxOnAAAAABJRU5ErkJggg==
+
+
+
+ 288, 17
+
+
+ 447, 17
+
+
+
+ AAABAAIAgIAAAAEAIAAoCAEAJgAAACAgAAABACAAqBAAAE4IAQAoAAAAgAAAAAABAAABACAAAAAAAAAA
+ AQASCwAAEgsAAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAIAAAAJAAAACAAAAAgAAAAIAAAACQAAAAoAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAKAAAACgAA
+ AAsAAAALAAAACwAAAAsAAAAKAAAACAAAAAcAAAAGAAAABQAAAAMAAAACAAAAAgAAAAIAAAACAAAAAgAA
+ AAIAAAACAAAAAgAAAAIAAAACAAAAAQAAAAEAAAADAAAAAwAAAAQAAAAKAAAACAAAAAcAAAAHAAAABwAA
+ AAcAAAAGAAAABwAAAAYAAAACAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAMAAAAEAAAABAAA
+ AAMAAAADAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAMAAAAAAAAAAAAAAAQAAAABAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADAAAABAAA
+ AAYAAAAGAAAACAAAAAcAAAAGAAAABgAAAAsAAAANAAAADAAAAAsAAAAJAAAACwAAAAwAAAALAAAACwAA
+ AAsAAAALAAAADAAAAAwAAAAMAAAACwAAAAwAAAALAAAACwAAAAsAAAAIAAAABwAAAAcAAAAIAAAACgAA
+ AAUAAAAEAAAABwAAABAAAAAPAAAADAAAAA0AAAAPAAAADgAAAA4AAAAPAAAADwAAAAsAAAAPAAAAGAAA
+ ABcAAAASAAAACgAAAAUAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAQAAAAGAAAABgAA
+ AAYAAAAEAAAABgAAAAoAAAAFAAAAAgAAAAMAAAADAAAABQAAAAUAAAAGAAAAAwAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAUAAAAGAAAABgAA
+ AAYAAAAHAAAABwAAAAgAAAAKAAAACQAAAAgAAAAFAAAABQAAAAUAAAAGAAAABwAAAAcAAAAHAAAADAAA
+ ABAAAAANAAAADgAAAA4AAAAOAAAAEAAAABAAAAAQAAAAEgAAABUAAAAVAAAAFAAAABIAAAARAAAAEgAA
+ ABEAAAARAAAAEQAAABAAAAASAAAAFAAAABMAAAAUAAAADgAAAA4AAAAMAAAACQAAAAoAAAANAAAADgAA
+ AA0AAAAKAAAACQAAAAsAAAAMAAAADwAAABQAAAAYAAAAJgAAACoAAAAoAAAAJgAAACgAAAAkAAAAIQAA
+ ABwAAAAaAAAAGgAAABoAAAAbAAAAGwAAABoAAAAUAAAAFAAAABkAAAAdAAAAHgAAABgAAAAYAAAAGwAA
+ ABgAAAAbAAAAGQAAABMAAAAQAAAACgAAAAkAAAAHAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAgAAAAIAAAABAAAABAAA
+ AAIAAAADAAAACwAAAA4AAAAOAAAADgAAAA8AAAAPAAAAEgAAABIAAAATAAAAFQAAABMAAAASAAAAEgAA
+ ABAAAAAPAAAADwAAAAwAAAALAAAAFAAAABsAAAAZAAAAGAAAABsAAAAcAAAAHgAAABwAAAAaAAAAFQAA
+ ABkAAAAXAAAAEgAAABIAAAAUAAAAFAAAABQAAAAXAAAAGAAAABgAAAAYAAAAIwAAACgAAAAoAAAAKQAA
+ ACcAAAAnAAAAKAAAACkAAAAlAAAAHgAAABQAAAARAAAAFAAAABQAAAAQAAAAFQAAABwAAAAZAAAAFwAA
+ ABUAAAAUAAAAEQAAABUAAAAYAAAAGgAAAB0AAAAdAAAAHAAAABwAAAAfAAAAIQAAABgAAAAPAAAADwAA
+ ABIAAAAXAAAAFQAAABAAAAANAAAACwAAAAwAAAAQAAAAEQAAAA4AAAAIAAAACAAAAA4AAAAWAAAAGAAA
+ ABcAAAAbAAAAGgAAABgAAAAWAAAAEgAAAAsAAAAEAAAABQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAADAAAACAAAAAYAAAABAAAAAgAAAAkAAAAJAAAAAwAAAAYAAAAIAAAABQAAAAIAAAACAAAAAQAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAkAAAAKAAAACQAAAAoAAAANAAAADgAAAA4AAAARAAAAFgAA
+ ABUAAAARAAAADgAAAA0AAAAQAAAAFgAAABkAAAAdAAAAHQAAACEAAAAZAAAADwAAABMAAAAYAAAAGgAA
+ ABYAAAAXAAAAGAAAAB0AAAAeAAAAHgAAAB8AAAAiAAAAJwAAAC0AAAAoAAAAIgAAACUAAAAqAAAAJQAA
+ AB8AAAAYAAAAFwAAAB0AAAAcAAAAHQAAAB0AAAAdAAAAJAAAACQAAAAWAAAAFAAAABoAAAAYAAAAFgAA
+ ABsAAAAcAAAAIQAAACMAAAAhAAAAIgAAACUAAAAoAAAALwAAADMAAAA1AAAAQgAAAEQAAABDAAAAPgAA
+ ADkAAAA6AAAAJgAAABgAAAAdAAAAGwAAABQAAAAQAAAAEwAAAB4AAAAoAAAAMgAAACYAAAAbAAAAFwAA
+ ABIAAAAQAAAADQAAABcAAAAOAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AA8AAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAGAAAADAAA
+ ABoAAAAgAAAAGwAAABQAAAAXAAAAGgAAABUAAAAVAAAAFgAAABMAAAATAAAAFAAAABIAAAAXAAAAHgAA
+ ABcAAAATAAAAEQAAAA0AAAATAAAAFwAAABYAAAAOAAAADgAAABcAAAAYAAAAHAAAABYAAAAQAAAAGAAA
+ AB0AAAAiAAAALQAAAC4AAAArAAAALQAAACIAAAAvAAAAOAAAAC4AAAAoAAAAJgAAACMAAAAlAAAAJAAA
+ ACMAAAAqAAAAKwAAAC0AAAAzAAAALAAAAEEAAABTAAAAVAAAAFEAAAA4AAAANQAAADcAAAAoAAAAKQAA
+ ACwAAAApAAAALQAAADMAAAAzAAAAMAAAADAAAAAvAAAALAAAADIAAAAyAAAALAAAADUAAAA9AAAAPwAA
+ AEIAAAA+AAAAOgAAAEEAAABLAAAASAAAAEEAAAA+AAAAQQAAADYAAAAeAAAAFgAAABkAAAAbAAAAGwAA
+ ABwAAAAfAAAAHAAAABcAAAAYAAAAEgAAAA0AAAAIAAAACQAAAA8AAAASAAAAAwAAAAoAAAAHAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAAcAAAAAAAAABQAAABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAADAAAAAgAAAAcAAAAKAAAADAAAAAQAAAABAAAACQAAAA0AAAAJAAAACwAAAC4AAAA7AAAANQAA
+ ACYAAAAjAAAAHwAAAB4AAAAcAAAAGgAAABgAAAAgAAAAJwAAACwAAAAwAAAALwAAADoAAABDAAAAQwAA
+ AF4AAACFAAAAiAAAAJEAAACPAAAAewAAAG8AAABtAAAAbQAAAHcAAAByAAAAdgAAAJIAAACQAAAAfQAA
+ AHgAAAB8AAAAigAAAJEAAACZAAAAoQAAAJwAAACMAAAAggAAAHsAAAB2AAAAfQAAAHkAAABwAAAAgAAA
+ AIYAAACJAAAAkwAAAJ0AAACfAAAAnQAAAI8AAACNAAAAjAAAAIgAAABtAAAAZwAAAHIAAABzAAAAcQAA
+ AHEAAABlAAAAYgAAAGEAAABWAAAAaQAAAHMAAABuAAAAcQAAAH8AAACEAAAAgwAAAI0AAACVAAAAhwAA
+ AIIAAACAAAAAjgAAAKMAAACAAAAAZwAAAHEAAAB2AAAAbwAAAG0AAABhAAAAWAAAAGEAAABnAAAAXgAA
+ AGAAAABYAAAASQAAAFMAAAA5AAAAHwAAABUAAAAdAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAALAAAACAAA
+ AAAAAAATAAAAIAAAAAgAAAAMAAAABwAAAAUAAAAGAAAADgAAABsAAAAQAAAABAAAAA8AAAAhAAAAHwAA
+ AC4AAAAoAAAALAAAAC0AAAAqAAAAMQAAAC8AAAA5AAAARAAAAEwAAABbAAAAVAAAAFUAAABnAAAAagAA
+ AGUAAAB1AAAAgAAAAI8AAACQAAAAogAAAKUAAACTAAAAgAAAAJIAAACYAAAAlgAAAJoAAACWAAAAhwAA
+ AH8AAACJAAAAjwAAAIsAAACFAAAAewAAAHUAAABtAAAAcAAAAH4AAACFAAAAjAAAAHoAAAB0AAAAawAA
+ AF8AAABTAAAAVQAAAFoAAABaAAAAXgAAAHQAAACUAAAAigAAAIMAAACBAAAAfgAAAIgAAACKAAAAeQAA
+ AIAAAACUAAAAlQAAAIcAAACHAAAAkAAAAIcAAACEAAAAegAAAJkAAAC9AAAAuAAAALkAAADAAAAAvwAA
+ ALMAAACxAAAAtgAAALwAAAC5AAAAxgAAAMgAAADNAAAAzQAAAM0BAQHZAgIC4wICAuwDAwPpAAAA6wAA
+ ANcAAAC/AAAA2AAAANcAAADZAAAAzQAAANAAAADRAAAArAAAAK8AAACQAAAAgQAAAHYAAAAzAAAACQAA
+ ABgAAAAMAAAAAAAAAAMAAAACAAAAAAAAAAYAAAAAAAAAAAAAAAoAAAA0AAAAHQAAACQAAAAvAAAATQAA
+ AEAAAAAzAAAAMQAAAB8AAAAuAAAANgAAAEwAAABVAAAARgAAAFMAAABmAAAAZQAAAFMAAABEAAAARAAA
+ AD4AAAA5AAAAOwAAADoAAABOAAAATQAAAGEAAABvAAAAWQAAAFUAAABVAAAATQAAAEYAAAA8AAAATwAA
+ AFUAAABEAAAARAAAAGoAAABvAAAAZgAAAG8AAACDAAAAkAAAAJMAAACdAAAAoAAAAJMAAACbBQUFkQEB
+ AYcAAACXAAAAkgAAAHMAAABvAAAAdAAAAG8AAABfAAAAdgAAAI0AAACQAAAAkQAAAIkAAACMAAAAhwAA
+ AHIAAAB7AAAAcwAAAIAAAACQAAAAjAAAAHoAAAB3AAAAhgAAAIoAAACSAAAAmwAAAJ4AAACcAAAAkwAA
+ AJkAAACmAAAAvAAAANIAAADeAAAA6gAAAN8AAADYAAAA2QAAANAAAAC4AAAAxQAAANkAAADXAAAAygAA
+ ANgAAADhAAAAwgAAALcAAACfAAAAjAICAo4AAAB/EhIShycnJ5wMDAy8MzMz/zg4OPcEBASjAAAAqQEB
+ AaoAAAB/AAAAeQAAAKcAAABkAAAAVgAAAC4AAAAVAAAACwAAAAAAAAANAAAAHAAAACIAAAAqAAAANQAA
+ AEEAAAA2AAAARwAAAE8AAAAsAAAAHwAAACMAAAAsAAAAQQAAACMAAAAOAAAAMQAAAFoAAABiAAAAZwAA
+ AF8AAABkAAAAaQAAAFwAAAB5AAAAcAAAAHcAAABtAAAAbgAAAG0AAABwAAAAcgAAAJ4AAACtAAAApgAA
+ AJ0AAAChAAAAnAAAAJMAAACWAAAAmwAAAJUBAQGbAAAAqgAAAMMAAAC9AAAAuQAAALMAAAC6AAAAvwAA
+ AMkAAADRAAAA0gAAANsAAADdAAAA0wAAANIAAADPAAAAwwAAAL0AAACxAAAAwAAAAMgAAAC6AAAAqAAA
+ AJMAAACaAAAAtgAAAMAAAADLAAAAyQAAAMYAAADIAAAAuwAAALsAAADFAAAA2AAAAOYAAADqAAAA7AAA
+ AOkAAADwAAAA7wAAAPAAAADyAAAA9AAAAPIAAAD5AAAA8AAAAOAAAADWAAAA1QAAANMAAADUAAAA1QAA
+ AM8AAADXAAAA6QAAAOwAAADSAAAAvQYGBs8NDQ3lAAAAvgAAAKAAAAC3AAAAuggICM8KCgrXAQEB1wAA
+ ANMDAwPpHx8f/iwsLO0qKiqhFRUVbQAAAFgAAAAuAAAAGxUVFSYCAgJdAAAAqAAAADcAAAAaAAAALwAA
+ ACsAAAAQAAAAAQAAAAUAAAADAAAAAAAAABEAAAAzAAAATAAAAC0AAAB2AAAAdwAAAE0AAABSAAAAYgAA
+ AF4AAAB6AAAAoQAAAJkAAACWAAAAlQAAAKsAAACtAAAAqgAAAMsAAADEAAAAtQAAAK4AAACzAAAA3wAA
+ AOEAAADsAAAA9QAAAOcAAADsAAAA8gAAAPUAAADrAAAA4AAAAOQAAADnAAAA5gAAAOcAAADuAAAA+QMD
+ A+wAAADpBwcH/hAQEP4MDAz2AgIC9QICAv4DAwP/CgoK/g0NDe4AAADiAAAA3AAAANAAAADQAAAA2gAA
+ AOAAAADcAAAA3QAAANYAAADQAAAAxgAAAM4AAADbAAAA4wAAAM0AAAC8AAAA/wAAAP8AAAD/AAAA/wAA
+ AP8AAAD/AAAA/wAAAP8AAAD/AAAA7wAAAO4AAADoBgYG1QEBAdgAAADgAAAA6wAAAOQHBwfMERERzBoa
+ GtwaGhrnMTEx8ExMTPs6Ojr3Ly8v4SwsLMo4ODjXQUFB31hYWOtXV1fzSEhI+klJSe8+Pj7aSkpK6ElJ
+ Sf85OTnpOjo60EJCQvE2Njb7Nzc3/ykpKf8jIyP/Hx8f/xgYGP8aGhr/CwsL3gAAAIYAAACJAAAAmwAA
+ AIgAAAB3Pj4+0CwsLJsAAABNAAAAIgAAABUAAAAAAAAAAAAAAAAAAAAAAAAAIwAAAEIAAABqAAAAZAAA
+ AHcAAACUAAAAfQAAAJYAAACcAAAAVwAAAGcAAACdAAAAsQAAAL0AAADIAAAAxgAAAL4AAACvAAAAsAAA
+ AMsAAADHAAAAtQAAALYAAACxAAAAowAAAKYAAAC7AAAAvgAAAMoQEBDgFxcX9h0dHe4YGBjXBAQExQ8P
+ D+AWFhb3Dw8P+hISEvsTExP/EBAQ/xISEv8VFRX/Ghoa/xgYGP8YGBj/Jycn/zAwMP8mJib/Jycn/y8v
+ L/8+Pj7/QUFB/zU1NesuLi7kLS0t1To6OtBMTEzuPT099TIyMuc0NDT2LS0t/yoqKu8oKCjXLS0t6S4u
+ Lv8hISH/Hh4e9x8fH+MWFhb/ICAg/ygoKP8XFxf/CQkJ/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/x8f
+ H/9aWlr7VVVV+EZGRvhXV1f8XV1d+WlpafdpaWn6RERE/EpKSv9XV1f/VVVV/0NDQ/82Njb/OTk5/0BA
+ QP9HR0f/UlJS/29vb/9qamr/Q0ND/yYmJv8kJCT/Li4u/09PT/9eXl7/ZmZm/1JSUv9HR0f/UFBQ/1ZW
+ Vv9dXV3/ZWVl/3BwcP9HR0f9S0tL/5KSkv+lpaX/iIiI/4iIiP9gYGD/AAAAVAAAACoAAAAbAAAAHgAA
+ AA4AAAACAAAAAAAAAAAAAAATAAAAIAAAADwAAAAtAAAAHwAAACoAAABSAAAAnQAAAK4AAABjAAAAXQAA
+ AG4AAACZAAAArgAAAK0AAAC4AAAAtQAAALEAAACQAAAAfwAAAKEAAACsAAAAvAAAAMAAAADZAAAA6AAA
+ AOYAAADoEhIS8RgYGP8YGBj/Hx8f/xwcHP8YGBj/GBgY/xsbG/8SEhL/FhYW/xgYGP8XFxf/IyMj/ykp
+ Kf81NTX/MzMz/zk5Of9DQ0P/Pz8//zMzM/8wMDD/MzMz/zk5Of8/Pz//UFBQ/1ZWVv9aWlr/YWFh/15e
+ Xv9iYmL/cnJy/4SEhP+FhYX/fn5+/4CAgP+NjY3/np6e/5mZmf+hoaH/lJSU/4uLi/+Kior/fX19/4WF
+ hf+Dg4P/cXFx/25ubv9nZ2f/YWFh/2dnZ/90dHT/a2tr/3Fxcf93d3f/e3t7/3Z2dv+NjY3/cHBw/0ZG
+ Rv8yMjL/NjY2/0NDQ/87Ozv/SUlJ/3BwcP+MjIz/kpKS/3l5ef8zMzP/UlJS/2lpaf9ra2v/dXV1/2Fh
+ Yf9kZGT/e3t7/4WFhf+SkpL/lZWV/5mZmf+qqqr/s7Oz/7a2tv+1tbX/ubm5/729vf/Nzc3/0dHR/8zM
+ zP/Kysr/m5ub/4aGhv84ODgGAAAABQAAAAwAAAAUAAAAHAAAAAcAAAAAAAAAAAAAAAAAAAADAAAAAAAA
+ AAAAAAARAAAAEgAAABAAAABjAAAAewAAAIoAAACvMjIy3zk5OfocHBz+HBwc/SgoKP8qKir/IiIi/yYm
+ Jv8jIyPmDQ0N+wsLC/8mJib/Hh4e/wgICP8GBgb/CgoK/xMTE/8hISH/Hh4e/xoaGv8iIiL/Li4u/0ND
+ Q/9YWFj/YGBg/15eXv9kZGT/a2tr/2lpaf9paWn/cHBw/4eHh/+SkpL/iYmJ/4SEhP+JiYn/i4uL/5CQ
+ kP+VlZX/j4+P/6CgoP+srKz/sLCw/6+vr/+oqKj/paWl/6CgoP+Tk5P/lpaW/6CgoP+Tk5P/j4+P/4eH
+ h/+Hh4f/nZ2d/6+vr/+vr6//p6en/6mpqf+7u7v/vLy8/7W1tf+srKz/srKy/8XFxf/R0dH/ubm5/7S0
+ tP+/v7//vLy8/7Gxsf/AwMD/zs7O/8nJyf/Dw8P/v7+//87Ozv/S0tL/4eHh/8/Pz/+/v7//xcXF/76+
+ vv/MzMz/srKy/6CgoP+5ubn/vr6+/76+vv++vr7/vr6+/8XFxf/Q0ND/29vb/+Dg4P/Y2Nj/4ODg/+Pj
+ 4//b29v/2tra/9nZ2f/Y2Nj/4uLi/8/Pz//Z2dn/6enp/6urq/+AgID/lZWV//X19Q4AAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAA8AAAALAAAAEQAAACcAAAAvAAAADQAAAGcAAABLCAgIWWtr
+ a/8+Pj7/WVlZ/25ubv9eXl7/ZWVl/3Jycv9oaGj/a2tr/3Z2dv93d3f/ioqK/7CwsP+0tLT/lpaW/4aG
+ hv+fn5//oaGh/5ubm/+jo6P/oKCg/6+vr//CwsL/xcXF/9HR0f/d3d3/8PDw/+7u7v/f39//2dnZ/8nJ
+ yf/FxcX/ubm5/8LCwv/Ozs7/09PT/93d3f/m5ub/4+Pj/9zc3P/Dw8P/ysrK/7+/v//Ozs7/zs7O/7u7
+ u/+6urr/wMDA/7y8vP+1tbX/t7e3/7m5uf+7u7v/urq6/7Kysv+0tLT/vLy8/8XFxf+5ubn/p6en/66u
+ rv+0tLT/t7e3/8XFxf+2trb/wcHB/9vb2//X19f/xsbG/8bGxv/X19f/yMjI/6qqqv/BwcH/tLS0/66u
+ rv/AwMD/vLy8/66urv+oqKj/vLy8/8fHx//X19f/zs7O/8nJyf/m5ub/+/v7/+7u7v/u7u7/6urq/+np
+ 6f/09PT/9fX1/+np6f/i4uL/5ubm/97e3v/T09P/0NDQ/9LS0v/S0tL/zMzM/97e3v/V1dX/t7e3/56e
+ nv+Tk5P/hYWF/6ioqP+Li4v/5eXlA+7u7gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA
+ AAcAAAAPAAAACgAAABcAAAAAAAAAVwAAAHmlpaW6z8/P/2BgYP8oKCj/eXl5/6+vr/+fn5//vLy8/9TU
+ 1P/Pz8//0NDQ/9bW1v/a2tr/zMzM/8nJyf/Q0ND/y8vL/87Ozv/T09P/0tLS/9HR0f/Q0ND/4eHh/+rq
+ 6v/n5+f/39/f/87Ozv/Gxsb/zMzM/9vb2//d3d3/39/f/+rq6v/29vb//Pz8//r6+v/v7+//5eXl/+Pj
+ 4//d3d3/4+Pj/8XFxf/FxcX/zs7O/7Kysv/Ly8v/zc3N/8LCwv/Kysr/zs7O/8TExP/IyMj/3t7e/9jY
+ 2P/i4uL/5eXl/+Li4v/v7+//8/Pz/+rq6v/s7Oz/5eXl/9vb2//W1tb/2tra/83Nzf+3t7f/z8/P/8XF
+ xf/Ly8v/wcHB/62trf/Dw8P/tra2/6ioqP/Jycn/wsLC/66urv+7u7v/y8vL/8TExP/k5OT/29vb/9nZ
+ 2f/5+fn/3t7e/9PT0//f39//6urq/+Pj4//e3t7/39/f/97e3v/f39//4eHh/+Tk5P/S0tL/09PT/9nZ
+ 2f/Pz8//19fX/8zMzP/o6Oj/5OTk/5iYmP9+fn7/i4uL/6CgoP+7u7v/paWl/2VlZfXY2NgA29vbAOjo
+ 6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAQAAAACAAAAAAAAAAAAAAAHLCwsn///
+ ///5+fn/zs7O/56env9xcXH/wcHB/+Hh4f/l5eX/8/Pz//f39//w8PD/3t7e/93d3f/V1dX/0NDQ/9DQ
+ 0P/Kysr/vr6+/7+/v//Ly8v/1tbW/87Ozv/Q0ND/19fX/9LS0v/V1dX/09PT/87Ozv/MzMz/39/f/+Pj
+ 4//p6en/7Ozs/+rq6v/n5+f/zc3N/8bGxv/Kysr/x8fH/8/Pz//Y2Nj/2tra/76+vv/f39//6enp/9LS
+ 0v/m5ub/7+/v/+vr6//h4eH/19fX/9/f3//V1dX/6enp/+zs7P/m5ub/7Ozs//j4+P/o6Oj/5OTk/+Xl
+ 5f/y8vL//Pz8//n5+f/4+Pj//////+3t7f/c3Nz/9PT0/+fn5//r6+v/3d3d/9zc3P//////5eXl/+bm
+ 5v//////8PDw/9zc3P/l5eX/9fX1/+vr6//n5+f/xcXF/93d3f/y8vL/5OTk/9PT0//c3Nz/6+vr/+rq
+ 6v/Y2Nj/x8fH/9XV1f/Z2dn/6enp/8nJyf+3t7f/2tra/+np6f+5ubn/yMjI/+zs7P9/f3//cHBw/6Oj
+ o//s7Oz/w8PD/729vf+Ghob/XFxcxNjY2ADV1dUA3d3dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhISG0s7Oz/+zs7P/Pz8//wsLC/4aGhv9GRkb/g4OD/8rK
+ yv/f39//4ODg/+Xl5f/p6en/5OTk/+jo6P/w8PD/6urq/9nZ2f/f39//29vb/87Ozv/Nzc3/09PT/8vL
+ y//a2tr/5OTk/+Pj4//p6en/7e3t/+zs7P/m5ub/4eHh/97e3v/v7+//8fHx/+rq6v/m5ub/8fHx/+Xl
+ 5f/g4OD/7u7u/+3t7f/6+vr/6urq/8nJyf/y8vL/7u7u/9bW1v/f39//6urq/+jo6P/T09P/5OTk/+Dg
+ 4P/X19f/6Ojo/+3t7f/x8fH/9fX1/+Li4v/t7e3/8PDw/97e3v/k5OT/8/Pz//Pz8//u7u7/+Pj4/93d
+ 3f/k5OT/+fn5/+rq6v/w8PD/4ODg/9fX1//z8/P/0tLS/+Dg4P/y8vL/5OTk/9XV1f/d3d3/6urq/+3t
+ 7f/c3Nz/wMDA/+jo6P/q6ur/5+fn/9bW1v/X19f/7Ozs/+rq6v/Hx8f/29vb/9XV1f/Z2dn/7u7u/8LC
+ wv/CwsL/5+fn/8fHx/++vr7/fn5+/2VlZf+vr6//4eHh//X19f+6urr/urq6/3BwcP91dXWsbm5uAPX1
+ 9QD29vYA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAADw8PAAQE
+ BLZ2dnb/xsbG//Ly8v/Dw8P/rq6u/4ODg/8xMTH/d3d3/83Nzf/Z2dn/wsLC/+Dg4P/v7+//5OTk/+Tk
+ 5P/e3t7/zMzM/9XV1f/X19f/39/f/9vb2//Jycn/xMTE/87Ozv/i4uL/7e3t/+rq6v/l5eX/5OTk/+Li
+ 4v/l5eX/zs7O/9nZ2f/o6Oj/8vLy/+3t7f/t7e3/6urq/9jY2P/r6+v/4+Pj/+Xl5f/8/Pz/4eHh/8zM
+ zP/5+fn/8vLy/97e3v/k5OT/9/f3/+bm5v/Z2dn//f39/+rq6v/e3t7/9vb2//39/f/39/f/7e3t/93d
+ 3f//////+fn5/+np6f/k5OT/9vb2//v7+//39/f/+vr6/9vb2//x8fH//f39//Hx8f/39/f/5+fn/+Dg
+ 4P/z8/P/1tbW/+rq6v/y8vL/6enp/9nZ2f/e3t7/7u7u//Pz8//U1NT/y8vL//Pz8//q6ur/7+/v/9/f
+ 3//Z2dn/9vb2/+Dg4P/Q0ND/9fX1/9fX1//f39//7e3t/9fX1/+7u7v/nJyc/4GBgf98fHz/s7Oz/9ra
+ 2v/i4uL/5ubm/7Kysv/Pz8//cXFx/3Z2drVtbW0A8vLyAO7u7gDy8vIA+fn5AP39/QD///8A////AAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAA0REREABwcHmGNjY//BwcH/5ubm/9ra2v+zs7P/ubm5/6Wl
+ pf9VVVX/a2tr/7Gxsf/U1NT/0tLS/+Xl5f/r6+v/6Ojo/+np6f/m5ub/3t7e/+bm5v/h4eH/6urq//T0
+ 9P/r6+v/5OTk/9TU1P/e3t7/7Ozs//T09P/v7+//7Ozs//v7+//t7e3/3t7e/+vr6//o6Oj//Pz8//f3
+ 9//9/f3/5OTk/97e3v//////6Ojo/+np6f//////4ODg/9nZ2f//////+Pj4/+np6f/r6+v//////9/f
+ 3//k5OT//////+/v7//f39//8fHx//r6+v//////4+Pj/+Li4v//////+/v7/+3t7f/h4eH/8PDw//r6
+ +v/6+vr/9fX1/9vb2//4+Pj//f39//n5+f//////7e3t/+7u7v/7+/v/3Nzc//j4+P/7+/v/8/Pz/+Hh
+ 4f/k5OT/9fX1//39/f/V1dX/4eHh///////09PT/+fn5/+3t7f/f39///////93d3f/i4uL//////+Tk
+ 5P/5+fn/9fX1/39/f/9lZWX/ioqK/87Ozv/b29v/1tbW/9ra2v/h4eH/urq6/8LCwv9QUFD/cHBwi/v7
+ +wDw8PAA6+vrAOvr6wDt7e0A7u7uAO/v7wDv7+8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1FR
+ UQBJSUmbRkZG/7e3t//o6Oj/2tra/9HR0f+tra3/ycnJ/6qqqv+BgYH/bm5u/5mZmf/g4OD/5OTk//n5
+ +f/4+Pj/+Pj4//T09P/v7+//6Ojo//T09P/q6ur/5eXl//n5+f//////8fHx/+Dg4P/l5eX/7+/v//7+
+ /v/+/v7/+Pj4//7+/v/i4uL/7Ozs/+/v7//k5OT/+/v7//r6+v//////3d3d/+np6f//////8fHx/+zs
+ 7P//////39/f/+Xl5f///////f39/+7u7v/u7u7//Pz8/9vb2//x8fH///////Pz8//j4+P/9vb2////
+ ////////3t7e//Pz8/////////////n5+f/o6Oj/8vLy////////////8PDw/+Dg4P///////Pz8//r6
+ +v//////8fHx//Hx8f/19fX/3d3d//7+/v///////f39/+3t7f/o6Oj//v7+///////V1dX/8fHx////
+ ///39/f///////X19f/m5ub/+Pj4/9TU1P/t7e3///////////+ioqL/pKSk/3V1df+wsLD/8/Pz/9nZ
+ 2f/e3t7/3Nzc/+bm5v/AwMD/r6+v/zExMf+FhYVefHx8APLy8gDt7e0A6+vrAOvr6wDr6+sA6+vrAOvr
+ 6wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXl5eAFlZWbIuLi7/vLy8/+7u7v/Q0ND/1tbW/8jI
+ yP/Pz8//yMjI/5eXl/+Pj4//goKC/25ubv/ExMT/5+fn//Pz8//8/Pz/+vr6//j4+P/y8vL/6Ojo//v7
+ +//y8vL/4uLi/+/v7///////9/f3/+bm5v/n5+f/7u7u//n5+f/9/f3/+fn5//z8/P/c3Nz/9PT0//T0
+ 9P/k5OT//Pz8///////8/Pz/19fX//X19f//////8/Pz/+np6f/9/f3/3Nzc/+3t7f////////////Dw
+ 8P/29vb/9vb2/97e3v/9/f3///////r6+v/n5+f/8/Pz///////5+fn/3Nzc//7+/v//////////////
+ ///t7e3/8vLy////////////7+/v/+vr6///////////////////////8vLy//Pz8//x8fH/39/f////
+ //////////////Hx8f/k5OT///////f39//Q0ND/9fX1//z8/P/y8vL/+fn5//Ly8v/m5ub/6+vr/9PT
+ 0///////z8/P/52dnf+oqKj/s7Oz/8nJyf/Ozs7/8vLy/9ra2v/Z2dn/5eXl/7i4uP+2trb/Ojo6/4yM
+ jF2FhYUA9/f3APPz8wDx8fEA8fHxAPHx8QDx8fEA8fHxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AACYmJgAlJSUgwAAAP+SkpL/+vr6/9PT0//Y2Nj/vLy8/8DAwP/q6ur/09PT/5+fn/+np6f/ampq/1NT
+ U/+qqqr/7e3t//Dw8P////////////39/f/w8PD/4+Pj//r6+v/4+Pj/4+Pj/+fn5//+/v7/+/v7/+vr
+ 6//u7u7/6+vr//Ly8v////////////n5+f/Z2dn//Pz8//r6+v/j4+P/9vb2///////19fX/2NjY//39
+ /f//////9/f3/+7u7v/5+fn/2tra//b29v////////////Hx8f/29vb/7u7u/+np6f////////////39
+ /f/p6en/8/Pz///////w8PD/3t7e///////////////////////v7+//7u7u////////////6Ojo//Hx
+ 8f//////////////////////9PT0//X19f/v7+//4uLi//////////////////X19f/m5ub///////Ly
+ 8v/R0dH/+/v7//z8/P/4+Pj/+Pj4//X19f/t7e3//v7+/8vLy/+ZmZn/q6ur/6Kiov/u7u7/6Ojo/8PD
+ w//Pz8//5+fn/9jY2P/k5OT/ubm5/7m5uf87Ozv/m5ubcpeXlwCSkpIAkJCQAI+PjwCPj48Aj4+PAI+P
+ jwCPj48AAAAAAHZ2dgBzc3MAcnJyAHJycgBxcXEAb29vAGtrawBqamooCQkJ/1paWv/5+fn/0dHR/9zc
+ 3P/Dw8P/pqam/7+/v//a2tr/9PT0/6SkpP+Kior/cHBw/2RkZP+SkpL/ysrK/+np6f/w8PD/////////
+ ///y8vL/5OTk//T09P/+/v7/6enp/+Dg4P/4+Pj///////Hx8f/4+Pj/8PDw/+7u7v/+/v7///////j4
+ +P/Z2dn//v7+//z8/P/j4+P/9PT0///////t7e3/3Nzc/////////////Pz8//Hx8f/w8PD/2dnZ//j4
+ +P////////////Hx8f/z8/P/6Ojo//Dw8P////////////7+/v/q6ur/8fHx///////r6+v/4+Pj////
+ ///+/v7////////////z8/P/6+vr////////////4uLi//f39///////////////////////9PT0//T0
+ 9P/t7e3/4+Pj//////////////////f39//m5ub//////+3t7f/b29v//Pz8//b29v///////f39////
+ ////////gYGB/3Fxcf+rq6v/9fX1//7+/v/09PT/5eXl/7a2tv/V1dX/7e3t/+vr6//AwMD/tra2/1JS
+ Uv+FhYUzg4ODAIGBgQCBgYEAgYGBAICAgACAgIAAgICAAICAgAALCwsACQkJAAcHBwAHBwcABwcHAAYG
+ BgAGBgYABQUFAAMDAxsYGBj/YWFh/+zs7P/V1dX/zs7O/9TU1P/FxcX/wsLC/9nZ2f/h4eH//////7e3
+ t/+RkZH/m5ub/2RkZP9ra2v/mpqa/76+vv/AwMD/5ubm///////39/f/5OTk//Dw8P//////8PDw/+Hh
+ 4f/z8/P///////Ly8v/5+fn/9vb2/+3t7f/6+vr///////b29v/d3d3////////////n5+f/8/Pz////
+ ///o6Oj/4uLi/////////////f39//X19f/m5ub/29vb//////////////////Pz8//u7u7/4eHh//j4
+ +P///////v7+///////s7Oz/7+/v///////m5ub/6Ojo///////9/f3////////////19fX/6urq////
+ ///+/v7/4ODg//z8/P//////////////////////9vb2//T09P/p6en/5eXl//////////////////f3
+ 9//j4+P//////+np6f/c3Nz/4uLi//Hx8f///////////7y8vP9paWn/m5ub/7u7u/////////////Pz
+ 8//w8PD/3d3d/7W1tf/e3t7//////8HBwf+kpKT/b29v/5iYmCKWlpYAlZWVAJWVlQCVlZUAlZWVAJWV
+ lQCVlZUAlZWVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAkJCf+JiYn/5eXl/8fH
+ x//T09P/x8fH/9zc3P/a2tr/19fX/+/v7//x8fH/4uLi/52dnf+YmJj/rKys/2ZmZv91dXX/cHBw/52d
+ nf/Q0ND/wcHB////////////5eXl/+vr6//9/f3/+vr6/+zs7P/u7u7///////Ly8v/39/f//Pz8/+3t
+ 7f/z8/P///////Pz8//d3d3////////////r6+v/7+/v///////h4eH/5ubm///////+/v7///////n5
+ +f/f39//3d3d//////////////////b29v/n5+f/4eHh//7+/v///////v7+///////t7e3/7u7u////
+ ///i4uL/6+vr///////8/Pz////////////5+fn/6urq///////5+fn/4+Pj////////////////////
+ ////////9/f3//Ly8v/o6Oj/4+Pj//////////////////f39//n5+f//Pz8/+fn5//h4eH/5ubm////
+ ///n5+f/VlZW/7Gxsf/n5+f/5eXl/9jY2P//////+fn5//Ly8v/u7u7/0NDQ/7Kysv/7+/v/z8/P/5iY
+ mP9ra2v/uLi4OLa2tgC1tbUAtbW1ALW1tQC1tbUAtbW1ALW1tQC1tbUAJCQkACQkJAAkJCQAJCQkACQk
+ JAAkJCQAJCQkACQkJAAhISEAGBgY/Hx8fP//////yMjI/7u7u//Q0ND/zc3N/9ra2v/b29v/19fX//Ly
+ 8v//////7u7u/7Gxsf+bm5v/oqKi/6ampv/S0tL/dXV1/62trf/Y2Nj/qKio//b29v//////6urq/+/v
+ 7/////////////Pz8//s7Oz/+/v7//X19f/y8vL//////+7u7v/t7e3///////Ly8v/i4uL/////////
+ ///s7Oz/6+vr///////e3t7/7u7u///////9/f3///////v7+//V1dX/39/f///////+/v7///////n5
+ +f/g4OD/5OTk///////+/v7//v7+///////w8PD/7Ozs///////h4eH/7+/v////////////////////
+ ///6+vr/6enp///////09PT/5ubm////////////////////////////+Pj4//Ly8v/n5+f/5eXl////
+ ///8/Pz//f39//r6+v/q6ur/8/Pz/+3t7f/09PT//////3Jycv90dHT/09PT////////////z8/P/9TU
+ 1P//////9vb2//Ly8v/u7u7/xMTE/8PDw//X19f/jY2N/2pqav+srKw8qampAKenpwCnp6cAp6enAKen
+ pwCnp6cAp6enAKenpwAeHh4AHh4eAB4eHgAeHh4AHh4eAB4eHgAeHh4AHh4eABwcHABHR0fdSEhI//39
+ /f/t7e3/xsbG/7Gxsf/X19f/29vb/9zc3P/i4uL/1tbW/+zs7P///////////8XFxf+mpqb/rKys/6Wl
+ pf/Jycn/hoaG/7Kysv/o6Oj/paWl/+Hh4f//////9fX1//Ly8v////////////n5+f/t7e3/9vb2//b2
+ 9v/z8/P///////X19f/s7Oz///////Ly8v/j4+P////////////x8fH/7u7u///////f39//9PT0////
+ ///9/f3///////v7+//Q0ND/5ubm///////9/f3///////r6+v/Z2dn/6enp///////9/f3//Pz8////
+ ///z8/P/7Ozs///////h4eH/8vLy///////////////////////8/Pz/6+vr///////w8PD/7Ozs////
+ ////////////////////////+vr6//Dw8P/o6Oj/5eXl//7+/v/8/Pz//Pz8//r6+v/09PT/5OTk/8jI
+ yP++vr7/cHBw/62trf/o6Oj/////////////////zs7O/9LS0v//////8fHx/+zs7P/t7e3/xMTE/7Ky
+ sv+Pj4//YWFh/6mpqTmkpKQAo6OjAKOjowCjo6MAo6OjAKOjowCjo6MAo6OjAGdnZwBnZ2cAZ2dnAGdn
+ ZwBnZ2cAZ2dnAGdnZwBmZmYAZmZmAGJiYtY4ODj/4ODg/+Xl5f/n5+f/zs7O/7Kysv/a2tr/6urq/+Li
+ 4v/j4+P/1dXV/+np6f///////////8jIyP+zs7P/m5ub/21tbf/BwcH/mJiY/7Kysv/19fX/rKys/8rK
+ yv//////+vr6//Dw8P/+/v7///////7+/v/v7+//8vLy//T09P/z8/P///////v7+//q6ur//Pz8/+7u
+ 7v/o6Oj////////////29vb/8fHx//r6+v/d3d3/+/v7//////////////////r6+v/Jycn/6urq////
+ ///9/f3///////j4+P/T09P/8PDw/////////////f39///////09PT/7u7u//v7+//f39//9vb2////
+ ///////////////////9/f3/6urq///////r6+v/8fHx////////////////////////////+fn5//Dw
+ 8P/m5ub/4eHh//39/f/8/Pz//f39///////Q0ND/5eXl/4GBgf+AgID/0tLS////////////+/v7////
+ ////////zc3N/9DQ0P/+/v7/5+fn/+bm5v/09PT/ycnJ/2hoaP9QUFD/xMTEMb6+vgC9vb0Avb29AL29
+ vQC9vb0Avb29AL29vQC9vb0AVVVVAFVVVQBVVVUAVVVVAFVVVQBVVVUAVVVVAFVVVQBVVVUAU1NTkDU1
+ Nf/X19f/0tLS/8rKyv/g4OD/2dnZ/7q6uv/f39//+Pj4/+Pj4//g4OD/2NjY/+vr6////////////9XV
+ 1f/BwcH/t7e3/2NjY/+kpKT/qKio/6ysrP/6+vr/vLy8/7u7u////////////+3t7f/9/f3/////////
+ ///z8/P/7+/v//Hx8f/19fX////////////v7+//+Pj4/+vr6//u7u7////////////4+Pj/8fHx/+7u
+ 7v/i4uL///////////////////////n5+f/Jycn/8fHx///////9/f3///////b29v/Q0ND/9fX1//7+
+ /v/9/f3//f39///////4+Pj/8PDw//T09P/l5eX/+/v7///////////////////////7+/v/7u7u////
+ ///p6en/9vb2/////////////////////////////Pz8//Ly8v/j4+P/4ODg//39/f//////9fX1////
+ ///S0tL/VVVV/7Kysv//////9fX1/+bm5v/8/Pz/+/v7//7+/v//////0tLS/87Ozv/v7+//4eHh/+3t
+ 7f/z8/P/Z2dn/0VFRf/s7Owd5eXlAOPj4wDj4+MA4+PjAOPj4wDj4+MA4+PjAOPj4wBiYmIAYmJiAGJi
+ YgBiYmIAYmJiAGJiYgBiYmIAYmJiAGJiYgBgYGBsJSUl/9XV1f/y8vL/yMjI/76+vv/V1dX/4uLi/8rK
+ yv/c3Nz/+vr6/+np6f/j4+P/2tra/+/v7////////////97e3v/ExMT/xsbG/1xcXP90dHT/paWl/5+f
+ n//w8PD/zMzM/7e3t////////////+np6f/8/Pz////////////4+Pj/7e3t/+zs7P/29vb/////////
+ ///z8/P/8/Pz/+Tk5P/v7+/////////////7+/v/8/Pz/+Xl5f/l5eX///////////////////////X1
+ 9f/Hx8f/9vb2//////////////////Hx8f/R0dH/7e3t//f39////////Pz8///////8/Pz/8/Pz/+/v
+ 7//i4uL//Pz8///////////////////////6+vr/7u7u//39/f/n5+f/+Pj4////////////////////
+ /////////f39/+/v7//i4uL/4+Pj//z8/P///////////4mJif+cnJz/0tLS////////////6+vr/+jo
+ 6P/+/v7/+/v7//39/f//////z8/P/9DQ0P/r6+v/5+fn//Pz8/9wcHD/PT09/9PT0wDNzc0AzMzMAMzM
+ zADNzc0Azc3NAM3NzQDNzc0Azc3NAEJCQgBCQkIAQkJCAEJCQgBCQkIAQkJCAEJCQgBCQkIAQUFBAD09
+ PW84ODj/r6+v/+Xl5f/s7Oz/zs7O/8DAwP/Ozs7/6Ojo/9XV1f/V1dX//f39//Ly8v/g4OD/4+Pj//Dw
+ 8P///////////97e3v+pqan/ysrK/4GBgf9cXFz/lJSU/5qamv/q6ur/0NDQ/7Kysv/5+fn//////+rq
+ 6v/6+vr////////////8/Pz/7+/v/+jo6P/19fX////////////7+/v/8PDw/93d3f/09PT/////////
+ ////////9fX1/9vb2//s7Oz//////////////////////+/v7//Hx8f//Pz8/////////////////+7u
+ 7v/X19f/8PDw//j4+P/////////////////+/v7/9vb2/+bm5v/l5eX/////////////////////////
+ ///5+fn/8fHx//n5+f/n5+f//////////////////////////////////f39//Dw8P/q6ur/09PT////
+ //+cnJz/aWlp//Dw8P/5+fn/2NjY//b29v//////7+/v/+fn5//8/Pz//Pz8//z8/P//////6enp/+vr
+ 6//p6en/8vLy/2tra/9kZGTX19fXANXV1QDY2NgA29vbANvb2wDb29sA29vbANvb2wDb29sAERERABER
+ EQAREREAERERABEREQAREREAEBAQABAQEAAPDw8ACQkJUJWVlf/b29v/x8fH/87Ozv/m5ub/19fX/9TU
+ 1P/R0dH/6Ojo/9nZ2f/U1NT//f39//X19f/o6Oj/5OTk/+vr6////////////+fn5/+pqan/39/f/6Sk
+ pP9KSkr/enp6/5+fn//Nzc3/zMzM/76+vv/s7Oz//////+np6f/4+Pj/////////////////8PDw/+Li
+ 4v/29vb/////////////////8/Pz/9jY2P/y8vL/////////////////9PT0/9bW1v/y8vL/////////
+ /////////////+rq6v/Ly8v//////////////////////+3t7f/X19f/8fHx//v7+///////////////
+ ////////+vr6/9/f3//l5eX////////////////////////////4+Pj/8fHx//b29v/q6ur/////////
+ //////////////////////////////T09P/d3d3/r6+v/1NTU//CwsL//Pz8///////q6ur/0dHR//v7
+ +///////8PDw/+Xl5f/8/Pz//Pz8//v7+//29vb/7e3t//Pz8//29vb/ampq/4SEhK2GhoYAi4uLAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSUlIAUlJSAFJSUgBSUlIAUlJSAFJSUgBSUlIAUFBQAE5O
+ TgBJSUk1h4eH/+Li4v/u7u7/tLS0/8jIyP/m5ub/6urq/+bm5v/a2tr/4+Pj/9fX1//Q0ND/+fn5////
+ ///s7Oz/4eHh/+jo6P////////////Dw8P+qqqr/3d3d/76+vv9OTk7/XV1d/5OTk//CwsL/2dnZ/8jI
+ yP/i4uL//////+rq6v/29vb///////7+/v//////9PT0/+Hh4f/19fX/////////////////8/Pz/9PT
+ 0//x8fH/////////////////8vLy/8/Pz//39/f//////////////////////+Li4v/R0dH/////////
+ /////////////+vr6//Y2Nj/8vLy//z8/P//////////////////////+vr6/9vb2//p6en/////////
+ ///////////////////09PT/8/Pz//Hx8f/s7Oz/////////////////////////////////19fX/9fX
+ 1/9JSUn/e3t7////////////9/f3///////i4uL/1dXV//39/f//////8fHx/+Xl5f/6+vr//f39//X1
+ 9f/t7e3/9fX1//////9tbW3/X19frWVlZQBubm4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGho
+ aABoaGgAaGhoAGhoaABoaGgAZ2dnAGRkZABeXl4AWVlZAFdXVzVqamr/19fX//Ly8v/b29v/tra2/9TU
+ 1P/v7+//7e3t//Ly8v/j4+P/7e3t/9ra2v/IyMj/9/f3///////w8PD/39/f/+bm5v////////////Pz
+ 8/+urq7/3t7e/9LS0v9cXFz/ODg4/4eHh/+6urr/4uLi/8vLy//n5+f//////+zs7P/09PT///////7+
+ /v//////9vb2/9zc3P/09PT/////////////////+Pj4/9HR0f/p6en/////////////////7u7u/83N
+ zf/8/Pz//////////////////////97e3v/V1dX//////////////////////+rq6v/V1dX/8vLy//z8
+ /P///////////////////////v7+/9jY2P/t7e3////////////////////////////09PT/9fX1/+/v
+ 7//x8fH//////////////////////+Li4v/Nzc3/dHR0/3Fxcf/e3t7/5+fn//Pz8///////+/v7////
+ ///l5eX/8PDw//z8/P//////9PT0/+Pj4//29vb//f39/+/v7//w8PD//////3p6ev+Dg4OujY2NAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGtr
+ awD///8ASUlJrVJSUv/b29v/9PT0/+fn5//q6ur/v7+//8/Pz//09PT/8fHx//X19f/29vb/9vb2/9vb
+ 2//IyMj/9fX1///////19fX/39/f/+Li4v/+/v7///////T09P+6urr/2dnZ/+bm5v9wcHD/KCgo/1tb
+ W/+tra3//Pz8/8XFxf/09PT//f39/+vr6//29vb///////39/f//////+Pj4/9ra2v/z8/P/////////
+ ////////+/v7/9DQ0P/n5+f/////////////////7u7u/8/Pz////////////////////////////9fX
+ 1//e3t7//////////////////////+bm5v/U1NT/8vLy/////////////////////////////////9LS
+ 0v/q6ur////////////////////////////y8vL/9/f3//Dw8P/5+fn////////////n5+f/z8/P/5mZ
+ mf9paWn/vr6+///////p6en/1tbW///////7+/v/+fn5///////7+/v/+fn5//j4+P//////9PT0/+Hh
+ 4f/y8vL/+fn5//Pz8///////ZGRk/39/f4GJiYkAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAa2trAP///zlsbGz/FxcX/83Nzf/y8vL/5OTk//X1
+ 9f/q6ur/vLy8/9LS0v/5+fn/8PDw//Dw8P/19fX/+Pj4/+Pj4//Ly8v/7Ozs///////+/v7/5OTk/97e
+ 3v/6+vr///////f39/++vr7/z8/P//T09P+Pj4//Ly8v/yAgIP+4uLj//////8bGxv//////9PT0/+fn
+ 5//29vb///////39/f//////+vr6/97e3v/y8vL//////////////////////9zc3P/V1dX///////r6
+ +v/9/f3/4ODg/9XV1f///////Pz8/+vr6//7+/v//////9fX1//j4+P///////////////////////Hx
+ 8f/W1tb/8PDw/////////////v7+//Ly8v/9/f3/+fn5/8HBwf/u7u7/////////////////////////
+ ///39/f/7Ozs/+fn5///////9/f3/76+vv+AgID/hoaG/8/Pz//19fX//Pz8//X19f/g4OD/09PT//f3
+ 9//9/f3/+fn5//n5+f/6+vr/+fn5//n5+f/8/Pz/9PT0/+Tk5P/n5+f/+Pj4//////9UVFT/AAAAPgAA
+ AAAAAAAAAAAAEgAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AABvb28A////X4GBgf8gICD/xsbG//b29v/V1dX/3d3d/+vr6//v7+//w8PD/9HR0f/5+fn/8fHx/+/v
+ 7//09PT/+vr6//Hx8f/Nzc3/4eHh////////////5+fn/9zc3P/09PT///////z8/P/BwcH/wcHB/+Xl
+ 5f+enp7/U1NT/xMTE//d3d3/9vb2/83Nzf//////7e3t/+Pj4//4+Pj///////39/f//////6urq/8fH
+ x//r6+v///////X19f/s7Oz//////8PDw/+4uLj/7Ozs////////////y8vL/8rKyv//////4ODg/+Li
+ 4v///////////9XV1f/U1NT//v7+//Ly8v//////+fn5/+bm5v/a2tr/4ODg//r6+v//////8vLy////
+ ////////8PDw/8zMzP//////////////////////8fHx/9bW1v/V1dX/9/f3/+Pj4/+qqqr/ZmZm/3l5
+ ef/S0tL////////////29vb/5eXl/+np6f/q6ur/9/f3//7+/v/5+fn/+fn5//v7+//6+vr/+fn5//b2
+ 9v/5+fn/+/v7/+bm5v/g4OD//////56env8AAAA0AAAAAAAAAAAAAAAIAAAADwAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAACPj49JlJSU/yoqKv/CwsL/5+fn/+3t
+ 7f/U1NT/z8/P/+Dg4P/09PT/09PT/9HR0f/39/f/8vLy/+/v7//v7+////////z8/P/T09P/2NjY////
+ ////////7+/v/9ra2v/u7u7////////////b29v//////+bm5v/BwcH/WFhY/zAwMP/9/f3/2NjY/+Li
+ 4v//////8vLy/9/f3//v7+/////////////09PT/4uLi/8vLy//w8PD//Pz8/+Tk5P/o6Oj//////9fX
+ 1//Hx8f/39/f//v7+///////x8fH/97e3v//////9PT0//Dw8P/+/v7//////+bm5v/j4+P///////z8
+ /P/b29v/6Ojo//j4+P/Kysr/vr6+/+np6f/d3d3/+/v7////////////+Pj4/+fn5///////////////
+ ///b29v/+vr6///////AwMD/cXFx/2tra/+Dg4P/09PT//39/f///////v7+///////w8PD/5ubm//n5
+ +f//////+/v7//j4+P/5+fn/+/v7//7+/v/5+fn/9/f3//b29v/5+fn/+/v7/+vr6///////qamp/wAA
+ AFcAAAAAAAAAAAAAAAAAAAAQAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAUAAAAAObm5jp7e3v/EBAQ/+Dg4P/i4uL/0dHR//X19f/d3d3/xsbG/9XV1f/5+fn/3t7e/87O
+ zv/z8/P/+Pj4/+/v7//39/f////////////b29v/zs7O//z8/P//////9vb2/9ra2v/k5OT/////////
+ //////////////Dw8P/BwcH/Ozs7/zo6Ov/e3t7/zc3N//7+/v//////2dnZ/9PT0//Y2Nj/2tra//n5
+ +f/39/f/zs7O/8zMzP/9/f3///////Hx8f/f39//9fX1//v7+//w8PD/5+fn//f39//+/v7/wMDA/9zc
+ 3P/v7+//2NjY/7+/v/+urq7/1tbW/8/Pz/+oqKj/4+Pj/+zs7P+5ubn/1dXV///////BwcH/jo6O/6qq
+ qv/MzMz/7u7u//z8/P/6+vr/9PT0/+vr6//09PT/+fn5/9/f3///////5+fn/0BAQP80NDT/ioqK/9zc
+ 3P/////////////////8/Pz//v7+///////z8/P/5eXl/+vr6//9/f3/+Pj4//b29v/7+/v//v7+//39
+ /f/19fX/9PT0//b29v/29vb/9/f3//////+dnZ3/AAAAgQAAAAAAAAAAAAAAAAAAAAkAAAAKAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACurq4ApKSkRJOTk/8QEBD/0dHR//f3
+ 9/+9vb3/y8vL//j4+P/o6Oj/zMzM/9HR0f/29vb/5OTk/87Ozv/y8vL//Pz8//b29v/+/v7/////////
+ ///m5ub/ycnJ/+3t7f///////////9/f3//e3t7//f39///////////////////////Ozs7/FhYW/1BQ
+ UP/Hx8f/1NTU//T09P/Y2Nj/6+vr/87Ozv/Pz8//3Nzc/+Dg4P/+/v7/6enp/8vLy//X19f/////////
+ //////////////Ly8v/Pz8//o6Oj/6SkpP+ysrL/bGxs/2pqav+AgID/X19f/zAwMP9QUFD/fn5+/zIy
+ Mv9gYGD/f39//4mJif+Tk5P/nZ2d/9nZ2f+6urr/m5ub/7Gxsf/Y2Nj//v7+///////r6+v/wcHB/9jY
+ 2P/29vb//////+Hh4f87Ozv/IiIi/2NjY/+goKD/zs7O/+7u7v/////////////////7+/v/+vr6//v7
+ +//y8vL/5eXl/+3t7f/9/f3/9PT0//r6+v/+/v7//Pz8//n5+f/29vb/9vb2//f39//09PT//////8XF
+ xf9CQkI3AAAAAAAAABEAAAAGAAAACwAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAFNTUwBKSko4ioqK/x8fH//U1NT/+/v7/97e3v/BwcH/urq6/+3t7f/19fX/4uLi/9XV
+ 1f/o6Oj/5OTk/8zMzP/u7u7//v7+//39/f/8/Pz//v7+///////z8/P/ysrK/+Hh4f///////////+bm
+ 5v/W1tb/9vb2///////////////////////V1dX/VFRU/4uLi/+hoaH/xsbG//Dw8P/a2tr/5OTk/+np
+ 6f/Pz8//z8/P/+Li4v/t7e3//f39/+vr6//c3Nz/9/f3//Ly8v/IyMj/YmJi/xsbG/8bGxv/NjY2/zk5
+ Of8jIyP/YGBg/3Nzc/9OTk7/OTk5/zg4OP9xcXH/VFRU/zk5Of86Ojr/dnZ2/5aWlv94eHj/m5ub//n5
+ +f//////tra2/7Ozs//ExMT/+fn5//39/f/Nzc3/8fHx///////29vb/V1dX/xkZGf9bW1v/T09P/9ra
+ 2v//////x8fH/9HR0f////////////v7+//29vb/+/v7//7+/v/z8/P/4+Pj/+vr6//8/Pz/+/v7//39
+ /f/8/Pz/+vr6//f39//29vb/9/f3//b29v//////r6+v/wAAAC4AAAAAAAAABwAAAAUAAAAHAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ODgANfX1xtycnL/CQkJ/8fH
+ x//6+vr/4eHh/+zs7P/Pz8//ra2t/9jY2P//////9fX1/9zc3P/i4uL/39/f/87Ozv/r6+v/////////
+ ///8/Pz//f39////////////yMjI/8/Pz//5+fn///////Ly8v/V1dX/7e3t////////////////////
+ ///w8PD/ZmZm/15eXv95eXn/x8fH/9LS0v/e3t7/4eHh/9vb2//r6+v/5ubm//Ly8v///////////8vL
+ y/+JiYn/UVFR/xoaGv8aGhr/ExMT/wcHB/8AAAD/AAAA/yYmJv9bW1v/fn5+/39/f/99fX3/XV1d/3V1
+ df97e3v/NjY2/05OTv9vb2//e3t7/7i4uP9sbGz/Q0ND/52dnf/d3d3/sbGx/7m5uf/T09P/9fX1//n5
+ +f//////6urq/21tbf8GBgb/TU1N/4KCgv/BwcH/7+/v////////////1dXV/97e3v////////////j4
+ +P/4+Pj/+/v7//7+/v/09PT/3t7e/+3t7f//////+vr6//39/f/6+vr/+Pj4//b29v/29vb/9/f3////
+ //+zs7P/AAAAMwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAt7e3DYODg/8mJib/tLS0//b29v/U1NT/1tbW//v7+//i4uL/qamp/8rK
+ yv///////f39/+vr6//u7u7/4ODg/8jIyP/r6+v////////////8/Pz//f39///////9/f3/0tLS/8jI
+ yP/j4+P////////////Z2dn/39/f///////////////////////29vb/Z2dn/2BgYP+IiIj/4ODg/97e
+ 3v/Ozs7/3d3d//j4+P/Ly8v/nZ2d/3x8fP91dXX/VFRU/x0dHf8vLy//Jycn/ycnJ/8HBwf/IyMj/1tb
+ W/90dHT/lZWV/29vb/8iIiL/DAwM/yMjI/8aGhr/AAAA/01NTf90dHT/Pz8//x4eHv9TU1P/nJyc/6mp
+ qf+MjIz/cHBw/0pKSv9sbGz/iIiI/7CwsP/4+Pj//////9/f3/+QkJD/Kysr/zo6Ov9+fn7/v7+/////
+ ///z8/P/ycnJ//7+/v//////6urq/9fX1//5+fn///////n5+f/5+fn/+fn5//7+/v/5+fn/39/f/+3t
+ 7f///////Pz8//r6+v/4+Pj/9vb2//b29v/39/f//////8rKyv8AAAAuAAAAAAAAAAUAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAccHBxAaWlp/19f
+ X/+6urr/6Ojo/9nZ2f/W1tb/19fX//Hx8f/t7e3/vLy8/8PDw//19fX///////X19f/19fX/4uLi/8jI
+ yP/o6Oj////////////7+/v/+/v7////////////6enp/+Tk5P/X19f/6Ojo///////n5+f/1dXV//r6
+ +v//////////////////////jY2N/3t7e/+Kior/tra2/8jIyP+5ubn/eHh4/1ZWVv9jY2P/YWFh/3h4
+ eP8VFRX/AAAA/xkZGf9CQkL/Xl5e/4SEhP+srKz/vb29/8fHx//U1NT/zMzM/8rKyv+7u7v/oKCg/5CQ
+ kP9cXFz/Nzc3/0NDQ/8pKSn/AAAA/wAAAP8MDAz/h4eH/7a2tv95eXn/oaGh/4SEhP9hYWH/MzMz/8HB
+ wf//////i4uL/yEhIf9KSkr/d3d3/4CAgP/////////////////u7u7/ycnJ//f39///////8fHx/9jY
+ 2P/09PT///////39/f/7+/v//Pz8///////6+vr/2dnZ/+3t7f//////+/v7//r6+v/39/f/+fn5//n5
+ +f//////xMTE/wAAADAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAVAAAABBMTEzpiYmL/S0tL/5ycnP/x8fH/z8/P/9fX1//k5OT/3t7e/9nZ
+ 2f/4+Pj/3Nzc/7u7u//j4+P///////r6+v/6+vr/7Ozs/9DQ0P/b29v////////////9/f3//Pz8////
+ //////////////n5+f/c3Nz/2tra//j4+P/19fX/1tbW/+vr6/////////////////+/v7//gICA/5eX
+ l/+kpKT/v7+//4yMjP9ra2v/gICA/3Nzc/8yMjL/GBgY/01NTf9wcHD/mJiY/7y8vP/d3d3/3t7e/7Oz
+ s/+ampr/paWl/8TExP/i4uL/4ODg/+np6f/y8vL/8fHx//b29v/v7+//x8fH/5eXl/+Wlpb/ZGRk/w8P
+ D/8QEBD/V1dX/4WFhf+Hh4f/sLCw/7Ozs/+6urr/v7+//4ODg/8/Pz//SEhI/5CQkP+lpaX/6Ojo/9ra
+ 2v/9/f3////////////09PT/y8vL//b29v//////+Pj4/9bW1v/v7+////////7+/v/8/Pz//Pz8////
+ ///6+vr/19fX/+zs7P//////+fn5//Pz8//y8vL/9PT0///////CwsL/AAAAOgAAAAAAAAAFAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAENDQ0PoKC
+ gv9ra2v/tbW1/9jY2P/AwMD/y8vL/9vb2//w8PD/4eHh/9PT0//6+vr/7+/v/8DAwP/T09P/+/v7//z8
+ /P/6+vr//f39/9bW1v/Ozs7//f39///////9/f3//Pz8//z8/P/8/Pz////////////v7+//2dnZ/+Hh
+ 4f/09PT/2tra/9jY2P/4+Pj/29vb////////////8PDw/7a2tv+FhYX/jo6O/21tbf9DQ0P/FhYW/zEx
+ Mf+ampr/7Ozs////////////9fX1/87Ozv+xsbH/w8PD/+Xl5f/i4uL/ysrK/8HBwf+9vb3/yMjI/9fX
+ 1//R0dH/xsbG/8/Pz//x8fH//f39/8fHx//IyMj/srKy/0VFRf8AAAD/a2tr/0VFRf9GRkb/vLy8/+3t
+ 7f+pqan/Pz8//zk5Of+FhYX/oqKi////////////39/f/8PDw//39/f////////////z8/P/xcXF/+/v
+ 7///////+vr6/9bW1v/s7Oz///////7+/v/8/Pz//Pz8///////7+/v/3Nzc/+jo6P/6+vr/7u7u/+vr
+ 6//s7Oz//////7e3t/8AAABGAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoKChBTU1N+3p6ev//////5eXl/8nJyf+5ubn/vb29/+Li
+ 4v/r6+v/6enp/+Tk5P/t7e3/8/Pz/8/Pz//Kysr/8fHx//39/f///////////+Dg4P/IyMj/7e3t////
+ /////////Pz8//z8/P/8/Pz//f39////////////7Ozs//T09P/6+vr/0tLS/9DQ0P///////////9XV
+ 1f9jY2P/V1dX/1ZWVv8oKCj/AAAA/xMTE/9SUlL/qamp/+Tk5P/x8fH/1dXV/729vf+7u7v/zMzM/+Tk
+ 5P/j4+P/3Nzc/+Hh4f/m5ub/6Ojo/9bW1v/U1NT/z8/P/93d3f/g4OD/wsLC/7Ozs//Kysr/3t7e/7e3
+ t//BwcH/kZGR/zExMf8AAAD/BwcH/ygoKP88PDz/Ly8v/0FBQf9ISEj/bGxs/4iIiP/19fX/////////
+ ////////6enp/8XFxf/r6+v////////////x8fH/xMTE/+/v7////////v7+/9jY2P/p6en/////////
+ ///8/Pz/+vr6///////+/v7/zc3N/9zc3P/4+Pj/8fHx/+7u7v//////ra2t/wAAAFUAAAAAAAAABQAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIy
+ Mi4/Pz/4YGBg//Pz8//m5ub/7Ozs/9zc3P++vr7/vb29/9TU1P/h4eH/+vr6//Ly8v/l5eX/7u7u/9/f
+ 3//Ly8v/3t7e/////////////////+/v7//Jycn/2tra/////////////f39//z8/P/8/Pz/////////
+ ///29vb/7+/v//39/f///////////8/Pz/96enr/FxcX/ycnJ/+enp7/lZWV/zU1Nf9hYWH/t7e3//X1
+ 9f/5+fn/8vLy/8bGxv+9vb3/4eHh//T09P/t7e3/5+fn/+Tk5P/i4uL/2dnZ/8DAwP+9vb3/wsLC/7q6
+ uv+0tLT/vLy8/8HBwf/V1dX/ysrK/6ioqP+mpqb/n5+f/52dnf/CwsL/2dnZ/8HBwf+FhYX/Kioq/xIS
+ Ev8eHh7/FxcX/zAwMP9ZWVn/3t7e/////////////Pz8//39/f//////6+vr/7q6uv/l5eX/////////
+ ///x8fH/xsbG//Dw8P///////////9vb2//l5eX////////////7+/v/+fn5//j4+P/x8fH/zs7O/9ra
+ 2v/z8/P/8/Pz//////+xsbH/AAAAYAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAcCAgINx4eHvaJiYn/+/v7/9ra2v/b29v/5OTk//T0
+ 9P/a2tr/xcXF/7y8vP/b29v//v7+//z8/P/m5ub/6urq/+Pj4//Ozs7/19fX//r6+v//////////////
+ ///U1NT/zMzM//T09P/////////////////29vb/6enp//Dw8P////////////X19f/g4OD/i4uL/zc3
+ N/9oaGj/wsLC/93d3f9sbGz/bGxs//b29v///////f39/+Dg4P/Ozs7/3d3d///////6+vr/2tra/9vb
+ 2//q6ur/8fHx//Pz8//7+/v/9/f3/+rq6v/j4+P/3t7e/9ra2v/Hx8f/yMjI/87Ozv/FxcX/2NjY/+Pj
+ 4//Ly8v/pKSk/6SkpP/Kysr/6urq///////U1NT/UVFR/ygoKP83Nzf/Hh4e/w0NDf+Li4v/y8vL////
+ ////////////////////////6Ojo/7+/v//g4OD////////////t7e3/xcXF//Ly8v///////////9zc
+ 3P/h4eH////////////4+Pj/8PDw//T09P/x8fH/1NTU/9vb2//s7Oz//////7Kysv8AAABoAAAAAAAA
+ AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA
+ ACVhYWEpJCQk83Fxcf/o6Oj/yMjI/9jY2P/d3d3/3Nzc//7+/v/z8/P/ycnJ/7i4uP/R0dH/7u7u////
+ ///w8PD/5eXl/+Li4v/j4+P/2dnZ/+rq6v/////////////////o6Oj/wMDA/9fX1///////9/f3/+rq
+ 6v/7+/v////////////Ly8v/vLy8/5KSkv9nZ2f/TU1N/319ff+zs7P/Q0ND/4aGhv///////////9HR
+ 0f/Ozs7/3d3d/+rq6v/39/f/7Ozs/+Tk5P/n5+f/9/f3//T09P/s7Oz/4uLi/97e3v/b29v/5+fn//n5
+ +f/7+/v/+vr6//39/f/39/f/4ODg/8rKyv+7u7v/09PT/9PT0//Nzc3/2NjY/62trf+ioqL/p6en/8fH
+ x/++vr7/XFxc/ykpKf8mJib/YGBg/0lJSf9SUlL/jo6O/+/v7/////////////r6+v/7+/v/6Ojo/8DA
+ wP/h4eH//v7+///////r6+v/ysrK//T09P///////////9/f3//g4OD////////////w8PD/7e3t//Pz
+ 8//s7Oz/2dnZ/+Dg4P//////srKy/wAAAHgAAAAVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE2NjYyw1NTXkWFhY//j4+P/Nzc3/t7e3/8vL
+ y//i4uL/4eHh//b29v//////2dnZ/8DAwP/Dw8P/29vb//z8/P/9/f3/7e3t/+zs7P/q6ur/3Nzc/93d
+ 3f//////////////////////3t7e/8zMzP/p6en////////////39/f/sbGx/7m5uf+UlJT/Wlpa/x4e
+ Hv+CgoL/tbW1/3Fxcf+3t7f//////+zs7P/MzMz/4ODg/+3t7f/r6+v///////v7+//m5ub/8fHx////
+ ///09PT/7e3t/+3t7f/t7e3/7u7u//j4+P/6+vr/7+/v/+vr6//u7u7/8fHx/+zs7P/w8PD///////Hx
+ 8f/Q0ND/yMjI/8jIyP/Ozs7/z8/P/9DQ0P+3t7f/oaGh/8rKyv+jo6P/cHBw/z09Pf9wcHD/f39//3Bw
+ cP9lZWX/d3d3/87Ozv/5+fn/8fHx////////////5ubm/8LCwv/h4eH//v7+///////o6Oj/0dHR//X1
+ 9f///////////+Hh4f/f39////////r6+v/t7e3/7u7u//Pz8//j4+P/5ubm//////+IiIj/AAAAdwAA
+ ACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAJSUlLAsLC/iMjIz//////93d3f/X19f/s7Oz/7u7u//l5eX/5OTk/+zs7P//////8/Pz/9LS
+ 0v/Hx8f/09PT//Ly8v//////+fn5/+bm5v/r6+v/6+vr/9fX1//t7e3////////////y8vL/29vb//v7
+ +//19fX/ysrK/97e3v++vr7/VVVV/25ubv9ra2v/XV1d/8TExP+5ubn/xMTE///////b29v/z8/P/+7u
+ 7v//////7e3t/+7u7v/y8vL/9vb2//Pz8//u7u7/6+vr/+zs7P/z8/P//f39////////////////////
+ ///////////////////8/Pz/+fn5//r6+v/09PT/8/Pz/+np6f/z8/P//////9/f3//FxcX/x8fH/9PT
+ 0//e3t7/tbW1/5+fn/+ioqL/mJiY/0ZGRv9JSUn/eXl5/3Z2dv90dHT/ampq/62trf/s7Oz/2NjY//Hx
+ 8f//////6enp/8XFxf/i4uL////////////n5+f/1tbW//X19f///////////+Tk5P/i4uL/9/f3//X1
+ 9f/t7e3/7u7u//Dw8P/w8PD/3t7e/0pKStQAAAB0AAAAOQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1NTVEKysr9aCgoP//////2tra/+Hh
+ 4f/l5eX/wcHB/7m5uf/S0tL/29vb/+zs7P///////////+Pj4//S0tL/4+Pj//7+/v///////////+Pj
+ 4//m5ub/8PDw/+Hh4f/j4+P/3t7e/+7u7v//////0tLS/6Ojo//Q0ND/tbW1/1NTU/+Dg4P/d3d3/4uL
+ i//i4uL/ycnJ/87Ozv/7+/v/3d3d/+Xl5f///////Pz8/93d3f/j4+P/9/f3/+3t7f/q6ur/8PDw//b2
+ 9v/6+vr///////////////////////////////////////////////////////////////////////j4
+ +P/29vb//Pz8/+Pj4//g4OD////////////m5ub/yMjI/8vLy//Kysr/1tbW/7Ozs/+mpqb/kZGR/2ho
+ aP9RUVH/b29v/319ff91dXX/aWlp/6Wlpf/Q0ND/0dHR/9jY2P/8/Pz/6Ojo/8LCwv/g4OD//v7+//n5
+ +f/n5+f/2tra//b29v///////////+jo6P/c3Nz/7Ozs//T09P/u7u7/7e3t///////d3d3/Tk5OqwAA
+ AFgAAAA/AAAAAAAAAAIAAAAAAAAAAQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAKzs7O25KSkrmwsLC//f39//S0tL/2NjY/9jY2P/t7e3/2tra/7i4uP+8vLz/4eHh//j4
+ +P///////////+Xl5f/l5eX////////////+/v7//////+rq6v/n5+f/7u7u/9bW1v/8/Pz//////7a2
+ tv98fHz/4eHh/4mJif8uLi7/ubm5/6ampv94eHj/8vLy///////z8/P/1tbW/9vb2//i4uL//////+zs
+ 7P/Z2dn/19fX/+jo6P/19fX/+fn5//z8/P//////////////////////////////////////////////
+ ///////////////////////////////////////////////////+/v7//Pz8/+fn5//k5OT/8fHx////
+ ////////1NTU/7i4uP/Gxsb/19fX/7e3t/+lpaX/h4eH/0BAQP9MTEz/cHBw/4aGhv+Li4v/YWFh/9DQ
+ 0P//////x8fH/8fHx//g4OD/39/f/8zMzP/g4OD//v7+/+7u7v/p6en/3t7e//z8/P///////////+Tk
+ 5P/W1tb/5+fn//T09P/t7e3//////+rq6v9iYmLMAAAAbgAAACYAAAAAAAAAEgAAAAwAAAACAAAADgAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhIiIif0ZGRv+ZmZn/ysrK/+np
+ 6f/Q0ND/2dnZ/8/Pz//y8vL/8vLy/7u7u/+5ubn/7e3t//Dw8P///////////+Tk5P/e3t7/+/v7////
+ ///9/f3///////Ly8v/Gxsb/6+vr/+np6f/U1NT/dXV1/8PDw/9/f3//T09P/6+vr/+VlZX/wMDA////
+ ////////3d3d/97e3v/5+fn/7Ozs//Ly8v/Z2dn/1tbW/+Tk5P/8/Pz/////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////r6+v/o6Oj/4uLi//T09P//////+Pj4/8XFxf+xsbH/wsLC/8bG
+ xv+IiIj/cHBw/z8/P/89PT3/dHR0/42Njf+IiIj/fHx8/+Tk5P//////3Nzc/8zMzP/T09P/zc3N/87O
+ zv/s7Oz/+/v7/+rq6v/t7e3/4eHh////////////9fX1/93d3f/c3Nz/4uLi/+7u7v//////6urq/zU1
+ NfkAAACRAAAAKgAAAAAAAAAAAAAADwAAABAAAAAVAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAACIHBweRPT09/5iYmP+3t7f/+Pj4/+Dg4P/S0tL/2tra/9TU1P/r6+v//////9XV
+ 1f+3t7f/7Ozs/+rq6v/39/f///////Dw8P/i4uL/9/f3///////39/f//f39/9/f3//FxcX/0NDQ/4qK
+ iv+oqKj/bW1t/zg4OP+QkJD/n5+f/8jIyP//////7u7u/+Pj4//l5eX//////+Xl5f/g4OD/5+fn/+zs
+ 7P/5+fn/////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///39/f/5eXl/+Pj4//7+/v//////+Xl5f+zs7P/tbW1/76+vv+SkpL/iYmJ/0lJSf8gICD/ZGRk/6Oj
+ o/9/f3//WFhY/+Pj4///////6Ojo/9/f3//R0dH/urq6/8fHx//4+Pj/8fHx/+3t7f/29vb/4uLi////
+ ///7+/v/7+/v/+Dg4P/i4uL/3d3d///////g4OD/VlZW/wAAAGQAAAAaAAAAAAAAAAAAAAAAAAAABAAA
+ AAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAJ5XV1f/i4uL/7i4
+ uP/h4eH/5+fn/+zs7P/V1dX/8PDw/+zs7P/n5+f//////+Dg4P+0tLT/5+fn/+fn5//r6+v///////j4
+ +P/Y2Nj/6Ojo///////FxcX/1dXV//j4+P+SkpL/lJSU/1ZWVv8JCQn/enp6/8PDw//n5+f//////+/v
+ 7//x8fH/6+vr///////R0dH/y8vL/+rq6v/39/f/////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////8fHx/9vb2//j4+P/////////
+ //+/v7//0tLS/7m5uf+goKD/mJiY/1xcXP8TExP/SEhI/4+Pj/9+fn7/T09P/9ra2v//////4uLi/+fn
+ 5//T09P/tbW1/8HBwf/y8vL/8PDw///////39/f/39/f//b29v/9/f3/6+vr/9/f3//o6Oj/+Pj4/8rK
+ yv+RkZH/FxcXeQAAABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAQAAAAHAAAAslZWVv+kpKT/3t7e/+Li4v+3t7f/1NTU//Pz8//h4eH/+vr6//Dw
+ 8P/X19f//////+rq6v+1tbX/39/f//r6+v/Dw8P/p6en///////r6+v/tLS0/9vb2///////ZmZm/2dn
+ Z/88PDz/Ly8v/6enp//5+fn/7u7u/+Hh4f/09PT//////+np6f/j4+P/0NDQ/8nJyf/8/Pz/////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////+Pj4//Y2Nj/+vr6///////Gxsb/ysrK/7m5uf+Tk5P/n5+f/3x8
+ fP8bGxv/RkZG/4eHh/9mZmb/W1tb/87Ozv/w8PD/29vb/+fn5//Z2dn/srKy/8fHx//09PT/+Pj4////
+ ///m5ub/0dHR//Dw8P/6+vr/6enp/9zc3P//////3d3d/3l5ef8eHh6rAAAAAgAAAAABAQEAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAABYAAADFZGRk/5yc
+ nP/n5+f//////+Xl5f+7u7v/uLi4/+3t7f/u7u7/8fHx//f39//W1tb/8/Pz//Ly8v/Kysr/8/Pz/4aG
+ hv/Ly8v/8/Pz/7u7u//r6+v//////z4+Pv9HR0f/dnZ2/2BgYP/Kysr//////+7u7v/t7e3/////////
+ ///h4eH/zs7O/+jo6P/W1tb/////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////////T0
+ 9P/X19f/6Ojo//b29v/c3Nz/1NTU/729vf+CgoL/pKSk/5iYmP85OTn/HBwc/0dHR/83Nzf/bGxs/8fH
+ x//i4uL/5eXl/+Tk5P/g4OD/ysrK/9HR0f/Y2Nj/6enp///////h4eH/z8/P/+vr6//6+vr/5eXl/+3t
+ 7f/w8PD/bGxs/1RUVKkAAAAAAgICAAQEBAAEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAEQAAAN57e3v/v7+//6mpqf/d3d3////////////IyMj/u7u7/9zc
+ 3P/m5ub/9PT0///////c3Nz/6urq//////+np6f/paWl/+Tk5P+UlJT/8vLy//////8XFxf/GRkZ/4uL
+ i/+zs7P/5+fn///////s7Oz//Pz8////////////2dnZ/9DQ0P/8/Pz/9fX1/+np6f///////f39//z8
+ /P/9/f3/////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////////////////////g4OD/4ODg/+3t7f//////8PDw/6ys
+ rP+BgYH/srKy/2dnZ/8gICD/EBAQ/zo6Ov9iYmL/lJSU/7Gxsf/Ozs7/6enp/+Xl5f/e3t7/xMTE/9LS
+ 0v/U1NT/2dnZ//n5+f/n5+f/zc3N/+np6f/7+/v/7u7u/+Xl5f96enr/ZmZm4QAAABACAgIABAQEAAQE
+ BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAy1xc
+ XP/IyMj/6urq/8nJyf+6urr/8vLy///////z8/P/xcXF/8TExP/c3Nz/9/f3////////////vb29/2lp
+ af+kpKT/lJSU///////t7e3/LS0t/wAAAP9jY2P/0NDQ/+7u7v//////9vb2////////////9fX1/9PT
+ 0//Y2Nj////////////e3t7/9fX1///////8/Pz//Pz8//z8/P/9/f3/////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////09PT/2tra/9bW1v///////v7+/66urv+Li4v/nZ2d/4qKiv85OTn/DQ0N/0ZG
+ Rv91dXX/mZmZ/7Kysv+/v7//3d3d/9vb2//Pz8//zc3N/+Pj4//Q0ND/0dHR/+7u7v/m5ub/z8/P/+rq
+ 6v/8/Pz/7u7u/25ubv94eHj/BAQENAoKCgAMDAwADQ0NAA0NDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAADUiYmJ/9DQ0P+srKz//v7+/83Nzf+1tbX/3t7e////
+ ////////09PT/7e3t//CwsL///////7+/v9vb2//lpaW/8/Pz///////0NDQ/yAgIP8AAAD/VFRU/8fH
+ x///////+Pj4//b29v/4+Pj/6+vr/+np6f/c3Nz/4+Pj////////////8PDw/+Li4v///////Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//v7+////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////4ODg/8/P
+ z////////////7Gxsf+enp7/sbGx/5aWlv9GRkb/CgoK/zc3N/9ubm7/nJyc/+np6f/k5OT/zs7O/9TU
+ 1P/MzMz/ycnJ/+Dg4P/W1tb/09PT/+Pj4//p6en/3t7e/9fX1///////cXFx/3x8fP8hISFKJycnACgo
+ KAApKSkAKSkpACkpKQApKSkAKSkpACkpKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAA
+ AN6Wlpb/2dnZ/6enp//T09P/5ubm/+Dg4P/BwcH/1NTU/+rq6v//////9vb2/9bW1v+1tbX/SkpK/66u
+ rv/Nzc3/nZ2d/52dnf8JCQn/CwsL/7S0tP////////////Hx8f/x8fH/6urq/+jo6P/t7e3/3Nzc/+Li
+ 4v////////////z8/P/m5ub/8PDw///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//v7+////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////5+fn/83Nzf/8/Pz//////7+/v/+srKz/tLS0/6Wl
+ pf9hYWH/AwMD/ywsLP9lZWX/o6Oj//7+/v/i4uL/zMzM/9fX1//Ly8v/uLi4/9fX1//f39//19fX/+np
+ 6f/39/f/6enp/+Hh4f9jY2P/fX19/ygoKForKysALCwsACwsLAAsLCwALS0tAC0tLQAtLS0ALS0tAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAARAAAA342Njf/Dw8P/zs7O/8/Pz//Dw8P/zMzM/9nZ
+ 2f/Q0ND/0dHR/+Tk5P/v7+//29vb/2RkZP94eHj/wsLC/5CQkP9RUVH/AAAA/yYmJv/Jycn/////////
+ ////////4+Pj/+Xl5f/s7Oz/+vr6/+Pj4//i4uL/////////////////9vb2/+rq6v/29vb///////z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//f39////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////6urq/87Ozv/+/v7//////87Ozv+zs7P/rKys/56env92dnb/EhIS/y0tLf9iYmL/ioqK//n5
+ +f/t7e3/1NTU/+Pj4//Hx8f/ra2t/9bW1v/j4+P/3t7e//Ly8v/x8fH/5OTk/0xMTP9MTEz/X19fZl5e
+ XgBdXV0AXV1dAF1dXQBdXV0AXV1dAF1dXQBdXV0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAA
+ ADYAAADzoaGh/56env//////6+vr/8TExP/BwcH/vb29/9XV1f/n5+f/xMTE/6SkpP+AgID/sbGx//Pz
+ 8/9fX1//ExMT/yMjI/+AgID/4ODg////////////39/f/8fHx//v7+/////////////c3Nz/6Ojo////
+ ///+/v7//Pz8//z8/P/9/f3//Pz8//r6+v/9/f3//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//7+/v//////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////8vLy/97e3v/6+vr/+vr6/9nZ
+ 2f+0tLT/zMzM/7i4uP9paWn/CwsL/y0tLf9nZ2f/gICA/9zc3P/r6+v/4ODg/+fn5//ExMT/oaGh/9PT
+ 0//x8fH/z8/P/87Ozv/+/v7/dHR0/xcXF//AwMBzvLy8ALu7uwC7u7sAu7u7ALu7uwC7u7sAu7u7ALu7
+ uwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAXAAAAP+urq7/qKio/6mpqf/g4OD/+vr6/8vL
+ y//X19f/yMjI/5WVlf+kpKT/vr6+/7Gxsf/q6ur/XFxc/wAAAP8gICD/sLCw////////////9PT0/9nZ
+ 2f/W1tb/6urq//Dw8P/x8fH/4+Pj/+7u7v///////f39//z8/P/8/Pz//Pz8//z8/P/9/f3//f39//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//39/f/+/v7/////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////8vLy/+Xl5f//////+/v7/9fX1/+7u7v/4ODg/7S0tP94eHj/HBwc/zU1
+ Nf9HR0f/KCgo/7Gxsf/09PT/3Nzc/+Xl5f/BwcH/ra2t/9vb2//BwcH/6enp//////+bm5v/Li4u/66u
+ rm2pqakAp6enAKenpwCnp6cAp6enAKenpwCnp6cAp6enAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAABpAAAA/3Fxcf/g4OD/i4uL/0dHR//39/f//////7u7u/+enp7/y8vL/62trf+hoaH/2NjY/yws
+ LP8AAAD/fHx8/8/Pz//z8/P/8fHx//Dw8P/Nzc3/0dHR//b29v/39/f/7e3t/9fX1//m5ub/////////
+ ///8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/9/f3/////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////7+/v//j4
+ +P///////Pz8/9bW1v+2trb/5ubm/6+vr/+EhIT/Ly8v/yYmJv9HR0f/MjIy/7a2tv/u7u7/5+fn//b2
+ 9v+zs7P/p6en/76+vv+8vLz//////52dnf8qKir/uLi4drOzswCxsbEAsbGxALGxsQCxsbEAsbGxALGx
+ sQCxsbEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH4LCwv+g4OD/9HR0f+ysrL/qqqq/5ub
+ m/+RkZH/y8vL///////Q0ND/mpqa/4mJif8gICD/Ghoa/5KSkv/5+fn/+vr6/+Pj4//q6ur/ysrK/+Dg
+ 4P/9/f3/6urq//Ly8v/29vb/8vLy//Pz8//s7Oz/+Pj4///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//v7+////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////6+vr//f39////////////97e3v+9vb3/x8fH/5ub
+ m/+Pj4//PDw8/zw8PP9KSkr/NTU1/729vf/AwMD/zc3N/9XV1f+jo6P/x8fH/6+vr//19fX/rq6u/ygo
+ KP+goKB2m5ubAJqamgCampoAmpqaAJqamgCampoAmpqaAJqamgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAhgoKCvyKior/mJiY/6ioqP//////srKy/3Nzc/+9vb3/ycnJ/5aWlv+AgID/Li4u/yoq
+ Kv+cnJz/0dHR/97e3v/f39//7e3t/9bW1v/j4+P///////b29v/5+fn/+/v7/+vr6//19fX///////f3
+ 9//q6ur/7+/v/////////////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//f39////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///+/v7/6urq//v7+////////////+Tk5P/Ly8v/ycnJ/56env+Hh4f/NDQ0/yQkJP9+fn7/VFRU/4SE
+ hP+ysrL/wMDA/6SkpP+pqan/tra2//////+pqan/Hx8f/5KSknqPj48Ajo6OAI6OjgCOjo4Ajo6OAI6O
+ jgCOjo4Ajo6OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIUFBSALCws4H5+fv91dXX/gYGB/3l5
+ ef+3t7f//////8TExP9aWlr/h4eH/4GBgf8yMjL/iYmJ/9LS0v/29vb/x8fH/9jY2P/Y2Nj/1dXV//7+
+ /v/6+vr/9vb2//Pz8//w8PD/9/f3//X19f/z8/P//f39///////u7u7/6urq//j4+P///////Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//39/f//////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////////////////////9/f3/6+vr//z8/P//////+fn5/+Tk
+ 5P/W1tb/0NDQ/6Wlpf+Kior/MjIy/x0dHf9hYWH/TExM/4eHh/+2trb/0NDQ/6mpqf+xsbH/z8/P/8vL
+ y/9XV1f/g4ODeoKCggCBgYEAgYGBAIGBgQCBgYEAgYGBAIGBgQCBgYEAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAPB4eHngxMTH/YmJi/4WFhf9eXl7/lJSU/+np6f+vr6//eHh4/4KCgv+ZmZn/LS0t/29v
+ b//Hx8f/3d3d/+Xl5f/+/v7/4uLi/7+/v//u7u7/6+vr/+jo6P/09PT/9/f3//Ly8v/y8vL/9PT0//T0
+ 9P/z8/P/+vr6///////39/f/6urq/+/v7/////////////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//39
+ /f/+/v7/////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////7+/v/6Ojo//39/f//////8/Pz/+Li4v/e3t7/29vb/6Kiov+Ojo7/IyMj/zg4
+ OP+Ojo7/RUVF/1FRUf+ZmZn/v7+//8HBwf/S0tL/w8PD/3R0dP+BgYF0goKCAIKCggCCgoIAgoKCAIKC
+ ggCDg4MAg4ODAIODgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkAAAAgAAAAYB4eHv90dHT/UVFR/3Z2
+ dv//////1tbW/0lJSf8+Pj7/YmJi/zw8PP9tbW3/39/f/7+/v//c3Nz/6enp/+3t7f/Nzc3/7e3t/+zs
+ 7P/p6en/7Ozs/+Li4v/k5OT/8vLy//j4+P/z8/P/9PT0//T09P/z8/P/+/v7///////+/v7/7e3t/+rq
+ 6v/4+Pj///////7+/v/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//v7+////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////////////////////////////////////5+fn/6urq////
+ ////////7u7u/+Hh4f/a2tr/29vb/8PDw/+kpKT/Kysr/1ZWVv+Dg4P/VVVV/3R0dP+FhYX/mJiY/+fn
+ 5//x8fH/V1dX/3Nzc3t2dnYAd3d3AHd3dwB3d3cAeXl5AHt7ewB8fHwAfHx8AAAAAAAAAAAAAAAAAAAA
+ AAAAAAARAAAAPAAAAAALCwteQEBA/25ubv9SUlL/ubm5/8jIyP9tbW3/WFhY/4GBgf9KSkr/XV1d/+7u
+ 7v/Z2dn/xMTE/+zs7P//////4ODg/+Li4v/t7e3/5OTk/+Xl5f/v7+//8/Pz/+fn5//f39//5eXl//Dw
+ 8P/5+fn/9fX1//Hx8f/29vb//f39////////////9/f3/+rq6v/v7+/////////////8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//v7+//8/Pz//v7+////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////4+Pj/6urq////////////6+vr/+Hh4f/j4+P/5eXl/8fH
+ x/+cnJz/ICAg/2VlZf91dXX/d3d3/4mJif9dXV3/oKCg//////9tbW3/RkZGd0xMTABPT08AUFBQAFFR
+ UQBTU1MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAAAqAAAAACQkJFhCQkL/LCws/2tr
+ a/+4uLj/gYGB/2RkZP+3t7f/b29v/z09Pf+8vLz/4eHh/8jIyP/5+fn//////9DQ0P/u7u7//////+rq
+ 6v/m5ub/5OTk/97e3v/l5eX/9/f3//f39//l5eX/4ODg/+Tk5P/x8fH/9/f3//T09P/4+Pj/+/v7//39
+ /f///////////+7u7v/p6en/+Pj4///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz///////39/f/8/Pz//Pz8//z8/P/8/Pz//Pz8//7+
+ /v//////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///19fX/7Ozs////////////6Ojo/+Pj4//V1dX/2NjY/+rq6v+QkJD/Kysr/3Jycv9WVlb/hYWF/5iY
+ mP+UlJT/v7+//4GBgf9ERESJTExMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAANgAAACEhISEAHBwccSAgIP9nZ2f/dnZ2/1hYWP8zMzP/yMjI/4uLi/9ra2v/zc3N/87O
+ zv+1tbX/19fX//r6+v/39/f/6enp/+jo6P/v7+///Pz8//f39//q6ur/5+fn/9vb2//b29v/7e3t//z8
+ /P/09PT/4+Pj/+Dg4P/k5OT/9PT0//z8/P/4+Pj/+vr6//z8/P/+/v7///////f39//q6ur/7+/v////
+ /////////Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8////
+ ///x8fH/9vb2///////8/Pz//Pz8//z8/P/8/Pz//Pz8//39/f//////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////////////////////09PT/7u7u///////7+/v/5+fn/+Xl
+ 5f/Nzc3/29vb/+/v7/99fX3/SEhI/2hoaP9BQUH/vb29/8LCwv+ampr/aWlp/w4ODp8AAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAALCIiIgAcHByEPDw8/4yM
+ jP9zc3P/Gxsb/4SEhP9kZGT/Y2Nj/8bGxv/19fX/3Nzc/9HR0f/Y2Nj/1tbW/9XV1f/x8fH/9vb2/+jo
+ 6P/r6+v/+Pj4//j4+P/09PT/6+vr/+Li4v/U1NT/4ODg//b29v/8/Pz/8PDw/+Xl5f/i4uL/5+fn//f3
+ 9///////+vr6//v7+//9/f3////////////u7u7/6urq//j4+P///////Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz///////T09P/4+Pj//v7+//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/+/v7/////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////y8vL/8fHx///////29vb/6urq/+Li4v/FxcX/5+fn/+jo6P9qamr/aWlp/15e
+ Xv9lZWX/0tLS/8TExP+NjY3/AAAAtgAAAAwAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAADgAAAAkWlpaAFRUVJ4oKCj/fX19/4qKiv+hoaH/vb29/xkZGf+lpaX/6Ojo/9DQ
+ 0P/AwMD/8fHx/8XFxf/BwcH/2dnZ/+Tk5P/j4+P/6urq/+3t7f/p6en/9PT0//b29v/19fX/8/Pz/+np
+ 6f/Y2Nj/09PT/+fn5//9/f3//Pz8//Ly8v/l5eX/5OTk/+rq6v/4+Pj///////r6+v/6+vr//v7+////
+ ///39/f/6enp/+/v7/////////////z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz///////39/f/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/9/f3//v7+////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////////////////////////////////////x8fH/8vLy////
+ ///39/f/6+vr/9zc3P/CwsL/6+vr/9bW1v9mZmb/lpaW/1VVVf+Dg4P/6+vr/4+Pj/8EBASMAAAAAQAA
+ ADsAAAAbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMwAAADqmpqYAn5+fmy4u
+ Lv+kpKT/xMTE/8DAwP89PT3/g4OD/93d3f/r6+v/vr6+/9zc3P/W1tb/vb29/9fX1//n5+f/5OTk/+Hh
+ 4f/h4eH/5eXl/+fn5//q6ur/8vLy//n5+f/x8fH/9PT0//T09P/m5ub/1tbW/9jY2P/y8vL//v7+//j4
+ +P/z8/P/6enp/+Xl5f/r6+v/+vr6///////8/Pz/+/v7////////////7u7u/+rq6v/5+fn///////z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//f39////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////w8PD/8fHx///////+/v7/7e3t/+Xl5f/X19f/7+/v/7e3
+ t/90dHT/qKio/1NTU//FxcX/paWl/wAAAFwAAAAAAAAADQAAAEIAAAAkAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAoAAAALAAAAABERESSdnZ2/6ysrP+YmJj/YGBg/4ODg//c3Nz/8PDw/7Cw
+ sP+9vb3/9fX1/+Dg4P/Z2dn/0dHR/9bW1v/n5+f/5eXl/+Tk5P/d3d3/5OTk/+Hh4f/i4uL/8PDw//r6
+ +v/19fX/8PDw//f39//29vb/3t7e/9LS0v/f39//+vr6//39/f/4+Pj/9fX1/+jo6P/o6Oj/7u7u//f3
+ 9////////Pz8//39/f//////9vb2/+np6f/x8fH////////////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//39/f//////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///u7u7/8vLy////////////+Pj4/+rq6v/Q0ND/7+/v/6SkpP+UlJT/h4eH/19fX/+wsLDpMzMzAAAA
+ ABYAAAAAAAAAAwAAAC4AAAAiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkAAAASAAAAABYW
+ FraioqL/sLCw/0FBQf+3t7f/5OTk/9DQ0P/V1dX/ubm5/+Xl5f/Jycn/0dHR/+fn5//g4OD/0NDQ/9HR
+ 0f/Z2dn/4eHh/+jo6P/e3t7/39/f/+Dg4P/U1NT/4+Pj//b29v/6+vr/8vLy//Pz8//+/v7/8fHx/9jY
+ 2P/V1dX/6urq///////4+Pj/+Pj4//T09P/r6+v/6enp/+vr6//29vb///////z8/P/+/v7//Pz8/+3t
+ 7f/q6ur/+fn5///////8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//39/f//////////////
+ ///////////////////////////////////+/v7//v7+//7+/v/9/f36/f39+P39/f/9/f3//f39//7+
+ /v/9/f3//Pz8//39/f/9/f3////////////////////////////w8PD/7+/v////////////+Pj4/9/f
+ 3//W1tb/2dnZ/7u7u/+fn5//sLCw/6Ojo60wMDAAEBAQIAAAAAcAAAAQAAAAAAAAABkAAAAbAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADoAAAATPDw8paampv+QkJD/oaGh/+Xl5f/Ozs7/3d3d/5yc
+ nP/IyMj/8PDw/+Xl5f/Ly8v/xcXF/9fX1//p6en/3t7e/9DQ0P/Pz8//3Nzc/+Tk5P/l5eX/4ODg/+Hh
+ 4f/U1NT/zs7O/+bm5v/39/f/8vLy/+/v7//4+Pj//////+3t7f/W1tb/2tra//Ly8v//////9vb2//n5
+ +f/4+Pj/7Ozs/+bm5v/q6ur/9PT0//7+/v////////////X19f/q6ur/8vLy/////////////Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//39
+ /f/9/f3//Pz8//z8/P/8/Pz/+/v7//z8/P/+/v7//v7+//39/f/9/f3//f39//39/f/8/Pz//Pz8//z8
+ /P/8/Pz/+vr6//z8/P78/Pz9/Pz8//z8/P/8/Pz/+/v7//n5+f/39/f/9/f3//f39//6+vr//v7+////
+ ///////////////////w8PD/6urq//7+/v//////8PDw/9HR0f/R0dH/19fX/+zs7P++vr7/eHh4gjk5
+ OQBEREQFAAAAAwAAAAYAAAAAAAAAAAAAAA0AAAASAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AAAAXQAA
+ ABwKCgpngYGB/42Njf+3t7f/19fX/+np6f+2trb/vr6+/9ra2v+9vb3/0dHR/+Xl5f/U1NT/v7+//8XF
+ xf/d3d3/6urq/9ra2v/Pz8//4ODg/+Li4v/f39//5ubm/+fn5//g4OD/zc3N/9HR0f/q6ur/8/Pz/+7u
+ 7v/u7u7/+vr6//7+/v/k5OT/19fX/9/f3//6+vr//v7+//b29v/8/Pz/+fn5/+3t7f/n5+f/5+fn/+7u
+ 7v/6+vr///////7+/v/t7e3/6urq//r6+v///////f39//z8/P/8/Pz//v7+//7+/v/9/f3//f39//z8
+ /P/+/v7//v7+//7+/v/+/v7//Pz8//z8/P/7+/v/+/v7//r6+v/6+vr/+vr6//r6+v/5+fn/+fn5//r6
+ +v/8/Pz/+/v7//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//v7
+ +//5+fn/+fn5//r6+v/7+/v/+/v7//r6+v/5+fn/+/v7//j4+P/39/f/+fn5//v7+//r6+v/4eHh//Ly
+ 8v/+/v7/9vb2/97e3v/Kysr/6+vr/729vf8gICDCYmJiAG1tbQcAAAAKAAAAAAAAAAAAAAAAAAAAAAAA
+ AAwAAAARAAAAAAAAAAAAAAAAAAAAAAAAAD0AAAAvAAAALwAAAHxKSkrOysrK/9XV1f/Kysr/wsLC/7Ky
+ sv/X19f/0dHR/9PT0//Gxsb/tLS0/8nJyf/i4uL/zs7O/729vf/Kysr/5OTk/+Tk5P/c3Nz/3d3d/+Hh
+ 4f/a2tr/3Nzc/+np6f/q6ur/3Nzc/87Ozv/a2tr/8vLy//Hx8f/p6en/6+vr//j4+P/z8/P/2tra/9LS
+ 0v/l5eX//f39//7+/v/39/f/+/v7//v7+//x8fH/6Ojo/+bm5v/q6ur/+fn5///////39/f/5+fn/+/v
+ 7////////f39//r6+v/5+fn/+Pj4//f39//39/f/+Pj4//n5+f/5+fn/+Pj4//j4+P/6+vr/+vr6//n5
+ +f/5+fn/+fn5//n5+f/5+fn/+fn5//n5+f/5+fn/+vr6//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
+ /P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/7+/v//Pz8//z8/P/7+/v/+fn5//j4+P/19fX/8/Pz//Ly
+ 8v/09PT/9PT0/+/v7//s7Oz/7e3t//X19f/z8/P/9fX1//j4+P/h4eH/zc3N/+Hh4f/U1NT//v7+/4CA
+ gNSYmJgAMjIyCwAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAANgAA
+ ACUAAAAlAAAAQgcHB3Tc3Nz//////+zs7P/ExMT/1NTU/9DQ0P/AwMD/zs7O/8vLy//Dw8P/vr6+/7y8
+ vP/W1tb/3t7e/8TExP+9vb3/y8vL/+Hh4f/j4+P/4ODg/9fX1//Y2Nj/zs7O/9HR0f/h4eH/4uLi/9bW
+ 1v/R0dH/3Nzc//Dw8P/u7u7/4+Pj/+jo6P/z8/P/5OTk/8/Pz//R0dH/5ubm///////8/Pz/9vb2//v7
+ +//9/f3/8fHx/+jo6P/p6en/7Ozs//f39//+/v7/7u7u/+np6f/4+Pj//Pz8//Pz8//19fX/9fX1//X1
+ 9f/19fX/9fX1//X19f/19fX/9fX1//T09P/39/f/+Pj4//j4+P/4+Pj/+Pj4//j4+P/4+Pj/+Pj4//f3
+ 9//6+vr///////7+/v/+/v7//v7+//39/f/8/Pz//Pz8//39/f/+/v7//v7+/////////////f39//j4
+ +P/4+Pj//f39///////8/Pz/6Ojo/+vr6//q6ur/6+vr/+/v7//29vb/+Pj4//f39//7+/v/9fX1/97e
+ 3v/Hx8f/v7+//8bGxv/f39//9vb2/+np6f/4+Pj/o6Oj/5qamhk0NDQAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAigAAAC4AAAA4AAAAAKenp6i+vr7/rKys/9DQ
+ 0P/k5OT/5OTk/+3t7f/a2tr/w8PD/87Ozv/MzMz/vb29/7+/v//FxcX/29vb/8zMzP+3t7f/vLy8/9fX
+ 1//m5ub/4ODg/93d3f/X19f/0tLS/8XFxf/Kysr/2dnZ/9bW1v/Ozs7/y8vL/9fX1//p6en/6Ojo/+Dg
+ 4P/m5ub/6urq/9jY2P/ExMT/yMjI/+Li4v/z8/P/8vLy//Pz8//39/f/+vr6//j4+P/t7e3/6Ojo/+rq
+ 6v/z8/P/7e3t/+fn5//y8vL/9/f3//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9PT0//X1
+ 9f/4+Pj/9vb2//b29v/29vb/9fX1//X19f/29vb/8/Pz//j4+P////////////z8/P/9/f3/////////
+ ///9/f3//Pz8//z8/P/8/Pz/+vr6//r6+v/8/Pz/+vr6/+np6f/MzMz/rq6u/8rKyv/4+Pj/8/Pz//n5
+ +f/9/f3/9/f3//Ly8v/p6en/0NDQ/7+/v//FxcX/xMTE/8bGxv/b29v/5eXl/+jo6P//////////////
+ //+oqKj/JiYmwAICAn0AAABdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ ACcAAACYAAAAjQAAAK4AAABWVlZWhaqqqv+VlZX/v7+//6enp/+RkZH/ra2t/7Kysv+3t7f/y8vL/8fH
+ x//b29v/29vb/8jIyP+8vLz/x8fH/97e3v/ExMT/uLi4/8bGxv/h4eH/5eXl/97e3v/g4OD/39/f/9bW
+ 1v/Kysr/ysrK/9LS0v/R0dH/09PT/9DQ0P/U1NT/6Ojo/+rq6v/i4uL/4+Pj/+Dg4P/IyMj/vb29/8XF
+ xf/a2tr/7Ozs/+np6f/q6ur/7+/v//j4+P/5+fn/7+/v/+jo6P/t7e3/4uLi/+Hh4f/39/f/9PT0//T0
+ 9P/09PT/9PT0//Ly8v/y8vL/8fHx//Pz8//x8fH/8PDw//Dw8P/w8PD/8PDw//Hx8f/v7+//8fHx//n5
+ +f//////8vLy/+Tk5P/s7Oz/8fHx/+3t7f/t7e3/8/Pz//r6+v/4+Pj/9PT0//X19f/39/f/5OTk/8fH
+ x/+7u7v/tLS0/729vf+9vb3/2dnZ//Ly8v/d3d3/0NDQ/7Kysv+oqKj/o6Oj/7Gxsf+7u7v/uLi4/9ra
+ 2v/s7Oz//////////////////////+Li4vvExMT/e3t77gkJCZ0AAABoAAAAdAAAAFoAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIQAAABQAAAACAAAAMAAAADkAAAA2pKSkJ8HB
+ wZeCgoL2b29v/1ZWVv9WVlb/dnZ2/4mJif+Li4v/paWl/7W1tf/BwcH/2NjY/9TU1P/X19f/1NTU/+rq
+ 6v/u7u7/x8fH/7u7u//R0dH/6Ojo/+Pj4//g4OD/5eXl/+Xl5f/c3Nz/zc3N/8rKyv/T09P/09PT/83N
+ zf/Kysr/1dXV/+Tk5P/f39//29vb/+Tk5P/e3t7/zMzM/8HBwf/Gxsb/39/f/+rq6v/g4OD/5+fn/+3t
+ 7f/u7u7/8fHx/+7u7v/p6en/6urq//Pz8//z8/P/6Ojo/+rq6v/t7e3/7e3t/+rq6v/s7Oz/6+vr/+3t
+ 7f/t7e3/7u7u/+3t7f/u7u7/9fX1//j4+P/n5+f/0tLS/7+/v//ExMT/2dnZ/+bm5v/u7u7/6+vr/+bm
+ 5v/l5eX/8fHx//f39//p6en/2NjY/87Ozv/MzMz/xsbG/7+/v//Hx8f/29vb/9/f3//Nzc3/srKy/62t
+ rf+np6f/np6e/7a2tv+Tk5PteHh4xmtra2dwcHA/o6OjIujo6Bi/v78yh4eHUUVFRWgVFRVpAAAAZQAA
+ AEoAAAAJFhYWAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAbAAAAEgAAAAAAAAAAAAAAAAAAABCurq4Ay8vLAMHBwQO8vLwwubm5bZycnNCFhYX/dHR0/2Rk
+ ZP9sbGz/ZmZm/3Z2dv95eXn/gYGB/6Wlpf+mpqb/p6en/8fHx//y8vL/4+Pj/8bGxv/T09P/4+Pj//Dw
+ 8P/r6+v/6urq/+/v7//z8/P/6urq/97e3v/h4eH/+Pj4/+zs7P/T09P/ysrK/+Li4v/w8PD/6enp/+Xl
+ 5f/s7Oz/6enp/9PT0//MzMz/5OTk//Pz8//t7e3/9vb2//7+/v/+/v7//f39//n5+f/y8vL/2NjY/+Dg
+ 4P//////9vb2/+Tk5P/o6Oj/7e3t/+bm5v/j4+P/5ubm/+/v7//6+vr/9vb2/+Pj4//Pz8//xcXF/7q6
+ uv/AwMD/09PT/+7u7v/29vb/8PDw//Pz8//09PT/8/Pz/+3t7f/Z2dn/ysrK/8rKyv/BwcH/v7+//9DQ
+ 0P/f39//z8/P/8HBwf+xsbH/uLi4/5ycnP9ubm7rcnJy3GRkZK9QUFB5LCwsWQAAABwAAAAAenp6AH9/
+ fwC0tLQACQkJAAAAAAoAAAAlAAAAPQAAADMAAAAVAAAAAAAAAAAAAAAAAAAADgAAAAkAAAAQAAAABAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAQAAA
+ AEoAAABQPDw8SV1dXRunp6chqamptpKSkv+IiIj/bm5u/z4+Pv9GRkb/WVlZ/2xsbP9tbW3/TExM/2Fh
+ Yf9lZWX/WVlZ/2tra/+ampr/ubm5/6CgoP+jo6P/vr6+/9vb2//W1tb/0tLS/9PT0//S0tL/1tbW/9fX
+ 1//BwcH/x8fH/83Nzf+9vb3/wcHB/8XFxf/Gxsb/0dHR/9PT0//MzMz/1NTU/8fHx//IyMj/0tLS/87O
+ zv/ExMT/u7u7/7y8vP+7u7v/wcHB/8rKyv+1tbX/s7Oz/9DQ0P/Jycn/vb29/9/f3//09PT/7+/v/+3t
+ 7f/f39//0tLS/8/Pz//MzMz/0NDQ/9jY2P/n5+f/////////////////8vLy/+vr6//o6Oj/29vb/9TU
+ 1P+ysrL/qKio/5+fn/+np6f/tbW1/62trf+hoaH/mZmZ/52dnf+ysrL6goKC2mBgYM49PT2jEBAQUAAA
+ ABgAAAAAAAAABgAAAAAAAAAAAAAACQAAACMAAABAAAAARgAAAF8AAACFAAAAfQAAAEsAAAA0AAAAAAAA
+ AAAAAAAQAAAAFwAAABkAAAAeAAAAEwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAEAAAAAUAAAAWAAAALAAAAEJ6enpJIiIiJgYG
+ BjRpaWlfwMDAj6mpqbWHh4d+iYmJlJeXl9uHh4f/f39//1tbW/9BQUH/OTk5/1FRUf+Dg4P/k5OT/4mJ
+ if9tbW3/gICA/4SEhP+Dg4P/jo6O/66urv+xsbH/tra2/7m5uf/CwsL/wMDA/7e3t/+rq6v/n5+f/6am
+ pv+vr6//tbW1/6ioqP+fn5//tbW1/87Ozv/Kysr/1NTU/9nZ2f/d3d3/3d3d/9jY2P/a2tr/39/f/9vb
+ 2//T09P/3Nzc/+Xl5f/s7Oz/4+Pj/9fX1//W1tb/0dHR/9PT0//Pz8//y8vL/9TU1P/h4eH/4uLi/8rK
+ yv+urq7/np6e/3h4eP9RUVH/WFhY/3d3d/9mZmb/W1tb/2hoaP9bW1vycXFx7mtra+lWVlbmZ2dn2ldX
+ V6IGBgZhVlZWQERERCsAAAARAAAACQAAAAAcHBwAAAAAAAAAAA4AAAAoAAAAOAAAADsAAABHAAAAQQAA
+ AFIAAABqAAAAZwAAAFwAAAA0AAAAAAAAAAAAAAAOAAAAFgAAABEAAAAPAAAACQAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAICAgAAnJycACgoKAGpqagC9vb0ApaWlAISEhACGhoYAk5OTANzc
+ 3ArDw8Mos7OzeLGxsaScnJycjo6Ou5eXl+COjo79iYmJ/5SUlP+srKz/kZGR/3BwcP+IiIj/np6e/6io
+ qP+qqqr/tLS0/8PDw//e3t7/4uLi//Dw8P/5+fn////////////6+vr/8fHx/9vb2//W1tb/4uLi/+vr
+ 6//h4eH/0NDQ/8LCwv+/v7//ubm5/7Kysv+srKz/rq6u/8vLy/+6urr/sbGx/5iYmP+Tk5P/nZ2d/4mJ
+ if9+fn7/lJSU/5qamv9mZmb/U1NT/1JSUv9MTEz/OTk5/z8/P/BKSkrSSkpKmlRUVHukpKS+hoaGppiY
+ mIFCQkJiYmJiPygoKB0EBAQBAAAAAAAAAAAMDAwACQkJAAAAAAAAAAAHAAAAEAAAAAMAAAAAAAAADAAA
+ AEUAAABhAAAAVwAAADoAAAAxAAAANwAAAFEAAABeAAAAVAAAAD8AAAANAAAAAAAAAAYAAAAWAAAAEAAA
+ AAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgoKCACkp
+ KQALCwsAampqALy8vACkpKQAg4ODAIWFhQCRkZEA2NjYAL+/vwCurq4ArKysAJmZmQCLi4sAlJSUAMnJ
+ yQDZ2dkQ3t7eUVBQUDh5eXlRqampaD4+PmVdXV2JRUVFpi8vL64qKiqmIyMjch4eHpYiIiK2KioqyCkp
+ KeEuLi7mOjo68UdHR/9kZGT/bm5u/2dnZ/9ra2v/bGxs/zo6Ov8qKir/NDQ0/0lJSfpcXFzkZWVl329v
+ b8JoaGjYZGRk6F5eXulkZGThdnZ2ymtra7htbW2hbm5uqHNzc6Z5eXmoYWFhw25ubqmTk5N6r6+vYLe3
+ tzLExMQK6+vrAExMTABPT08AW1tbAK2trQAxMTEAFhYWAE1NTQBsbGwAAAAAAAAAABAAAAAcAAAALAAA
+ ACoAAAA+AAAAOQAAAB4AAAAfAAAANAAAAFIAAABRAAAATAAAADQAAAA2AAAATQAAAEUAAABIAAAAUgAA
+ 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
+ SwBRUVEAZGRkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAACCgoIAKSkpAAsLCwBqamoAvLy8AKSkpACDg4MAhYWFAJCQkADX19cAvb29AKys
+ rACqqqoAl5eXAIqKigCSkpIAxcXFANXV1QDe3t4AXV1dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8fHxAOLi4gDY2NgA3t7eAPT0
+ 9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHR0dAD+/v4A8vLyAO/v
+ 7wD29vYAZWVlAJCQkACrq6sAsrKyAL6+vgDm5uYAS0tLAFFRUQBkZGQAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIKCggApKSkACwsLAGpq
+ agC8vLwApKSkAIODgwCFhYUAkJCQANfX1wC9vb0ArKysAKqqqgCXl5cAioqKAJKSkgDFxcUA1dXVAN7e
+ 3gBdXV0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAD4+PgA7u7uAOjo6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD6+voA9fX1APr6+gBnZ2cAkZGRAKysrACysrIAvr6+AObm
+ 5gBLS0sAUVFRAGRkZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAgoKCACkpKQALCwsAampqALy8vACkpKQAg4ODAIWFhQCQkJAA19fXAL29
+ vQCsrKwAqqqqAJeXlwCKiooAkpKSAMXFxQDV1dUA3t7eAF1dXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
+ /wD///8A////AHBwcACWlpYAr6+vALOzswC+vr4A5ubmAEtLSwBRUVEAZGRkAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACCgoIAKSkpAAsL
+ CwBqamoAvLy8AKSkpACDg4MAhYWFAJCQkADX19cAvb29AKysrACqqqoAl5eXAIqKigCSkpIAxcXFANXV
+ 1QDe3t4AXV1dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKKiogC4uLgAubm5AMDA
+ wADm5uYAS0tLAFFRUQBkZGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIKCggApKSkACwsLAGpqagC8vLwApKSkAIODgwCFhYUAkJCQANfX
+ 1wC9vb0ArKysAKqqqgCXl5cAioqKAJKSkgDFxcUA1dXVAN7e3gBdXV0AAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8MAxMTEAOfn5wBLS0sAUVFRAGRkZAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgoKCACkp
+ KQALCwsAampqALy8vACkpKQAg4ODAIWFhQCQkJAA19fXAL29vQCsrKwAqqqqAJeXlwCKiooAkpKSAMXF
+ xQDV1dUA3t7eAF1dXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAgAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AADKysoA6enpAEtLSwBRUVEAZGRkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP//////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////AAAAAAAA
+ DgHzP/////////AAAAAAAAB8AAH//////8AAAAAAAAAAAAAAH////8AAAAAAAAAAAAAAAAAf/n8AA+AA
+ AAAAAAAAAAAAA/5/4AAAAAAAAAAAAAAAAAPyfgAAAAAAAAAAAAAAAAAA8gAAAAAAAAAAAAAAAAAAAJYA
+ AAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAA
+ AAMAAAAAAAAAAAAAAAAAAAADsAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAAAAAH+CAAAAAAAAAAAA
+ AAAAAAD/xgAAAAAAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAAAP/7AAAAAAAAAAAAAAAAAAD/+QAAAAAA
+ AAAAAAAAAAAA//0AAAAAAAAAAAAAAAAAAP//AAAAAAAAAAAAAAAAAAD//wAAAAAAAAAAAAAAAAAA//8A
+ AAAAAAAAAAAAAAAAAP//AAAAAAAAAAAAAAAAAAD//wAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAA
+ AP//gAAAAAAAAAAAAAAAAAD//4AAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAAAP//gAAAAAAAAAAA
+ AAAAAAH//4AAAAAAAAAAAAAAAAAB//+AAAAAAAAAAAAAAAAAAf//gAAAAAAAAAAAAAAAAAH//4AAAAAA
+ AAAAAAAAAAAB//+AAAAAAAAAAAAAAAAAAb//AAAAAAAAAAAAAAAAAAGf/wAAAAAAAAAAAAAAAAABn/0A
+ AAAAAAAAAAAAAAAAAc/9AAAAAAAAAAAAAAAAAAHP/wAAAAAAAAAAAAAAAAABD/8AAAAAAAAAAAAAAAAA
+ AR//AAAAAAAAAAAAAAAAAAF//wAAAAAAAAAAAAAAAAABf/wAAAAAAAAAAAAAAAAAAX/8AAAAAAAAAAAA
+ AAAAAAF//gAAAAAAAAAAAAAAAAABf/8AAAAAAAAAAAAAAAAAAX//AAAAAAAAAAAAAAAAAAF//AAAAAAA
+ AAAAAAAAAAABf/wAAAAAAAAAAAAAAAAAAP/+AAAAAAAAAAAAAAAAAAD//wAAAAAAAAAAAAAAAAAA//8A
+ AAAAAAAAAAAAAAAAAKf+AAAAAAAAAAAAAAAAAACH/gAAAAAAAAAAAAAAAAAAw/4AAAAAAAAAAAAAAAAA
+ AOf+AAAAAAAAAAAAAAAAAAD//AAAAAAAAAAAAAAAAAAA//wAAAAAAAAAAAAAAAAAAf/+AAAAAAAAAAAA
+ AAAAAAD//gAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAAAAAAAP/+AAAAAAAAAAAAAAAAAAD/+gAAAAAA
+ AAAAAAAAAAAA//oAAAAAAAAAAAAAAAAAAP/6AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAA//4A
+ AAAAAAAAAAAAAAAAAP/+AAAAAAAAAAAAAAAAAAD//AAAAAAAAAAAAAAAAAAA//wAAAAAAAAAAAAAAAAA
+ AP/4AAAAAAAAAAAAAAAAAAD/8gAAAAAAAAAAAAAAAAAA//IAAAAAAAAAAAAAAAAAAP/yAAAAAAAAAAAA
+ AAAAAAD/8gAAAAAAAAAAAAAAAAAAP/IAAAAAAAAAAAAAAAAAAB/yAAAAAAAAAAAAAAAAAACP8gAAAAAA
+ AAAAAAAAAAABR/IAAAAAAAAAAAAAAAAAARPwAAAAAAAAAAAAAAAAAAEZ8AAAAAAAAAAAAAAAAAABPPAA
+ AAAAAAAAAAAAAAAAAT7wAAAAAAAAAAAAAAAAAAD/8IAAAAAAAAAAAAAAAAAAP/AAAAAAAAAAAAAAAAAA
+ AD/wAAAAAAAAAAAAAAAAAAPf87AAAAAAAAAAAAAAAD4OH/8AAAAAAAAAAAAAAAWAMD//gAAAAAAAAAAA
+ AAA4AMH/////AAAAAAAAAAB8QAIf//////8AAAAAAAP/AAAJ/////////oAAP///4AAYf///////////
+ ///8//DwR///////////////////4f///////////////////+f/////////////////////////////
+ /////////////////////////8/////////////////////H////////////////////9///////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////n////////////////////5////////////////////////////////////////
+ ////////////////////////////////////////////////////////KAAAACAAAABAAAAAAQAgAAAA
+ AAAAEAAAEgsAABILAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAsAAAAGAAAAEAAAABcAAAAfAAAAOAAA
+ AEAAAABJAAAARgAAAEUAAABBAAAAPgAAAEsAAABQAAAATQAAAEoAAABPAAAAYAAAAGQAAAByAAAAagAA
+ AFIAAABaAAAASwAAAEUAAAAOAAAAGQAAAFIAAABHAAAAVwAAAHAAAACDAAAAkQAAAKoAAAC9AAAAxQAA
+ AMoAAADbAAAA5gICAuAEBATaAwMD0AICAscAAADZAAAA4AAAAOgQEBDoDw8P6A0NDfEVFRX7FxcX+xQU
+ FPchISH3JSUl/z09Pe0uLi7BAAAAaAAAAAsAAAAQAAAAOSwsLL5MTEz/bGxs/2FhYftXV1f/Z2dn/4OD
+ g/+Kior/l5eX/6Kiov+enp7/paWl/6ampv+mpqb/tbW1/7S0tP+pqan/qKio/7S0tP+vr6//rq6u/8LC
+ wv/Dw8P/xMTE/9TU1P/Y2Nj/w8PD/83Nzfw5OTkLAAAAAAAAAAAAAAAAra2t78/Pz//MzMz/////////
+ ///09PT///////////////////////39/f/5+fn/+Pj4//j4+P//////////////////////+Pj4//T0
+ 9P/7+/v/+Pj4///////+/v7/8fHx/62trf/Ozs7/rKys4mlpaQAmJiYA////AP///wCOjo7a7e3t/5KS
+ kv+ioqL/8PDw///////x8fH/9vb2//Pz8//09PT/9vb2//X19f/39/f/9/f3//f39//19fX/+/v7//v7
+ +//+/v7//f39//b29v/19fX/8fHx//////+9vb3/tbW1//X19f+Tk5PM////AP///wD///8A////AGZm
+ Zr3t7e3/7e3t/6ysrP+EhIT/1tbW///////8/Pz/9vb2//T09P/z8/P/9vb2//T09P/z8/P/9vb2//j4
+ +P/y8vL//Pz8//b29v/9/f3/+Pj4//X19f//////ysrK/7W1tf//////3d3d/56ensn///8A////AP//
+ /wD///8AY2NjmeLi4v/e3t7//////9LS0v99fX3/wMDA///////9/f3/9PT0//X19f/09PT/+Pj4//Pz
+ 8//x8fH/9PT0//j4+P/19fX//f39//X19f/9/f3//Pz8//Ly8v+qqqr/7+/v///////m5ub/oaGhwP//
+ /wD///8A////AP///wCLi4uT5OTk/+Tk5P/r6+v//////97e3v93d3f/np6e////////////+fn5//X1
+ 9f/v7+//+/v7///////////////////////4+Pj/+vr6////////////oqKi/8/Pz///////+Pj4////
+ //+SkpKh////AP///wD///8A////AMDAwMzS0tL/5eXl//Dw8P/v7+///////+7u7v+IiIj/p6en////
+ ///y8vL//v7+///////z8/P/2NjY/9ra2v/o6Oj/7Ozs//X19f//////8fHx/4qKiv/Pz8////////b2
+ 9v/+/v7//////2dnZ5H///8A////AP///wD///8AjIyMyd3d3f/e3t7/6Ojo//n5+f/x8fH/9PT0////
+ //+rq6v/r6+v//Ly8v/Kysr/fHx8/0tLS/9fX1//UFBQ/zg4OP90dHT/yMjI//39/f9oaGj/iIiI////
+ ////////8fHx//n5+f//////cHBwjP///wD///8A////AP///wBra2vH7e3t/+Dg4P/n5+f/6+vr//f3
+ 9//z8/P/9/f3//////+7u7v/YGBg/09PT/93d3f/oaGh/7+/v/+wsLD/jIyM/1FRUf9PT0//XFxc/7Gx
+ sf//////6+vr//Dw8P/9/f3/8fHx//////9ycnKN////AP///wD///8A////AHFxccLy8vL/39/f/+Tk
+ 5P/o6Oj/6urq////////////tbW1/21tbf+Li4v/39/f////////////7+/v//Dw8P/y8vL/z8/P/39/
+ f/8ZGRn/tLS0///////t7e3/7Ozs//X19f/09PT//////2ZmZpv///8A////AP///wD///8AdnZ2zff3
+ 9//Z2dn/6Ojo//39/f//////4uLi/42Njf+JiYn/xcXF////////////+vr6//39/f////////////7+
+ /v/39/f/9/f3/6ysrP8sLCz/jIyM///////p6en/8vLy//b29v//////TExMmf///wD///8A////AP//
+ /wBycnLm/////+Xl5f/s7Oz//////9HR0f9nZ2f/m5ub//j4+P//////+fn5////////////////////
+ /////////////////////////Pz8/6qqqv8wMDD/dnZ2/+/v7//o6Oj/8/Pz//////9eXl6h////AP//
+ /wD///8A////AIeHh+r8/Pz/9vb2/9jY2P99fX3/cXFx/8zMzP//////8fHx//j4+P//////////////
+ /////////////////////////////////////////////8DAwP8jIyP/cHBw//r6+v/g4OD//////3x8
+ fMb///8A////AP///wD///8AhYWF+fr6+v/R0dH/YmJi/3h4eP/p6en///////f39////////Pz8//z8
+ /P/9/f3//v7+/////////////////////////////////////////////////+fn5/9KSkr/YmJi/+Dg
+ 4P/r6+v/k5OT2P///wD///8A////AP///wB1dXX/ycnJ/2BgYP+QkJD///////7+/v/19fX/+/v7//v7
+ +//+/v7//Pz8//v7+//8/Pz//f39//////////////////////////////////////////////////X1
+ 9f9MTEz/Tk5O/8XFxf+srKzU////AP///wD///8A////AF1dXf51dXX/lJSU///////09PT/6enp/+zs
+ 7P/39/f/+vr6//r6+v/9/f3//f39//z8/P/7+/v//Pz8//7+/v//////////////////////////////
+ //////////////7+/v9paWn/b29v/5eXl+H///8A////AP///wD///8AdHR0/6Kiov/w8PD/5ubm/+7u
+ 7v/u7u7/7Ozs/+zs7P/4+Pj/+fn5//j4+P/9/f3//v7+//39/f/8/Pz//Pz8//39/f//////////////
+ /////////////v////////////////39/f+rq6v/WFhYzP///wD///8A////AP///wC7u7v/9PT0/+Dg
+ 4P/X19f/3t7e/+Tk5P/l5eX/7e3t/+3t7f/09PT/+/v7//b29v/5+fn//v7+//39/f/9/f3//Pz8////
+ ///////////////////////+//////////////////////////+0tLTG////AP///wD///8A////AIqK
+ iqj19fX/s7Oz/7Ozs//MzMz/4eHh/+Tk5P/u7u7/7+/v/+rq6v/r6+v/9fX1//z8/P/8/Pz/////////
+ ///////////////////////////////////w8PD/39/f/8bGxtvZ2dnGzMzM2X5+fqj///8A////AP//
+ /wD///8ADQ0NAEVFRUBmZmaTj4+Pq4yMjMqZmZnttbW1+bW1tf/Dw8P/zMzM/8bGxv+8vLz/xsbG/83N
+ zf/Pz8//tLS0/7W1tf+qqqrusrKy4Kenp9GCgoLBbGxsnkNDQ34aGhpaBwcHOSEhISAAAAAJAAAAAP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD/////////////////////////////
+ v//4AAAAAAAAAAAAAAHAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AA
+ AAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPgAAAH/////////////////////w==
+
+
+
\ No newline at end of file
diff --git a/GUI_EDMI/frmEmailAccount.vb b/GUI_EDMI/frmEmailAccount.vb
new file mode 100644
index 00000000..9ab45ab9
--- /dev/null
+++ b/GUI_EDMI/frmEmailAccount.vb
@@ -0,0 +1,194 @@
+Imports DigitalData.Modules.Messaging
+Imports DigitalData.Modules.Logging
+Imports DigitalData.Modules.Database
+Imports FirebirdSql.Data.FirebirdClient
+Imports System.IO
+
+Public Class frmEmailAccount
+ Private _bindingSource As BindingSource
+ Private _tableName As String = "TBEDM_EMAIL_ACCOUNT"
+ Private _tableAdapter As FbDataAdapter
+ Private _dataSet As New DataSet()
+ Private _Logger As Logger
+ Private _MyLogger As LogConfig
+ Private _firebird As Firebird
+ Private _Email As Email
+ Private oTable As DataTable
+ Private Sub Button5_Click(sender As Object, e As EventArgs)
+
+ End Sub
+
+ Private Sub btnsendtestmail_Click(sender As Object, e As EventArgs)
+
+ End Sub
+
+ Private Sub ToolStripButton15_Click(sender As Object, e As EventArgs)
+
+ End Sub
+
+ Private Sub ToolStripButton21_Click(sender As Object, e As EventArgs)
+
+ End Sub
+
+ Private Sub ToolStripButton22_Click(sender As Object, e As EventArgs)
+
+ End Sub
+
+ Private Sub frmEmailAccount_Load(sender As Object, e As EventArgs) Handles Me.Load
+ _MyLogger = New LogConfig(LogConfig.PathType.CustomPath, Path.Combine(My.Application.Info.DirectoryPath, "Log"))
+ _Logger = _MyLogger.GetLogger()
+ _firebird = New Firebird(_MyLogger, My.Settings.FB_DATASOURCE, My.Settings.FB_DATABASE, My.Settings.FB_USER, My.Settings.FB_PW)
+ _Email = New Email(_MyLogger)
+
+
+ Dim oConnection As FbConnection
+ oConnection = New FbConnection(GetConnectionString())
+ oConnection.Open()
+
+ _dataSet.Tables.Add(New DataTable(_tableName) With {.CaseSensitive = True})
+
+ BindingSourceForm.DataSource = _dataSet
+ BindingSourceForm.DataMember = _tableName
+
+ _tableAdapter = New FbDataAdapter() With {
+ .SelectCommand = GetSelectCommand(oConnection),
+ .InsertCommand = GetInsertCommand(oConnection),
+ .UpdateCommand = GetUpdateCommand(oConnection),
+ .DeleteCommand = New FbCommand(),
+ .ContinueUpdateOnError = True
+ }
+
+ _tableAdapter.Fill(_dataSet, _tableName)
+ oTable = _dataSet.Tables.Item(_tableName)
+ GridControl1.DataSource = BindingSourceForm
+ BindingNavigator1.BindingSource = BindingSourceForm
+ GridView1.BestFitColumns(True)
+
+ txtGUID.DataBindings.Add(New Binding("Text", BindingSourceForm, "GUID"))
+ txtPROFILE_NAME.DataBindings.Add(New Binding("Text", BindingSourceForm, "PROFILE_NAME"))
+ txtEMAIL_FROM.DataBindings.Add(New Binding("Text", BindingSourceForm, "EMAIL_FROM"))
+ txtSERVER_IN.DataBindings.Add(New Binding("Text", BindingSourceForm, "SERVER_IN"))
+ txtSERVER_OUT.DataBindings.Add(New Binding("Text", BindingSourceForm, "SERVER_OUT"))
+ txtEMAIL_USER.DataBindings.Add(New Binding("Text", BindingSourceForm, "EMAIL_USER"))
+ txtEMAIL_PW.DataBindings.Add(New Binding("Text", BindingSourceForm, "EMAIL_PW"))
+ txtPORT_IN.DataBindings.Add(New Binding("Text", BindingSourceForm, "PORT_IN"))
+ txtPORT_OUT.DataBindings.Add(New Binding("Text", BindingSourceForm, "PORT_OUT"))
+ cmbAUTH_TYPE.DataBindings.Add(New Binding("Text", BindingSourceForm, "AUTH_TYPE"))
+ cmbPOP_IMAP.DataBindings.Add(New Binding("Text", BindingSourceForm, "POP_IMAP"))
+ ADDED_WHOTextBox.DataBindings.Add(New Binding("Text", BindingSourceForm, "CREATEDWHO"))
+ ADDED_WHENTextBox.DataBindings.Add(New Binding("Text", BindingSourceForm, "CREATEDWHEN"))
+ CHANGED_WHOTextBox.DataBindings.Add(New Binding("Text", BindingSourceForm, "CHANGEDWHO"))
+ CHANGED_WHENTextBox.DataBindings.Add(New Binding("Text", BindingSourceForm, "CHANGEDWHEN"))
+
+ oConnection.Close()
+ End Sub
+ Private Function GetSelectCommand(Connection As FbConnection) As FbCommand
+ Dim oCommand As New FbCommand() With {
+ .Connection = Connection,
+ .CommandText = $"SELECT * FROM TBEDM_EMAIL_ACCOUNT"
+ }
+
+ Return oCommand
+ End Function
+
+ Private Function GetInsertCommand(Connection As FbConnection) As FbCommand
+ Dim oSQL = "INSERT INTO TBEDM_EMAIL_ACCOUNT (PROFILE_NAME,POP_IMAP,EMAIL_FROM,FROM_NAME,SERVER_IN,SERVER_OUT,EMAIL_USER,EMAIL_PW,AUTH_TYPE,PORT_IN,PORT_OUT,ACTIVE,CREATEDWHO) VALUES (@PROFILE_NAME,@POP_IMAP,@EMAIL_FROM,@FROM_NAME,@SERVER_IN,@SERVER_OUT,@EMAIL_USER,@EMAIL_PW,@AUTH_TYPE,@PORT_IN,@PORT_OUT,@ACTIVE,@CREATEDWHO)"
+
+ Dim oCommand As New FbCommand With {
+ .Connection = Connection,
+ .CommandType = CommandType.Text,
+ .CommandText = oSQL
+ }
+
+ With oCommand.Parameters
+ .Add(New FbParameter("@PROFILE_NAME", FbDbType.VarChar, 50, "PROFILE_NAME"))
+ .Add(New FbParameter("@POP_IMAP", FbDbType.VarChar, 20, "POP_IMAP"))
+ .Add(New FbParameter("@EMAIL_FROM", FbDbType.VarChar, 100, "EMAIL_FROM"))
+ .Add(New FbParameter("@FROM_NAME", FbDbType.VarChar, 100, "FROM_NAME"))
+ .Add(New FbParameter("@SERVER_IN", FbDbType.VarChar, 100, "SERVER_IN"))
+ .Add(New FbParameter("@SERVER_OUT", FbDbType.VarChar, 100, "SERVER_OUT"))
+ .Add(New FbParameter("@EMAIL_USER", FbDbType.VarChar, 100, "EMAIL_USER"))
+ .Add(New FbParameter("@EMAIL_PW", FbDbType.VarChar, 100, "EMAIL_PW"))
+ .Add(New FbParameter("@AUTH_TYPE", FbDbType.VarChar, 100, "AUTH_TYPE"))
+ .Add(New FbParameter("@PORT_IN", FbDbType.Integer, 10, "PORT_IN"))
+ .Add(New FbParameter("@PORT_OUT", FbDbType.Integer, 10, "PORT_OUT"))
+ '.Add(New FbParameter("@ACTIVE", FbDbType.Boolean, 10, "ACTIVE"))
+ .Add(New FbParameter("@CREATEDWHO", FbDbType.VarChar, 50, "CREATEDWHO"))
+
+ End With
+ End Function
+ Private Function GetUpdateCommand(Connection As FbConnection) As FbCommand
+ Dim oSQL = "UPDATE TBEDM_EMAIL_ACCOUNT SET PROFILE_NAME = @PROFILE_NAME, POP_IMAP = @POP_IMAP,EMAIL_FROM = @EMAIL_FROM,FROM_NAME = @FROM_NAME,SERVER_IN = @SERVER_IN,SERVER_OUT = @SERVER_OUT,EMAIL_USER = @EMAIL_USER,EMAIL_PW = @EMAIL_PW,AUTH_TYPE = @AUTH_TYPE,PORT_IN = @PORT_IN,PORT_OUT = @PORT_OUT,ACTIVE = @ACTIVE,CHANGEDWHO = @CHANGEDWHO WHERE GUID = @GUID"
+
+ Dim oCommand As New FbCommand With {
+ .Connection = Connection,
+ .CommandType = CommandType.Text,
+ .CommandText = oSQL
+ }
+
+ With oCommand.Parameters
+ .Add(New FbParameter("@GUID", FbDbType.Integer, 10, "GUID"))
+ .Add(New FbParameter("@PROFILE_NAME", FbDbType.VarChar, 50, "PROFILE_NAME"))
+ .Add(New FbParameter("@POP_IMAP", FbDbType.VarChar, 20, "POP_IMAP"))
+ .Add(New FbParameter("@EMAIL_FROM", FbDbType.VarChar, 100, "EMAIL_FROM"))
+ .Add(New FbParameter("@FROM_NAME", FbDbType.VarChar, 100, "FROM_NAME"))
+ .Add(New FbParameter("@SERVER_IN", FbDbType.VarChar, 100, "SERVER_IN"))
+ .Add(New FbParameter("@SERVER_OUT", FbDbType.VarChar, 100, "SERVER_OUT"))
+ .Add(New FbParameter("@EMAIL_USER", FbDbType.VarChar, 100, "EMAIL_USER"))
+ .Add(New FbParameter("@EMAIL_PW", FbDbType.VarChar, 100, "EMAIL_PW"))
+ .Add(New FbParameter("@AUTH_TYPE", FbDbType.VarChar, 100, "AUTH_TYPE"))
+ .Add(New FbParameter("@PORT_IN", FbDbType.Integer, 10, "PORT_IN"))
+ .Add(New FbParameter("@PORT_OUT", FbDbType.Integer, 10, "PORT_OUT"))
+ ' .Add(New FbParameter("@ACTIVE", FbDbType.Boolean, "ACTIVE"))
+ .Add(New FbParameter("@CHANGEDWHO", FbDbType.VarChar, 50, "CHANGEDWHO"))
+
+ End With
+ End Function
+ Private Function GetConnectionString()
+ Dim oConnectionString = New FbConnectionStringBuilder With {
+ .DataSource = My.Settings.FB_DATASOURCE,
+ .Database = My.Settings.FB_DATABASE,
+ .UserID = My.Settings.FB_USER,
+ .Password = My.Settings.FB_PW,
+ .Dialect = 3
+ }.ToString()
+
+ Return oConnectionString
+ End Function
+
+ Private Sub btnsendtestmail_Click_1(sender As Object, e As EventArgs) Handles btnsendtestmail.Click
+ If txtTestmail.Text <> String.Empty Then
+ My.Settings.Save()
+ Dim wrapper As New clsEncryption("!35452didalog=")
+
+ Dim PWPlain = wrapper.DecryptData(txtEMAIL_PW.Text)
+
+ If _Email.NewEmail(txtTestmail.Text, "Testmail DD Windream-ResultHandler", "This is the body (text will be replaced within profile)", txtEMAIL_FROM.Text, txtSERVER_OUT.Text, txtPORT_OUT.Text, txtEMAIL_USER.Text, PWPlain, cmbAUTH_TYPE.Text) = True Then
+ MsgBox("Email was send successfully.", MsgBoxStyle.Information)
+ Else
+ MsgBox("Could not send the testmail. Please check the log.", MsgBoxStyle.Exclamation)
+ End If
+ End If
+ End Sub
+
+ Private Sub tsbtnSaveEmailAccount_Click(sender As Object, e As EventArgs) Handles tsbtnSaveEmailAccount.Click
+ Me.BindingSourceForm.EndEdit()
+ oTable.AcceptChanges()
+ If Not IsNothing(oTable.GetChanges) Then
+ _tableAdapter.Update(oTable)
+ MsgBox("DONE!")
+ End If
+
+ End Sub
+
+ Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
+ Dim wrapper As New clsEncryption("!35452didalog=")
+ Dim pwencrypted = wrapper.EncryptData(txtnewpasswort.Text)
+ txtEMAIL_PW.Text = pwencrypted
+ Dim upd = $"UPDATE TBEDM_EMAIL_ACCOUNT SET EMAIL_PW = '{pwencrypted}', CHANGEDWHO = '{Environment.UserName}' WHERE GUID = {txtGUID.Text}"
+ If _firebird.ExecuteNonQuery(upd) = True Then
+ MsgBox("Passwort has been encrypted!")
+ End If
+
+ End Sub
+End Class
\ No newline at end of file
diff --git a/GUI_EDMI/Form1.Designer.vb b/GUI_EDMI/frmMain.Designer.vb
similarity index 72%
rename from GUI_EDMI/Form1.Designer.vb
rename to GUI_EDMI/frmMain.Designer.vb
index 8b3cdbd0..55713aef 100644
--- a/GUI_EDMI/Form1.Designer.vb
+++ b/GUI_EDMI/frmMain.Designer.vb
@@ -1,5 +1,5 @@
_
-Partial Class Form1
+Partial Class frmMain
Inherits System.Windows.Forms.Form
'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
@@ -22,11 +22,13 @@ Partial Class Form1
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
_
Private Sub InitializeComponent()
+ Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmMain))
Me.StatusStrip1 = New System.Windows.Forms.StatusStrip()
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
+ Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
+ Me.BarButtonItemEmail = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
- Me.RibbonPageGroupAdministration = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
@@ -44,16 +46,31 @@ Partial Class Form1
'RibbonControl1
'
Me.RibbonControl1.ExpandCollapseItem.Id = 0
- Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem})
+ Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.BarButtonItem1, Me.BarButtonItemEmail})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
Me.RibbonControl1.MaxItemId = 1
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1, Me.RibbonPage2})
Me.RibbonControl1.Size = New System.Drawing.Size(800, 141)
'
+ 'BarButtonItem1
+ '
+ Me.BarButtonItem1.Caption = "BarButtonItem1"
+ Me.BarButtonItem1.Id = 1
+ Me.BarButtonItem1.Name = "BarButtonItem1"
+ '
+ 'BarButtonItemEmail
+ '
+ Me.BarButtonItemEmail.Caption = "Email-Configuration"
+ Me.BarButtonItemEmail.Id = 2
+ Me.BarButtonItemEmail.ImageOptions.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.[False]
+ Me.BarButtonItemEmail.ImageOptions.Image = CType(resources.GetObject("BarButtonItemEmail.ImageOptions.Image"), System.Drawing.Image)
+ Me.BarButtonItemEmail.ImageOptions.LargeImage = CType(resources.GetObject("BarButtonItemEmail.ImageOptions.LargeImage"), System.Drawing.Image)
+ Me.BarButtonItemEmail.Name = "BarButtonItemEmail"
+ '
'RibbonPage1
'
- Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroupAdministration})
+ Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1})
Me.RibbonPage1.Name = "RibbonPage1"
Me.RibbonPage1.Text = "Main"
'
@@ -62,11 +79,6 @@ Partial Class Form1
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
Me.RibbonPageGroup1.Text = "RibbonPageGroup1"
'
- 'RibbonPageGroupAdministration
- '
- Me.RibbonPageGroupAdministration.Name = "RibbonPageGroupAdministration"
- Me.RibbonPageGroupAdministration.Text = "Adminsitration"
- '
'RibbonPage2
'
Me.RibbonPage2.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup2, Me.RibbonPageGroup3})
@@ -80,18 +92,21 @@ Partial Class Form1
'
'RibbonPageGroup3
'
+ Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItemEmail)
Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
Me.RibbonPageGroup3.Text = "Messaging"
'
- 'Form1
+ 'frmMain
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(800, 450)
Me.Controls.Add(Me.RibbonControl1)
Me.Controls.Add(Me.StatusStrip1)
- Me.Name = "Form1"
- Me.Text = "Form1"
+ Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
+ Me.IsMdiContainer = True
+ Me.Name = "frmMain"
+ Me.Text = "Digital Data - EDMI"
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
@@ -102,8 +117,9 @@ Partial Class Form1
Friend WithEvents RibbonControl1 As DevExpress.XtraBars.Ribbon.RibbonControl
Friend WithEvents RibbonPage1 As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
- Friend WithEvents RibbonPageGroupAdministration As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonPage2 As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
+ Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
+ Friend WithEvents BarButtonItemEmail As DevExpress.XtraBars.BarButtonItem
End Class
diff --git a/GUI_EDMI/frmMain.resx b/GUI_EDMI/frmMain.resx
new file mode 100644
index 00000000..b7501a80
--- /dev/null
+++ b/GUI_EDMI/frmMain.resx
@@ -0,0 +1,430 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 17, 17
+
+
+
+
+ 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
+ g3QOmyIAAAAASUVORK5CYII=
+
+
+
+
+ AAABAAEAPDwAAAEAIABIOgAAFgAAACgAAAA8AAAAeAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8B////A////wX///8F////A///
+ /wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAA////Af///wT///8F////BP///wEAAAAAAAAAAP///wH///8G////FOTh7S+Vh7hv+fj7EP//
+ /wMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAA////BP///xCupMlhmYy7Zfj3+gUAAAAA////Af///wb4+PoZjX6zjDYdefQzGnfz0cvgN///
+ /wUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAD///8B////C+Xi7TU7I3zsZVKYq/39/gn///8B////BvDv9R9cSJK8KBJj/zsrZ9nX0uRA////C///
+ /wIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ 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
+ qf9FHan/RR2p/0Udqf9FHan/RR2p/0Udqf9FHan/RR2p/0Udqf9HH6r/Tiet/1s3s/9KK5f/LBRr/wwF
+ Hf8GBgb/qKio/wQEBP8pKSn/ioqK/wEABP8ZCz3/Mhh4/00unf8PDRb/AQEB/w0FIP9GHqrxRh6qBQAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEUdqQNFHan/Hg1K/wAAAP8AAAD/AAAA/xkKPf9FHan/RR2p/0Ud
+ qf9FHan/RR2p/0Udqf9FHan/RR2p/0Udqf9FHan/RR2p/0Udqf9FHan/Rx+q/0skrP9SK6//Syue/zEX
+ dv8GAg//RERE/5ubm/+Tk5P/FRUV/xcKN/89IIn/VDGq/z4hh/8BAQH/AAAA/xkKP/9GHqrNAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEUdqQRFHan/HgxJ/wAAAP8AAAD/AAAA/xkKPf9FHan/RR2p/0Ud
+ qf9FHan/RR2p/0Udqf9FHan/RR2p/0Udqf9FHan/RR2p/0Udqf9FHan/RR2p/0Yeqf9HH6r/Tiit/1c0
+ rv9CKIT/Egsm/wEAAv8DAgj/JRZI/1Mypv9SLa//SySs/yYRWv8AAAD/AAAA/yYPXv9GHqqjAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEUdqQdFHan/HQxI/wAAAP8AAAD/AAAA/xkKPf9FHan/RR2p/0Ud
+ qf9FHan/RR2p/0Udqf9FHan/RR2p/0Udqf9FHan/RR2p/0Udqf9FHan/RR2p/0Udqf9FHan/Rx+q/0sj
+ rP9OKK3/Timr/0kmof9LJ6T/Tiit/0skrP9HH6r/Rh6q/xQIMv8AAAD/AAAA/zIVev9GHqp5AAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ 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
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEYeqh1GHqr/GgpA/wAAAP8AAAD/AgEH/woEG/8YCTz/JQ9b/zIV
+ e/8+Gpj/RR2p/0UdqftFHanoRR2pvEUdqYpFHalZRR2pKUUdqQUAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEYeqhFGHqr+LRNx/ygRZP82FoT/QBud/0Udqf9GHqr6Rh6q4UYe
+ qrRGHqqDRR2pUkUdqSRFHakFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGHqqTRh6q70YeqttGHqqtRh6qfEYeqktGHqodRh6qBQAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFHakBRR2pDEYeqgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ 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
+ AAD/////////8P/////////w//////////D//////gf/8P////4MB//w/////ggH//D////8AAf/8P//
+ //wAD//w/AAD/AAf//D8AAAAAAP/8PwAAAAAAP/w/AAAAAAA//D8AAAAAAD/8PwAAAAAAP/w/AAAAAAB
+ //D8AAAAAAH/8PwAAAAAAP/w/AAAAAAAP/D8AAAAAAA/8PwAAAAAAB/w/AAAAAAAP/D8AAAAAAA/8PwA
+ AAAAAP/w/AAAAAAD//D8AAAAAAP/8PwAAAAAA//w/AAAAAAH//D8AAAAAAf/8PwAAAAAB//w/AAAAAAH
+ //D8AAAAAAf/8PwAAAAAB//w/AAAAAAP//D8AAAAAA//8PwAAAAAD//w/AAAAAAP//D8AAAAAA//8PwA
+ AAAAD//w+AAAAAAf//D4AAAAAB//8PgAAAAAH//w+AAAAAAf//D4AAAAAB//8PgAAAAAH//w+AAAAAA/
+ //D4AAAAAD//8PgAAAAA///w+AAAAB////D4AAAH////8PgAAP/////w+AAf//////D8A///////8Px/
+ ///////w//////////D/////////8P/////////w//////////D/////////8P/////////w////////
+ //A=
+
+
+
\ No newline at end of file
diff --git a/GUI_EDMI/frmMain.vb b/GUI_EDMI/frmMain.vb
new file mode 100644
index 00000000..d44f41f6
--- /dev/null
+++ b/GUI_EDMI/frmMain.vb
@@ -0,0 +1,9 @@
+Public Class frmMain
+ Private Sub BarButtonItemEmail_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemEmail.ItemClick
+ Dim frm As New frmEmailAccount
+ frm = frmEmailAccount
+ frm.MdiParent = Me
+ frm.Show()
+ frmEmailAccount.Show()
+ End Sub
+End Class
diff --git a/GUI_EDMI/packages.config b/GUI_EDMI/packages.config
new file mode 100644
index 00000000..959fc27e
--- /dev/null
+++ b/GUI_EDMI/packages.config
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file