This commit is contained in:
SchreiberM
2016-10-06 16:02:46 +02:00
12 changed files with 391 additions and 527 deletions

View File

@@ -160,7 +160,7 @@ Public Class ClassLayout
End Sub
Public Function Load() As System.Collections.Generic.List(Of ClassSetting)
Dim Result As System.Collections.Generic.List(Of ClassSetting) = New System.Collections.Generic.List(Of ClassSetting)()
Dim Result As List(Of ClassSetting) = New List(Of ClassSetting)()
If Not File.Exists(_filename) Then
Return Result

View File

@@ -1294,6 +1294,7 @@
<None Include="Resources\brick.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Reports-collapsed_12995_32x.png" />
<None Include="Resources\RemoveLink_9938.png" />
<None Include="Resources\Login_6031_32x.png" />
<None Include="Resources\RightFileOnly.png" />
@@ -1387,6 +1388,7 @@
<None Include="Resources\application_view_detail1.png" />
<None Include="Resources\action_add_16xSM.png" />
<None Include="Resources\asset_pie-series-chart_on_24X24.png" />
<None Include="Resources\asset_pie-series-chart_on_12X12.png" />
<Content Include="Resources\cube.ico" />
<Content Include="Resources\138_PushPin_32x42_72.png" />
<None Include="Resources\PropertyGridEditorPart_6041.png" />

View File

@@ -370,6 +370,16 @@ Namespace My.Resources
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property asset_pie_series_chart_on_12X12() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("asset_pie-series-chart_on_12X12", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
@@ -1580,6 +1590,16 @@ Namespace My.Resources
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property Reports_collapsed_12995_32x() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("Reports-collapsed_12995_32x", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>

View File

@@ -169,6 +169,9 @@
<data name="Files_7954" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Files_7954.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="asset_pie-series-chart_on_12X12" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\asset_pie-series-chart_on_12X12.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Men3" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Men3.ico;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@@ -535,6 +538,9 @@
<data name="bricks" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bricks.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="asset_pie-series-chart_on_24X24" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\asset_pie-series-chart_on_24X24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="database_refresh" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\database_refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@@ -661,7 +667,7 @@
<data name="action_Cancel_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\action_Cancel_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="asset_pie-series-chart_on_24X24" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\asset_pie-series-chart_on_24X24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="Reports-collapsed_12995_32x" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Reports-collapsed_12995_32x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 B

View File

@@ -270,7 +270,7 @@ Partial Class frmConstructor_Main
'
'AuswertungAnzeigenToolStripMenuItem
'
Me.AuswertungAnzeigenToolStripMenuItem.Image = Global.DD_Record_Organiser.My.Resources.Resources.asset_pie_series_chart_on_24X24
Me.AuswertungAnzeigenToolStripMenuItem.Image = Global.DD_Record_Organiser.My.Resources.Resources.Reports_collapsed_12995_32x
Me.AuswertungAnzeigenToolStripMenuItem.Name = "AuswertungAnzeigenToolStripMenuItem"
resources.ApplyResources(Me.AuswertungAnzeigenToolStripMenuItem, "AuswertungAnzeigenToolStripMenuItem")
'

View File

@@ -165,7 +165,7 @@
<value>Auswertung anzeigen</value>
</data>
<data name="CMSEntity.Size" type="System.Drawing.Size, System.Drawing">
<value>195, 114</value>
<value>195, 136</value>
</data>
<data name="&gt;&gt;CMSEntity.Name" xml:space="preserve">
<value>CMSEntity</value>

View File

@@ -5174,43 +5174,35 @@ Public Class frmConstructor_Main
End If
End Sub
Private Sub grvwGrid_MouseDown(sender As Object, e As MouseEventArgs) Handles grvwGrid.MouseDown, grvwTiles.MouseDown, grvwCarousel.MouseDown
Try
Dim view As GridView = CType(sender, GridView)
If e.Button = Windows.Forms.MouseButtons.Right Then
GRIDRightMouse_Clicked = True
Else
GRIDRightMouse_Clicked = False
End If
Dim hitInfo As GridHitInfo = view.CalcHitInfo(New Point(e.X, e.Y))
If e.Button = Windows.Forms.MouseButtons.Left AndAlso hitInfo.InRow AndAlso hitInfo.HitTest <> GridHitTest.RowIndicator Then
GRIDdownHitInfo = hitInfo
End If
Catch ex As Exception
Exit Sub
End Try
Dim view As BaseView = CType(sender, BaseView)
If e.Button = Windows.Forms.MouseButtons.Right Then
GRIDRightMouse_Clicked = True
Else
GRIDRightMouse_Clicked = False
End If
Dim hitInfo As GridHitInfo = View.CalcHitInfo(New Point(e.X, e.Y))
If e.Button = Windows.Forms.MouseButtons.Left AndAlso hitInfo.InRow AndAlso hitInfo.HitTest <> GridHitTest.RowIndicator Then
GRIDdownHitInfo = hitInfo
End If
End Sub
Private Sub grvwGrid_MouseMove(sender As Object, e As MouseEventArgs) Handles grvwGrid.MouseMove, grvwTiles.MouseMove, grvwCarousel.MouseMove
Try
Dim view As GridView = CType(sender, GridView)
If e.Button = MouseButtons.Left And Not GRIDdownHitInfo Is Nothing Then
Dim dragSize As Size = SystemInformation.DragSize
Dim view As BaseView = CType(sender, BaseView)
Dim dragRect As Rectangle = New Rectangle(New Point(GRIDdownHitInfo.HitPoint.X - dragSize.Width / 2, GRIDdownHitInfo.HitPoint.Y - dragSize.Height / 2), dragSize)
If e.Button = MouseButtons.Left And Not GRIDdownHitInfo Is Nothing Then
Dim dragSize As Size = SystemInformation.DragSize
If Not dragRect.Contains(New Point(e.X, e.Y)) Then
Dim dragRect As Rectangle = New Rectangle(New Point(GRIDdownHitInfo.HitPoint.X - dragSize.Width / 2, GRIDdownHitInfo.HitPoint.Y - dragSize.Height / 2), dragSize)
view.GridControl.DoDragDrop(GetDragData(view), DragDropEffects.All)
If Not dragRect.Contains(New Point(e.X, e.Y)) Then
view.GridControl.DoDragDrop(GetDragData(view), DragDropEffects.All)
GRIDdownHitInfo = Nothing
GRIDdownHitInfo = Nothing
End If
End If
Catch ex As Exception
Exit Sub
End Try
End If
End Sub
Private Function GetDragData(ByVal view As GridView) As String()
Dim selection() As Integer = view.GetSelectedRows()

View File

@@ -142,10 +142,9 @@ Partial Class frmDiagrams
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(1160, 671)
Me.Controls.Add(Me.SplitContainerMain)
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 = "frmDiagrams"
Me.Text = "Chart Overview"
Me.Text = "Auswertung"
Me.SplitContainerMain.Panel1.ResumeLayout(False)
Me.SplitContainerMain.Panel2.ResumeLayout(False)
CType(Me.SplitContainerMain, System.ComponentModel.ISupportInitialize).EndInit()

View File

@@ -120,17 +120,26 @@
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAgAEBAAAAEACABoBQAAhgAAABAQAAABACAAaAQAAO4FAAAYGAAAAQAIAMgGAABWCgAAGBgAAAEA
IACICQAAHhEAACAgAAABAAgAqAgAAKYaAAAgIAAAAQAgAKgQAABOIwAAMDAAAAEACACoDgAA9jMAADAw
AAABACAAqCUAAJ5CAAAoAAAAEAAAACAAAAABAAgAAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
/wBKVcwAt6qbAJt3ZgB/icEA7Na4AMO7zQAoNdoAo5/BAPjt2gCxjn4AZmi+AM6+rgDg29QANUTIAHJ6
swDZ0MMA+fTuAKeCcAC3sMcAq56YAMK0owDMw70AuJiIANjJtQDOxc4ALEPXAOjbyADGt7gAdn7BAPjm
zwDh0LsA8OjgANrFqwAoO9EA+vHkAPXi2QCdf28ArIh3AH5+uwDs39AAw7fBAOHWywDHuagA/Pn0AENR
zQC0k4MA1MOvAGBruwDj1sQA5s23AMm2ogCZe2sA4M21AKGcxgD+/PoA597SAN3SxgCtoZQA+/ToAKJ/
bwDd1s4Ay7yoAN3OvQClnb0A+e/gAJd5ZwDf2NEA/PbtAJx9bADi2c0A3dXIALmsnQCph3gAq4l6AJl7
aACvj4AA/v79AP37+AD68+YA29PHANXErQDBtaEA+/XqALGQgADdz7sAyLmmAPrx4gDAtKMA+/XsAJp8
agCdfm0Ao4BwALeXhwD+/fsA+vTpAJh5aAD68+gAmXpqAJt8awCcfG0AsI59AK+OfwD+/v4A/fv5APz2
7gD68+cA+vLmAJp8awCbfGwAnH1tAJx+bQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAABAAYAICAQAAEABADoAgAAZgAAABAQEAABAAQAKAEAAE4DAAAgIAAAAQAIAKgIAAB2BAAAEBAAAAEA
CABoBQAAHg0AACAgAAABACAAqBAAAIYSAAAQEAAAAQAgAGgEAAAuIwAAKAAAACAAAABAAAAAAQAEAAAA
AAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAACAgIAAwMDAAAAA
/wAA/wAAAP//AP8AAAD/AP8A//8AAP///wAA//////////////////8AAP//////////////////AAD/
d3d3d3d3d3d3d3d3/wAA/3d3d3d3d3d3d3d3d/8AAP93/////////////3f/AAD/d/////////////93
/wAA/3f/d3f/d3f/d3f/d/8AAP93/3d3/3d3/3d3/3f/AAD/d/93d/93d/93d/93/wAA/3f/d3f/d3f/
d3f/d/8AAP93/////3d3/3d3/3f/AAD/d/////93d/93d/93/wAA/3f/////d3f/d3f/d/8AAP93////
/3d3/3d3/3f/AAD/d/////////93d/93/wAA/3f/////////d3f/d/8AAP93/3d//////3d3/3f/AAD/
d/93f/////93d/93/wAA/3f/////////////d/8AAP93/////////////3f/AAD/d/93d3d3//////93
/wAA/3f/d3d3d///////d/8AAP93/////////////3f/AAD/d/////////////93/wAA/3f/d3d3d3d3
d///d/8AAP93/3d3d3d3d3f//3f/AAD/d/////////////93/wAA/3f/////////////d/8AAP93d3d3
d3d3d3d3d3f/AAD/d3d3d3d3d3d3d3d3/wAA//////////////////8AAP//////////////////AMAA
AAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AA
AAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AA
AAPAAAADKAAAABAAAAAgAAAAAQAEAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACA
gACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP///wAP////////8A93
d3d3d3fwD3//////9/APf3f3f3f38A9/d/d/d/fwD3//93939/APf//3f3f38A9/////d/fwD393//93
9/APf//////38A9/d3f///fwD3//////9/APf3d3d3/38A9///////fwD3d3d3d3d/AP////////8IAB
AACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIAB
AAAoAAAAIAAAAEAAAAABAAgAAAAAAAAEAAAAAAAAAAAAAAABAAAAAQAAAAAAAEJCQgDx7/AA9vb2AAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
@@ -140,417 +149,6 @@
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAGRccHBwb0ZkZFtMZAAAAAAEAWBgYGJrbCRCCkMAAAAAPQEQUlksFkk0O1hh
AAAAAF0BHjcoNjBXIgNQYwAAAABKAVYIIyoGHTM/PDUAAAAASwFRGhcbLg8MU1RtAAAAAGcBRx8cBxQJ
Ag1aZAAAAABNAUQpSDJAGUExRW4AAAAATQEOOT4rOhEgBWplAAAAAFUBAQEBaF9PLRIhJgAAAABeAQEB
AWhfaRMTExMAAAAAGAEBAWhOOGkTJQsVAAAAABgBAQEBAQEBEwsVAAAAAAAYGC8vZmYnJxMVAAAAAAAA
AAAAAAAAAAAAAAAAAAD//wAAwAMAAMADAADAAwAAwAMAAMADAADAAwAAwAMAAMADAADAAwAAwAMAAMAD
AADAAwAAwAcAAMAPAAD//wAAKAAAABAAAAAgAAAAAQAgAAAAAABABAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAJt8a/+dfm3/nH5t/5x+bf+cfm3/nH1t/5x9bP+bfGv/m3xr/5p8av+Ze2j/m3xr/wAA
AAAAAAAAAAAAAAAAAACbd2b///////r06f/69On/+vTp//rz6P/68+f/+vLm//rx5P/57+D/+O3a/5d5
Z/8AAAAAAAAAAAAAAAAAAAAAon9v//////9yerP/1cSt/8C0o//Huaj/wrSj/7msnf/JtqL/raGU//rx
4v+YeWj/AAAAAAAAAAAAAAAAAAAAAKOAcP//////dn7B/6Gcxv9+frv/4M21/9TDr//Iuab/2sWr/7eq
m//68+b/mXpq/wAAAAAAAAAAAAAAAAAAAACph3j//////93Pu/8oNdr/KDvR/8O3wf/s1rj/xre4/+bN
t//LvKj/+/To/5l7a/8AAAAAAAAAAAAAAAAAAAAAq4l6///////b08f/zsXO/8zDvf8sQ9f/Q1HN/zVE
yP9maL7/wbWh//v16v+afGv/AAAAAAAAAAAAAAAAAAAAAK+Of///////4tnN//jmz//o28j/w7vN/7ew
x/+jn8H/SlXM/86+rv/79ez/m3xr/wAAAAAAAAAAAAAAAAAAAACvj4D//////9/Y0f/s39D/3dXI/+PW
xP/dzr3/2Mm1/6Wdvf9ga7v//Pbt/5t8bP8AAAAAAAAAAAAAAAAAAAAAr4+A///////g29T/597S/93W
zv/h1sv/3dLG/9nQw//h0Lv/f4nB//z27v+cfG3/AAAAAAAAAAAAAAAAAAAAALGQgP//////////////
/////////v7+//79+//9+/j//Pn0//n07v/w6OD/n4Bw/gAAAAAAAAAAAAAAAAAAAAC3l4f/////////
//////////////7+/v/+/fv//fv5/6eCcP+ngnD/p4Jw/6eCcP8AAAAAAAAAAAAAAAAAAAAAuJiI////
//////////////7+/v/+/v3//vz6//37+f+ngnD/9eLZ/7GOfv+ngnBYAAAAAAAAAAAAAAAAAAAAALiY
iP//////////////////////////////////////p4Jw/7GOfv+ngnBYAAAAAAAAAAAAAAAAAAAAAAAA
AAC4mIj/uJiI/7STg/+0k4P/sI59/7COff+siHf/rIh3/6eCcP+ngnBYAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAD//wAAwAMAAMADAADAAwAAwAMAAMADAADAAwAAwAMAAMADAADAAwAAwAMAAMADAADAAwAAwAcAAMAP
AAD//wAAKAAAABgAAAAwAAAAAQAIAAAAAACgAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AZ22oAAAA
xQDsyI4AonpcALatxQDl288AJzO5AKKZkACEitIAf19OAISBfQAGJNkAzLWjAEtTnQA/T8QAu5NpAIqL
qQBnbcsA48qwAPvx4QDJyMgAxKOEAPviuACbmsMAtqmbAKmHdwBTYrMAeny0AI5tXAAVJ8cAwLu0APvn
zgAAENMAkYyJAOzk3wDQw7AAsLCxANPU0gDZzb8A69W7AJx9bABla7kAoZy1AJKSzADx3cYAIDLGALGP
fwDKvLwAvLSoAJd0YwDCr5wA29vbAKiEagCspZEA+vj1AH96cwAGHc4AhoOyAIhlVABvdskAAATRALy+
vwAOKNEAx7vHAMi8qwDz7OcA3dXKAJqTiwC1trcA8tu1AM7HugD46tgAsqe9AP326wCnoJgA2su0ALiw
oAD25MIAxMPAAP/tyADh0rQAo4FxAJZwWwCenMsAHTHOAP/u0QD03b0AhIGqAPby7QDNzc0Ar4t4AP/+
9gDk174AdHezAAAZywDq28kAAA3MAJ52YQDXz8YA1sWsAIyOzgDVx74AyrWqAAAK1wCSi4IAsaSXAG1z
wwC8rZkA8MySAMW9swDDtZ8A/ea9ANbX1wDmz7cAurm6ABYrzACTcmAA4dbQAMnHwQDRvrQAycG4AMK2
qQDk2ckAmpGFAPnr3QDOvasA/OnFAPjn0gDEu6cAAh3SAPzq1AD89OYA8N65ANTMwwAWK8QA/vz7AOve
zQDdz7UA0NDRAMe2owDZysMAn5eQAPjfuwDz38oA/O7cAJl3ZgDGxcYAwruwALKyswCff3AAqot4AM3G
xwCbdl8AmnppAOHYzAC/s6UA7d7FAPzr2AClhHMA5M20AK6LfADLyssAzce+ALGpmwD56NUAkG9eAPXg
vwDp1L0A5NO2AKyIdwDCwcIAt66jAP7y5ACUdGEA2tHGALy8vAD///oAi2ZVAKiGdQDGs6IAAA3UACAx
wwD//fQA+evcAJ9+bQDn2MkAxMTDAMS6qgC0pZcAAxvQAP716ACHY1IA+unSAPfm0ADKu6kAv76/AMGt
mgC7r5sAt7e5ANjRyADSw7IAycXAAP7+/QD77dkAl3ZnAPTgyAD2370Am3xrAOrdywDZ2doA1dbVAKuJ
eQCuiXgArIp7AK6MegCvjHsA2szEANXNwQDHxsIAzLyqAAAOzgD88+UAkm9eAPnq1gCTcl8AlHFfAJVz
YQDx3MQA5s+1AOPLsgDYzb0AycK6ALSnmAD///gA/vz5APnq1ACcemkA///9AP306QCPblwA/ezXAJFw
XwCWc2MAlXViAKSDcgDi2c0AqYh4AOXQuAC2tbYA/v7/AP79/AD//fsA/fXsAPzz5wAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAA8kzMzMzMz9fX0r3bj4vPg4gsAAAAAAACbrn5+fn5+uX65ublJpoHDIacA
AAAAAADRuHjcrKzFsbF0yEb6liYmzR4AAAAAAADRuA87ZQl/xBrqjbV9NMY5kvEAAAAAAAAqXQI6ccfQ
qX/d+XNr5xRqFacAAAAAAAC664KDGR0vizKte52PGr4MrvMAAAAAAACXsr1VQL9iBk3KqSlw5qFF33YA
AAAAAABT75VRDRAtVoaqqDEIR+aP3+MAAAAAAABTASB8mSBeImxgLLcDWW0jheQAAAAAAAD2AenDgUhX
CrY9PnVfHxhM/68AAAAAAACgAaTt4YftV55PZkFS3kqlwPQAAAAAAAC0AcsH98uw23pvJUJOK4g38OQA
AAAAAAC0AWSfzUTyptK7kS7oWGkSSzMAAAAAAAAbAcmEhJyEwophz+UokBMcSzMAAAAAAACrATU103LU
J4xboxaUvFA//jMAAAAAAADWAQEBAQEBAfv8/ThaQyR3aB4AAAAAAADWAQEBAQEBAfv8AWjumDYFwQAA
AAAAAADYAQEBAQEBzMyJ72cOgG6aAAAAAAAAAABcAQEBAQHMzPyJzI4XBFQAAAAAAAAAAADWAfvMzMzM
/Ins79oRmgAAAAAAAAAAAADZAQEBAQEBAQEBAXmzAAAAAAAAAAAAAABjMNnZotjX1fgbmM4AAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A4AAHAOAABwDgAAcA4AAHAOAABwDgAAcA4AAHAOAA
BwDgAAcA4AAHAOAABwDgAAcA4AAHAOAABwDgAAcA4AAHAOAADwDgAB8A4AA/AOAAfwDgAP8A4AH/AP//
/wAoAAAAGAAAADAAAAABACAAAAAAAGAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiGVU/5l3Zv+WdGP/lnRj/5Z0Y/+WdGP/l3Rk/5V0
Yv+VdWL/lnNj/5R0Yf+TcmD/lHFf/5JyXv+RcF//km9e/5NyX/9/X07/AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAmnpp//7y5P/5693/+evd//nr3f/5693/+eve//nr3P/57N3/+erb//nq3P/569v/+OrY//jn
1f/35tL/9+bP//vnzv+Qb13/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm3tr///98//Jx8H/x8bC/8LB
wv/BwcH/v76//7y8vP+8u7z/urm6/7e3uf+1trf/trW2/7Kys/+wsLH/sK+w//vt2f+ObVv/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAm3xr///99P9LU53/hoOy/9bFrP+imZD/zb2r/8q7qf+1qZr/tKeY/8e2
o//Gs6L/mpGF/8KvnP/BrZr/f3pz//zu3P+Pblz/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnH1s///+
9v9nbaj/Bh3O//3mvf+7r5v/9t+9/+nUvP/Ovav/zLyq/+XQuP/mz7f/saSX/+PLsv/jyrD/kouC//vx
4f+Qb17/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAn35t////+P/Eu6f/Ah3S/5uaw/96fLT/IDLG/93P
tf+8tKj/t66j/8K2qf+/s6X/npaQ/7apm/+0pZf/hIF9//3x5P+RcF//AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAn39w////+v/Euqr/npzL/w4o0f8DG9D/AA3M/7atxf/ay7T/0sOy/+jUvf/r1bv/w7Wf/+bO
tP/kzbT/mpOL//zz5P+ScWD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAo4Bw/////P/Cu7D//+3I/wYk
2f8/T8T/kpLM/x0xzv/w3rn/5NO2//Xgv//KvLz/JzO5//Lbtf/mz7X/n5eQ//zy5f+TcV//AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAo4Fx/////v+/urT/5NnJ/83Gx//Au7T/5Ne+/wAQ0/9tc8P/ABnL/6Gc
tf8gMcP/AADF/4SBqv+8rZn/kYyJ//z05v+VcmH/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApINy////
///Jwrr/9+bQ//jn0v/Ox7r//+7R/4SK0v8ADdT/b3bJ/wAE0f8WK8z/dHez/xUnx//74rj/p6CY//zz
5/+Uc2D/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApYRz///////Nx77/+OnU//nq1v/UzMP/+erU///t
0f/t3sX/9uTC/4yOzv/Hu8f/4dK0/wAOzv+yp73/samb//716P+Wc2L/AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAqIV0///////JxcD/5dvP/+LZzf/Jxb//2tHG/9XNwf/Jwbj/xb2z/9DDsP/IvKv/uLCg/2Vr
uf8WK8T/rKWR//306f+Vc2H/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqIZ1///////Xz8b//OvY//vt
2f/d1cr//ezX//no1f/q3cv/59jJ//Pfyv/x3cb/2M29//Tdvf8ACtf/ioup//326/+XdGP/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAqYd2///////Y0cj//OrT//zq1P/h2Mz//OrV//rp0v/r3s3/6tvJ//Tg
yP/x3MT/2c2///jfu/9nbcv/U2Kz//326/+WdGP/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArIh3////
///b2tv/29va/9nZ2v/W19f/1dbV/9PU0v/Q0NH/zc3N/8vKy//JyMj/xsXG/8TEw//Ew8D/vL6///31
7P+YdWP/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArYl4////////////////////////////////////
///+/v///v38///9+//6+PX/9vLt//Ps5//s5N//4dbQ/8m1qf+NaFftAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAArol4///////////////////////////////////////+/v///v38/////v/Ktar/nHpp/6qL
eP+ohGr/onpc/4ZgT/OQZ1ZBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArot6////////////////////
//////////////7+/v/+/v3//v37/////f/Vx77/zLWj//zpxf/wzJL/m3Rc85ZpXDoAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAr4t4/////////////////////////////v7+//7+/v/+/fz//vz6///+
/f/ZysP/xKOE/+zIjv+Xb1jylm5dPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArol5////
///+/v///v7+//7+/v/+/v7//v79//79/P/+/Pv//vz5/////P/azMT/u5Np/5x0W/KbbV84AAAAAAAA
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
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhGFQ/4ZhUP+EYE//hGBP/4Rg
T/+EYE//hGBP/4NgT/+DYE//g2BP/4NfTv+CX07/gl9O/4FfTv+BXk3/gF5N/4BdTv9/XUz/f11N/35c
S/9+XEz/fVtL/35dTf97W0v/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACFYVD/+OTT//Le
zP/y3sz/8t7M//LezP/y3sz/8t7M//LezP/y38z/8t3M//Ldy//y3cv/8t7K//Lcyv/y3Mf/89vH//Ha
xP/x2cL/8tjA//DXvv/x1r3/9dm9/3xbS/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIZh
UP///fL/+vTo//rz6f/68+n/+vPp//rz6f/68+n/+vPo//r06P/68uj/+vLn//ry5//68+b/+vHm//ry
5f/68uT/+fHi//nw4P/5797/+Ozb//nt2f/03MT/e1pJ/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAhmFQ///+9f/X19f/x8fB/8XFwv/BwMD/wL/C/7/Awf++vb//vLy+/7y7u/+7u7v/ubm6/7e3
uf+2trb/tLS2/7S1tf+xsbP/sK+w/66ur/+srK3/ycXD//Texv99W0r/AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAACHY1H///73/8rJxP9MVp//hoWn/8G1o/+9sqT/j4qE/7uwov+3q53/uKud/6KZ
jv+fl43/tKWY/7Gklf+ypJX/hoB6/6+gkf+qm43/qpuN/395cv+zsK//89/J/3xbSv8AAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIhiUf////f/0NDH/yw9tf8VJ8r/9+G5/+vWv/+gmI//6tW+/+TQ
u//l0bv/w7Sk/8Kzov/jzrf/38uz/+XNtv+dk4v/4sux/9zGrP/gx63/npOG/7Wysf/14Mz/fVxL/wAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiWNS////+v/Qz8r/h4ew/wAAz/+noMD/8t2//6qh
kv/l0r//6dW6/+jTvf/GuKj/xbam/+XPuP/hzbb/5c62/6KXjv/kzLP/3sau/+HHr/+glYn/t7Sz//Ti
zv9+W0z/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACKZFP////6/8zMzP/Rx6//Fi7P/xow
zP/25b3/S1W0/wADyf/Rxbf/zsKz/7etpf+0rKL/xbmr/8Czpf/As6X/k5CL/7msnv+0ppf/tKaX/4uG
f/+7ubb/9uPS/4BdS/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAItlU/////v/z8/P/87D
sv+ppcj/AALU/5CPx/8AD8//AArL/2hsw//s277/x7ut/8W5q//czLj/2Mi1/9zItP+nn5X/2MOv/9G+
qf/Uvan/npSL/766uP/15NP/f1xN/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjGdU////
/v/R0tL/zsG1///rxf8XMNT/ABDT/w0m0f9XYcr/AAzN//Lexf/Qw7P/zsCx/+fVv//m1Lv/8dq8/5+Z
of/s1rf/4cuz/+LMs/+nnZL/vru5//Xk0v+AXkz/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AACPZlX//////9XV1f/PxLj/+OTI/6ilzf8AANz/f4Sz/+7eyv8ABNL/eX7K/+PTtf/dzrL/9uHA//Tf
vv+Tjr3/AADC/7Wnuf/q07b/5s+2/6yhlf/Bvrv/9eTT/4JdTP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAI9nVP//////2NjY/8XBu//b08j/39XE/7W0xf++ua7/3dK8/ztMyP8AGdP/pqO3/wIb
yv9IVMX/z8Km/wAVyP8ACcb/Kze7/7Wqkf+mm5H/joiE/8XAv//15NT/gV9O/wAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAkWhV///////b29z/1Mq+//Tjz//y4s3/+OjR/7+6sv/56M//2s7N/wAI
2P8ACtb/DyjS/wAJ0P8jNcz/ABDM/1ZftP8AAMn/ybm5/+zTt/+xpZr/xMK///Xl1v+DXk3/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACSaVf//////97e3//YzMH/9ebS//Lj0P/36NT/wry2//bm
0v//7c7/cHnU/2VwyP/35bv/TVvP/wAB0v9+f8j/1sqr/wARy/9ET8P/9Nu2/7Onnf/GwsH/9eXV/4Ng
Tf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJNqVv//////4ODh/9vRxf/56dX/9+nU//rr
1//KxLz/+urV//fn0///7dH/6NrC/+LUwf/65cr/goTO//rjxP/SxrP/envI/wACzf/cybn/ua6f/8jF
xP/15df/hF9P/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlGxX///////j4+T/zcrE/93V
zP/Z0cv/19HI/728uP/QysH/ysO7/8jCt/+7ta//t7Gr/762q/+/tab/tq2i/6CdmP+vpZj/AAvR/0RP
t/+gmYv/zMjG//fm1v+EX07/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACVa1n//////+bm
6P/g1sr//OvX//rs2P/979n/08vE//zt1//56db/+OjT/+TYyv/i1sf/9OLM//Lfyf/z3sb/zsS8//zi
v/9gZ8r/AA3V/7yxpf/PzMf/9ubY/4VhTv8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJZs
WP//////6Ojp/+HYyv/56tT/9+jV//rq1v/Uzsf/+uvX//bo0//359L/5dnK/+PWx//w3sn/7dvG/+7b
w//Nx73/7tm+/97Lvf8AB9n/VGCy/9XQx//25tj/hWBQ/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAl21Z///////q6uz/49rM//3q1P/76tX//ezX/9rTyv/+7Nf/+uvV//vq1P/q3Mz/6NvK//bi
y//z38n/893G/9XMwf/v2MD/+uC7/0ZT0v8/Ubv/2NLJ//bm1/+GYE//AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAACYblv//////+zs7P/JyMf/zcvI/8rIxv/IxsT/wsLB/8XDv//CwL3/wL67/7y7
uf+6uLb/uri1/7i0sv+1s7D/sK+u/7Guq/+xrqn/paWp/5GUpP/U0Mv/9+fZ/4ZhUP8AAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJlwWv//////////////////////////////////////////////
/////////v79//79/P/+/Pr///35//79+f///fn///33//779//9+PP/+fXt//Xw6P/p1sj/h2JQ/AAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmm9c////////////////////////////////////
///////////////////+/v7//v38//78+v///fv/5tzX/9nLwv/g08z/2szF/9XFvv/Itq3/u6Sa/5d1
Zf+GYlG2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbcFv/////////////////////////
//////////////////////////////7+/f/+/fz//vz6//////+7opX/oYBy/6eJeP+lg2//o39n/7CI
Zv+TbFT/imRTxIZfSw4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJxyXf//////////////
///////////////////////////////////+/v7//v79//79/P/+/Pr//////8u3rf/FrZ////Xg//nh
u//41pz/xZ5u/4ljU8GMXV8MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnnJc////
/////////////////////////////////////////v7+//7+/v/+/fz//v37//78+v////z/zLqw/76h
i//237j/88+W/8CYav+IYlTPi2RODgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AACcclz///////7+/v////////////////////////////7+/v/+/v7//v39//79/P/+/Pr//vz5///+
/P/XycH/so1y//bTmv/In27/iWRVzJ1uXhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAJ1xXf///////v79//7+/v/+/v7///////7+/v/+/v7//v7+//79/f/+/fz//vz7//78
+v/9+/j////7/9PCuf+3kGr/y6Fv/4tkVM2VYlIRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAm3Fb///////+/fz//v39//7+/f/+/v3//v79//7+/f/+/fz//v38//78
+//+/Pr//fv5//379////vv/zrqx/6J5Wv+PaVbWnXFZGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACccV3/////////////////////////////////////////
//////////////////////////////////+zl4n/j2dV1KFtYhcAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJpxXf+dcl//m3Fd/5xxXf+acV3/mnFd/5lw
W/+YcFz/mG9a/5dtW/+Wbln/lWxa/5RrWf+Talj/k2xZ/45nVbmTblUWAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/////wAAAP8AAAD/AAAA/wAAAP8AAAD/AA
AA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AA
AA/wAAAP8AAAH/AAAD/wAAB/8AAA//AAAf/wAAP/8AAH//AAD///////KAAAADAAAABgAAAAAQAIAAAA
AACACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8ATVvPAM2ibAAAANwAellJAKOgywDw1bcAhoaFABkx
ygCAg8cAy7WhAExWnwDs5d4ApX5dAKCgoADHxskA/+3QAPDKjQCGhacAso1yACw9tQAGG80Aa3G5AMSl
iQDWw64Ak469APrx6QA9S7wAj2dVAAAAwgC5trkAXWO2AN7UzAChl4oAlHdqAKKgsgDx380AsaWZAJyF
egB/eXIAbHPQAPflvADLu7sAsK+pAN7LvAANIdQA0dLUALKmuwAACtEA8ebaAJGUpADp3tUAw5hnAOvr
7ACylIcAOEnNAEtVtACnpKcAwL/DAJKQkQCnnpIAf4SzAJpvWwBGVMQAvLivAP/98gCEYE4AsIhmAM67
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
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhWFQ/4RhUf+DYE//g19P/4Nf
T/+DX0//g19P/4NfT/+CX0//gl9P/4JfT/+CYE//gl5O/4JeTv+CXk7/gV5O/4FeTv+BXk7/gV9O/4Bd
Tf+AXU3/gF1N/39eTf9/XE3/f1xM/35cTP9+XUz/fltM/31bS/99XEv/fFpK/3xbSv97W0r/e1tL/3tb
S/97W0z/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFxL/+7R
u//rzrn/6s25/+rNuf/qzbn/6s25/+rNuv/qzbr/6s26/+rNuf/qzbn/6s25/+rNuf/qzrn/6865/+nO
uP/pzbj/6c24/+nNt//qzbf/6s23/+rMt//qzLb/6cy2/+nLtf/py7T/6cu0/+nLs//oy7P/6Mqz/+jK
sv/oyrH/58mx/+vLsv92Vkj/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAf1xL/+rUwv/m0L//5tC//+bQv//n0L//59C//+fQwP/n0MD/59DA/+fQv//m0L//5tC//+bQ
v//m0L//5tC//+bQvv/mz77/5s++/+bPvf/mz73/5c+9/+XPvP/lzrz/5c67/+XOu//lzbr/5M26/+TN
uf/kzLn/5My4/+TMt//ky7f/5My3/+XIsP93VUb/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAgFpJ//Dez//s2sv/7NrM/+zazP/s28z/7NvM/+zbzP/s28z/7NvM/+zb
zP/s2sz/7NrM/+zay//s2sv/69rL/+vay//r2sr/69nK/+vZyv/r2cn/69nJ/+vYyP/q2Mj/6tjH/+rX
x//q18b/6tfG/+nWxf/p1sT/6dbE/+nVw//o1sP/5tC8/+bJsf92V0f/AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgVxK//Tl2P/z6d3/8uje//Lo3v/y6N7/8ujd//Lo
3f/y6N3/8ujd//Lo3f/y6N7/8uje//Lo3v/y6Nz/8ujd//Lp3f/y59z/8ufc//Pn3P/x6Nv/8ebb//Hm
2v/x59r/8uXZ//Dl2P/w5tj/8OTX//Hl1f/v49b/7+PV//Dk1P/t3s3/59C8/+XIsf94Vkf/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgltK//Xn2v/38Oj/9u/n//bx
5v+1s6//qKeh/6imof+ioaD/oaCg/5+gn/+enZz/nZ2c/5ubm/+YmJn/mJiY/5eWlv+WlZT/lZST/5OS
kv+SkZH/j4+P/4+Ojv+Pjoz/jIuK/4qJiv+Kion/hoaG/4aGhf+GhYP/mpaS//Tr3v/t4ND/5tC9/+XK
s/95WEf/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAglxL//Tm
2v/38ej/9/Do//fw6P+rqaP/O0iy/11jtv/bx6z/1cSv/9bDrf+mnZP/vK6e/9XBrP/Twaz/08Cs/9PB
qv+3qZr/qp6R/9C9pv/Pvaf/zruk/866o/+3p5X/oZeK/8y2n//MtqD/y7Sd/8q0m/+woI3/g4KB//Pr
3v/t39D/5tG+/+fJsv95V0j/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAg15L//Tn2//48un/9/Hp//fx6f+urKT/IDO+/wgU0P/ZxLr/8Ne6//DXuv+yqZz/0L2p//DX
uf/v17n/79a5//DWuP/JuKT/t6mb//DUtf/v1Lb/79S1/+7Tsv/OuqP/sKSW/+7Qr//tz6//7c+t/+3O
rf/KtJv/hYWE//Xs3//v4dL/5tG//+bLs/96V0j/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAhF1K//bo3P/48uz/+PLq//jy6v+wrqf/PUy+/wAVzv9iacz/9Nu7//LZ
vP+1q5//08Gr//PYu//v173/79e8//DXuv/Lu6n/uKye//DVuP/v1Lf/7tS2/+/Utv/PvKX/s6eb/+7R
sv/s0bH/7M+w/+3Prv/LtZ3/hoaG//Ts4P/u4NH/59LA/+bKtP96WUj/AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhV9M//Xq3//48+z/+PPr//jz7P+urqr/sqe1/wMW
0v8LH9P/3Mm+//Pbvf+5r6D/pp+v/827wP/z2rz/8dq9//LXu//Ovar/u6+g//DXuf/v17n/79W3//DU
tv/Rvqj/tamd/+/Rsv/u0bH/7dCw/+7Prv/Ltp//iYiJ//Tt4f/u4tL/59LA/+bMtv97WEn/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAh15L//fp3//59O3/+PPt//nz
7f+urq3/3M22/z9Ozf8AFdH/aHDM/+vYvv+moa3/ARLN/xIez//Zybv/3866/97MuP/Ctqj/taug/9vI
tP/Zx7L/18Ww/9bDrv+/saH/qqKW/9K+qP/Qvqj/0Luk/8+6ov+2ppX/jIuL//bt4v/w4dP/59PB/+jL
tf97Wkj/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhmBN//bq
4P/59e7/+fTu//n07v+wsLD/1cu+/7i0yv8CF9T/AR3R/9jMv/8zRMv/ABbL/wAUyv9tc8D/1Mi4/8/E
uP+8tKr/sKuj/8q+sf/HvLD/xLqt/8K2qv+0qp//opyV/72wov+7rp//uKyd/7aomv+lmo7/j46N//Xu
4//v49X/6NPC/+fLtv98WUj/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAhmBN//br4f/69fH/+fXv//n17/+0tLT/3M27//bewP86Ttn/ABnU/zRGzv8BGdD/Bx7O/wEZ
zf8VJdH/7Na///PcwP/TxLH/wbap//Lavf/x2L3/8Ni7//HYuf/Ww63/vrOl//HUtf/v07T/7tO0/+/R
sf/Pu6T/kI+Q//Xu5P/v4tT/6NPC/+fLuP98WUj/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAh19M//fs4v/69vH/+vbw//r28f+1trb/38++//Xfw/+5scz/ARza/wAc
1P8AGNX/kI7I/y5Bz/8AF9D/iYrN//Tewv/TxrX/xLmt//LbwP/w28D/79i+//HYu//Mu7H/pp6u//LW
tv/v1bj/7tO1/+7RtP/PvKb/k5OT//Xv5f/v5NX/6NTD/+fNt/98WUr/AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiGFO//fs4//69/L/+vby//r28v+3uLn/4NLA//Th
yP/348b/NEvd/wAc2v8ZM8z/4dC2/6Ogy/8BGdX/Gi/X//Lbwf/VyLb/yb2u//Tcv//y3MH/8tq//+/Y
u/8kL8v/BA7I/7+wu//x1rj/7tO2/+7Stf/Qvaf/lZSV//fv5f/x49b/6NTE/+fMuf99W0n/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiWBN//jt5P/7+PP//Pfz//v3
8/+7u7z/4NLA//Thx//24cn/ysDM/0RU2f+gn7P/3s+7//Xgxf8iNtf/ABjU/5aTzP/gz7T/jIy1/2xz
0P/q1MH/9d2+/4GBx/8AE8f/ABPD/0lSx//017b/79S3//DTtP/Rv6j/l5iY//bw5v/w49j/6dTE/+fO
uv99Wkn/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAi2FP//ju
5f/7+PT/+/j0//v49P+9vL3/zsvK/9XV1f/T0tH/09LM/9TQxf/Bvrr/wb+9/8jGwP9+hcb/ABfX/xsz
zf9GVsP/ABTT/wAW0P85TMH/pqKh/wYZy/8AFMb/ABTE/wMRx/+MipX/l5eS/5WSkf+QjYn/m5qa//bw
5//w5df/6dXF/+jNuf9+Wkn/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAimNO//ju6P/8+ff/+/n1//v59v+/v8D/4tXE//Xiy//148z/9ePM//fky//MxLr/4NPC//Xi
y//y4Mr/HDHe/wAc1v8AGdT/CiHV/wkg0v8BGM//ITTN/wAVzf9ATcH/PUq5/wARyP9eY8f/9Ne2//DU
tf/Uwav/nZ2d//bx6P/w5Nj/6dXG/+jNuf9+Wkv/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAi2JQ//nv6P/8+vf//Pn2//z69//BwsT/5NjI//Xkzv/05c//9ubR//bm
0P/Nx77/4dXF//Xjzf/35Mz/jpXX/wEY4f8kPdP/wLa8/5mXy/8BGtT/ABrP/wse0//Iu7b/pKCx/wIT
y/8KG87/38i6//DVtv/Uwq3/np+f//jx6P/y5Nr/6dXG/+jPu/9/XEr/AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjGRP//nw6f/8+/j//Pr4//z6+P/DxMX/5NjK//Xm
z//359L/9ufS//bn0f/PycL/4tbH//bm0P/15M7/+OXM/9PHz//g0sD/1Mu9//fhxP9catj/ARfc/3x/
zv/l0bj/1Mey/ztIy/8AFs3/cnTJ//LWtv/WxK//oaGh//fx6f/x5Nn/6dbH/+jOuv9/W0r/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjmNR//nx6v/9+/n//vv5//37
+f/Gx8j/5trL//fmz//359L/9+fS//fm0v/Ty8T/5djI//fn0P/15M7/9eTO//fjy//f08L/1czA//bf
xv/138X/w7nJ//TcwP/j0b3/1cm3/7GlwP8BFtL/EiXU/+nOtv/Yxa7/o6Sk//fy6f/x5tv/6tbH/+jO
vP+AW0r/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAj2RQ//rx
6//9/Pr//fz6//38+//IyMj/1dHN/93Y0//a1tH/2NTQ/9bRzP/Fwr//ycXA/9DJxP/MyMP/ysXB/8jB
vP+9t7L/trGt/8G6sv+8uK//vbar/7iwqf+uqaH/paCc/7ismf8WLsb/ABbT/2lusv+mnpH/p6em//fy
6v/x5dr/6tbI/+jOu/+AXUz/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAj2ZQ//ry7P/+/fv//fz7//79/P/Ly83/4tnL//Lk0v/w4tP/7+PR/+/h0P/Tzcb/39XJ/+3g
zv/t383/6tzK/+vbyP/YzsH/0Mi+/+jXwv/l1cH/5dO+/+XSvf/XyLj/ycG3/+TOs/+TksP/ARnW/xQp
z//Ou6P/qamn//fy6//x5dz/6tbI/+nQvf+AXEv/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAkGVS//vy7f/+/f7//v38//79/f/Mzc//6N3Q//bn0v/259P/+OnW//jp
1P/a08v/59zP//bm0f/15tH/9ebR//bjzf/k2Mn/2tHH//ThyP/04Mn/897H//Pew//l1cL/18zD//Lb
vv/x17z/GzLb/wEY1v+Hhrf/rq2o//nz6//x59v/6tfJ/+nPvP+BXEv/AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkWdR//vz7//+/v7//v79//7+/v/Q0dP/6d7Q//fo
1P/36NX/9+jV//fo1P/c1s7/6N7P//bm0v/259P/9eXR//bkz//l2Mr/3NTK//Thyv/04Mn/89/I//Pe
xf/m1cT/187E//LZvv/02bz/hYfM/wAZ2v8tQsb/s7Gp//jz6//y5t3/6tfJ/+nPvP+BXEv/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkmZS//vz7v///////v7+////
///R0tT/6t7Q//fm0P/36NT/9+jU//fn0v/e2ND/6d7P//bn0v/25tD/9uXP//bkzv/m2sz/39XM//Th
yv/04Mf/9N/H//Tcwv/n1sT/2s/H//LZvv/y2b3/6dC5/xEl3/8jOsr/trSs//jz7P/y5tz/6tfJ/+nP
vv+BXkv/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkmhS//r0
7//////////////////U1dX/4tnP/+vf0f/r39L/6t/S/+rf0P/Z1M7/4NfM/+ndz//n3c7/5tvM/+ba
yv/b0sf/1c7F/+TWxf/j1MT/49TD/+HRv//YzL//0Mi+/9/Ou//ezbr/4s63/3N6xP9DVcP/trOu//jz
7P/y5tz/6tfJ/+nPvf+CXUv/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAk2dT//z08f/////////////////b29v/1NTV/9PU1v/Q0dT/z9DT/8/P0v/Mzc7/y8zN/8vL
zf/Jysz/x8jK/8bHyf/Fxcb/xMTF/8LCxf/AwcP/v8HC/76+wP+8u7z/u7u7/7q6vP+4uLn/t7i3/7u6
tP+4trH/wL+8//j07P/y5tz/6tfJ/+nPvf+CXU3/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAlGhT//v08P//////////////////////////////////////////////
/////////////////////////v7+//7+/v/+/fz//fz7//38+v/9+/n//Pr4//z59v/7+fX/+/j0//v3
8//69vL/+vbw//n17//59O7/+fPt//j07f/z6N7/6tfK/+nPvv+CXUz/AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlWpU//vz8P//////////////////////////////
//////////////////////////////////////////////7+/v/+/f3//f38//38+v/9+/n//Pr4//z6
9//7+fb/+/j0//v38//69/L/+vbx//n17//69e//+PTu//n07f/y5tz/6NXH/+TJuP+CXUz/AAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlWlU//vz8P//////////////
//////////////////////////////////////////////////////////////7+/v/+/f3//v38//38
+//9+/n//Pr4//z69//8+fb/+/j0//z39P/79/P/+vby//n07//28ev/+fXu//bw6f/z7OT/6dnO/9/E
tP+GYlD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlmtU//v1
7/////////////////////////////////////////////////////////////////////////////7+
/v/+/v3//v38//38+//9+/n//Pr4//37+P///vr////8///9+v/9/Pf/+fXy//Xw6v/x6eT/7OXe/+jf
2f/l3Nb/3Mq//7GPf/+GYVHXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAl2pW//v07///////////////////////////////////////////////////////////////
//////////////7+/v/+/v3//v38//38+//9+/n//Pr4//37+f/azcX/wKqf/76mm/+8o5j/uKCU/7ee
kv+zm5D/spiP/6iNgP+Uc2X/h2JR/4liUPCMZ1Q/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAmGxV//v07///////////////////////////////////////////////
//////////////////////////////7+/v/+/f3//v38//38+v/9+/n//Pr4///++//DrqP/pINz/8y7
sv/Is6X/xq2a/8Wojv/DooP/wZx4/8qicv+4j2X/imNT6phtVjQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmGtX//v07///////////////////////////////
//////////////////////////////////////////////7+/v/+/f3//fz7//38+v/9+/n//Pr4///8
+v/NubD/vKSY////+v/78N7/+ObJ//Xcs//y05//88yL/9Opb/+IY1Tjlm5YKQAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmmtW//v17///////////////
/////////////////////////////////////////////////////////v7+//7+/f/+/fz//fz7//37
+v/8+/n//Pr3//77+P/d0Mj/p4Z1//3y3v/14sP/8tiv/+7Om//vyIj/y6Br/4ljU+KVaFcgAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmW1W//vz
8P/////////////////////////////////////////////////////////////////+/v7//v7+//79
/f/9/Pz//fz6//37+f/8+vj//Pr3///7+f/e0sr/poJu//voyf/y167/7s2b/+/Ihv/Fmmn/iGJU5JZv
XCsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAmmtW//r07v////////////////////////////////////////////////////////////7+
/v/+/v7//v39//39/P/9/Pv//fv6//z7+f/8+vj//Pn3//389//e0sr/pYBp//bcsf/uzpj/78eF/8yg
av+HY1Tcmm9eIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAmGtX//ry7f/+/v7//v7+//7+/v//////////////////////////////
/////////v7+//7+/v/+/f3//v38//38+//9/Pr//fv5//z6+P/8+vf//Pn2//36+P/e0sv/pH1k//TS
m//wxoP/xppo/4pjVdKecVkZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmWxV//rz7P/+/v3//v39//7+/f/+/v7//v7+//7+
/v/+/v7//v7+//7+/v/+/v7//v79//79/f/+/fz//fz7//38+v/9+/n//Pv4//z69//8+fb/+/n1//36
9v/f08v/o3xe//PLhf+/lGX/iWRU1pxuXhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAl2pV//nx6//+/f3//f79///9
/P/+/f7//v39//7//f/+//3//v39//79/f/+/f7///78//38/f/9/Pv//f36//77+f/8/Pj//Pr5//z5
9//7+vb/+/j1//779//bzcT/p39b/8ygaP+MZVbUl2xiGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlmtW//ry
6//8+/n/+/r4//37+f/8+/n//Pv6//z7+v/8+/r//Pv6//z7+f/8+/n//fr5//v6+P/7+vj/+/n3//z5
9v/6+PX/+vj1//r39P/79/P/+fby///69v/DraD/mG9W/45pWMmTZlgTAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAmGtW//3x6f/78Oj/+vHp//rw6f/68On/+vDr//rw6v/68Or/+vDq//rw6//68en/+/Hq//vx
6P/78On/+/Dp//rv6P/67+f/+u/o//ru5v/57eX/+e3l//vv5f+bdWX/kGhYvphtVg0AAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAm3Fd/5twXP+bb1v/mm9a/5pvWv+Zblr/mW5a/5luWv+Zb1v/mG1Z/5ht
Wf+Xblr/l2xY/5ZtWP+Va1n/lWxX/5RqV/+Ta1j/k2lW/5JqV/+RaFX/kWlW/5BoVvmQaVaUhWNACAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
@@ -558,13 +156,139 @@
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAPwAAAAAPwAA/AAAAAA/
AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwA
AAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/
AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwA
AAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/
AAD8AAAAAH8AAPwAAAAA/wAA/AAAAAH/AAD8AAAAA/8AAPwAAAAH/wAA/AAAAA//AAD8AAAAH/8AAPwA
AAA//wAA/AAAAH//AAD8AAAA//8AAPwAAAH//wAA/AAAA///AAD///////8AAP///////wAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAwMDAwMDAwMDAwMD
AwMDAwMDAwMDAwMDAwMDAwAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAMDAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAwMAAAAAAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAwAAAAADAwEB
AgICAgICAgICAgICAgICAgICAgIBAQMDAAAAAAMDAQECAgICAgICAgICAgICAgICAgICAgEBAwMAAAAA
AwMBAQICAQEBAQICAQEBAQICAQEBAQICAQEDAwAAAAADAwEBAgIBAQEBAgIBAQEBAgIBAQEBAgIBAQMD
AAAAAAMDAQECAgEBAQECAgEBAQECAgEBAQECAgEBAwMAAAAAAwMBAQICAQEBAQICAQEBAQICAQEBAQIC
AQEDAwAAAAADAwEBAgICAgICAgIBAQEBAgIBAQEBAgIBAQMDAAAAAAMDAQECAgICAgICAgEBAQECAgEB
AQECAgEBAwMAAAAAAwMBAQICAgICAgICAQEBAQICAQEBAQICAQEDAwAAAAADAwEBAgICAgICAgIBAQEB
AgIBAQEBAgIBAQMDAAAAAAMDAQECAgICAgICAgICAgICAgEBAQECAgEBAwMAAAAAAwMBAQICAgICAgIC
AgICAgICAQEBAQICAQEDAwAAAAADAwEBAgIBAQECAgICAgICAgIBAQEBAgIBAQMDAAAAAAMDAQECAgEB
AQICAgICAgICAgEBAQECAgEBAwMAAAAAAwMBAQICAgICAgICAgICAgICAgICAgICAQEDAwAAAAADAwEB
AgICAgICAgICAgICAgICAgICAgIBAQMDAAAAAAMDAQECAgEBAQEBAQEBAgICAgICAgICAgEBAwMAAAAA
AwMBAQICAQEBAQEBAQECAgICAgICAgICAQEDAwAAAAADAwEBAgICAgICAgICAgICAgICAgICAgIBAQMD
AAAAAAMDAQECAgICAgICAgICAgICAgICAgICAgEBAwMAAAAAAwMBAQICAQEBAQEBAQEBAQEBAQECAgIC
AQEDAwAAAAADAwEBAgIBAQEBAQEBAQEBAQEBAQICAgIBAQMDAAAAAAMDAQECAgICAgICAgICAgICAgIC
AgICAgEBAwMAAAAAAwMBAQICAgICAgICAgICAgICAgICAgICAQEDAwAAAAADAwEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQMDAAAAAAMDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAwMAAAAAAwMDAwMDAwMDAwMD
AwMDAwMDAwMDAwMDAwMDAwAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAADAAAADwAAAA8AA
AAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AA
AAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAAygA
AAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAAAAQkJCAPHv8AD29vYAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAMDAwMDAwMDAwMDAwMDAAAD
AQEBAQEBAQEBAQEBAwAAAwECAgICAgICAgICAQMAAAMBAgEBAgEBAgEBAgEDAAADAQIBAQIBAQIBAQIB
AwAAAwECAgICAQECAQECAQMAAAMBAgICAgEBAgEBAgEDAAADAQICAgICAgIBAQIBAwAAAwECAQECAgIC
AQECAQMAAAMBAgICAgICAgICAgEDAAADAQIBAQEBAgICAgIBAwAAAwECAgICAgICAgICAQMAAAMBAgEB
AQEBAQECAgEDAAADAQICAgICAgICAgIBAwAAAwEBAQEBAQEBAQEBAQMAAAMDAwMDAwMDAwMDAwMDAIAB
AACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIAB
AAAoAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/AAAAAAAAAAAAAAAAAAAAAPb2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v8AAAAAAAAAAAAA
AAAAAAAA9vb2//b29v9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/wAA
AAAAAAAAAAAAAAAAAAD29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b2
9v/29vb/AAAAAAAAAAAAAAAAAAAAAPb29v/29vb/QkJC/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JC
Qv9CQkL/9vb2//b29v8AAAAAAAAAAAAAAAAAAAAA9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/QkJC/0JCQv/29vb/9vb2/wAAAAAAAAAAAAAAAAAAAAD29vb/9vb2/0JCQv9CQkL/8e/w//Hv
8P9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JC
Qv9CQkL/8e/w//Hv8P9CQkL/QkJC//b29v/29vb/AAAAAAAAAAAAAAAAAAAAAPb29v/29vb/QkJC/0JC
Qv/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JC
Qv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/9vb2//b29v8AAAAAAAAAAAAAAAAAAAAA9vb2//b2
9v9CQkL/QkJC//Hv8P/x7/D/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JCQv9CQkL/QkJC//Hv
8P/x7/D/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JCQv/29vb/9vb2/wAAAAAAAAAAAAAAAAAA
AAD29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JC
Qv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC//b29v/29vb/AAAAAAAA
AAAAAAAAAAAAAPb29v/29vb/QkJC/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JC
Qv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/9vb2//b2
9v8AAAAAAAAAAAAAAAAAAAAA9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JC
Qv/29vb/9vb2/wAAAAAAAAAAAAAAAAAAAAD29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv
8P9CQkL/QkJC//b29v/29vb/AAAAAAAAAAAAAAAAAAAAAPb29v/29vb/QkJC/0JCQv/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/QkJC/0JC
Qv/x7/D/8e/w/0JCQv9CQkL/9vb2//b29v8AAAAAAAAAAAAAAAAAAAAA9vb2//b29v9CQkL/QkJC//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JC
Qv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JCQv/29vb/9vb2/wAAAAAAAAAAAAAAAAAAAAD29vb/9vb2/0JC
Qv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC//b29v/29vb/AAAAAAAAAAAAAAAAAAAAAPb2
9v/29vb/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/9vb2//b29v8AAAAAAAAAAAAA
AAAAAAAA9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/QkJC/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JCQv/29vb/9vb2/wAA
AAAAAAAAAAAAAAAAAAD29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P9CQkL/QkJC//b2
9v/29vb/AAAAAAAAAAAAAAAAAAAAAPb29v/29vb/QkJC/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JC
Qv9CQkL/9vb2//b29v8AAAAAAAAAAAAAAAAAAAAA9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/QkJC/0JCQv/29vb/9vb2/wAAAAAAAAAAAAAAAAAAAAD29vb/9vb2/0JCQv9CQkL/8e/w//Hv
8P9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P9CQkL/QkJC//b29v/29vb/AAAAAAAAAAAAAAAAAAAAAPb29v/29vb/QkJC/0JC
Qv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv9CQkL/9vb2//b29v8AAAAAAAAAAAAAAAAAAAAA9vb2//b2
9v9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv/29vb/9vb2/wAAAAAAAAAAAAAAAAAA
AAD29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P9CQkL/QkJC//b29v/29vb/AAAAAAAA
AAAAAAAAAAAAAPb29v/29vb/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w/0JCQv9CQkL/9vb2//b2
9v8AAAAAAAAAAAAAAAAAAAAA9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JC
Qv/29vb/9vb2/wAAAAAAAAAAAAAAAAAAAAD29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P9CQkL/QkJC//b29v/29vb/AAAAAAAAAAAAAAAAAAAAAPb29v/29vb/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v8AAAAAAAAAAAAAAAAAAAAA9vb2//b29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/wAAAAAAAAAAAAAAAAAAAAD29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/AAAAAAAAAAAAAAAAAAAAAPb2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v8AAAAAAAAAAMAA
AAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AA
AAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AA
AAPAAAADKAAAABAAAAAgAAAAAQAgAAAAAABABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2/wAAAAAAAAAA9vb2/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v8AAAAAAAAAAPb2
9v9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv/29vb/AAAAAAAA
AAD29vb/QkJC//Hv8P9CQkL/QkJC//Hv8P9CQkL/QkJC//Hv8P9CQkL/QkJC//Hv8P9CQkL/9vb2/wAA
AAAAAAAA9vb2/0JCQv/x7/D/QkJC/0JCQv/x7/D/QkJC/0JCQv/x7/D/QkJC/0JCQv/x7/D/QkJC//b2
9v8AAAAAAAAAAPb29v9CQkL/8e/w//Hv8P/x7/D/8e/w/0JCQv9CQkL/8e/w/0JCQv9CQkL/8e/w/0JC
Qv/29vb/AAAAAAAAAAD29vb/QkJC//Hv8P/x7/D/8e/w//Hv8P9CQkL/QkJC//Hv8P9CQkL/QkJC//Hv
8P9CQkL/9vb2/wAAAAAAAAAA9vb2/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JC
Qv/x7/D/QkJC//b29v8AAAAAAAAAAPb29v9CQkL/8e/w/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w/0JC
Qv9CQkL/8e/w/0JCQv/29vb/AAAAAAAAAAD29vb/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P9CQkL/9vb2/wAAAAAAAAAA9vb2/0JCQv/x7/D/QkJC/0JCQv9CQkL/QkJC//Hv
8P/x7/D/8e/w//Hv8P/x7/D/QkJC//b29v8AAAAAAAAAAPb29v9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv/29vb/AAAAAAAAAAD29vb/QkJC//Hv8P9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/9vb2/wAAAAAAAAAA9vb2/0JCQv/x7/D/8e/w//Hv
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC//b29v8AAAAAAAAAAPb29v9CQkL/QkJC/0JC
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/AAAAAAAAAAD29vb/9vb2//b2
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2/wAAAACAAQAAgAEAAIAB
AACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAA
</value>
</data>
</root>

View File

@@ -2,50 +2,188 @@
Public Class frmDiagrams
Private Sub frmDiagrams_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Private Function Get_Splitter_Layout_Filename() As String
Dim Filename As String = String.Format("{0}-Diagram-SplitterLayout.xml", CURRENT_FORM_ID)
Return System.IO.Path.Combine(Application.UserAppDataPath(), Filename)
End Function
Private Function Get_Settings(settings As List(Of ClassSetting)) As List(Of ClassSetting)
settings.Add(New ClassSetting("SplitterMainDistance", SplitContainerMain.SplitterDistance))
settings.Add(New ClassSetting("SplitterTopDistance", SplitContainerTop.SplitterDistance))
settings.Add(New ClassSetting("SplitterBottomDistance", SplitContainerBottom.SplitterDistance))
Return settings
End Function
Private Sub Load_Settings()
Try
Dim CHART_ENTITY_SQL As String = "SELECT * FROM TBPMO_CHART_ENTITY WHERE ENTITY_ID = " & CURRENT_FORM_ID
Dim CHART_ENTITY_DT As DataTable = ClassDatabase.Return_Datatable(CHART_ENTITY_SQL)
If CHART_ENTITY_DT.Rows.Count = 0 Then
MsgBox("No Charts configured for this entity!", MsgBoxStyle.Exclamation)
Exit Sub
' Load Splitter Settings
Dim XMLPath As String = Get_Splitter_Layout_Filename()
Dim layout As New ClassLayout(XMLPath)
Dim settings As List(Of ClassSetting)
settings = layout.Load()
' No Settings found, save current values
If settings.Count = 0 Then
'Adjust Width and Height of containers
Dim containerW = Me.Width / 2
Dim containerH = Me.Height / 2
SplitContainerTop.SplitterDistance = containerW
SplitContainerBottom.SplitterDistance = containerW
SplitContainerMain.SplitterDistance = containerH
settings = Get_Settings(settings)
layout.Save(settings)
End If
' Check if Bottom Chart containers are needed
Select Case CHART_ENTITY_DT.Rows.Count
Case 0
MsgBox("No Diagrams found")
Case 1
' Show only ChartTopLeft
SplitContainerTop.Panel2Collapsed = True
' Collapse SplitContainerBottom
SplitContainerMain.Panel2Collapsed = True
Case 2
' Collapse SplitContainerBottom
SplitContainerMain.Panel2Collapsed = True
Case 3
' Collapse ChartBottomRight
SplitContainerBottom.Panel2Collapsed = True
' Show SplitContainerBottom
SplitContainerMain.Panel2Collapsed = False
Case 4
' Show SplitContainerBottom
SplitContainerMain.Panel2Collapsed = False
End Select
'Adjust With and Height of containers
Dim containerW = Me.Width / 2
SplitContainerTop.SplitterDistance = containerW
SplitContainerBottom.SplitterDistance = containerW
'Apply Settings
For Each setting As ClassSetting In settings
If setting._name = "SplitterMainDistance" Then
SplitContainerMain.SplitterDistance = setting._value
End If
Dim containerH = Me.Height / 2
SplitContainerMain.SplitterDistance = containerH
If setting._name = "SplitterTopDistance" Then
SplitContainerTop.SplitterDistance = setting._value
End If
' Create Charts
For Each row As DataRow In CHART_ENTITY_DT.Rows
Dim series As Series
If setting._name = "SplitterBottomDistance" Then
SplitContainerBottom.SplitterDistance = setting._value
End If
Next
Catch ex As Exception
MsgBox("Error while loading Settings for frmDiagrams: " & vbNewLine & ex.Message)
End Try
End Sub
Private Sub Configure_Split_Containers(VisibleContainers As Integer)
Select Case VisibleContainers
Case 0
MsgBox("No Diagrams found")
Case 1
' Show only ChartTopLeft
SplitContainerTop.Panel2Collapsed = True
' Collapse SplitContainerBottom
SplitContainerMain.Panel2Collapsed = True
Case 2
' Collapse SplitContainerBottom
SplitContainerMain.Panel2Collapsed = True
Case 3
' Collapse ChartBottomRight
SplitContainerBottom.Panel2Collapsed = True
' Show SplitContainerBottom
SplitContainerMain.Panel2Collapsed = False
Case 4
' Show SplitContainerBottom
SplitContainerMain.Panel2Collapsed = False
End Select
End Sub
Private Sub frmDiagrams_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
Dim XMLPath As String = Get_Splitter_Layout_Filename()
Dim layout As New ClassLayout(XMLPath)
Dim settings As New List(Of ClassSetting)
settings = Get_Settings(settings)
layout.Save(settings)
End Sub
Private Function Create_Series(title As String, type As String) As Series
Dim series As Series
Select Case type
Case "BAR"
series = New Series(title, ViewType.Bar)
Case "LINE"
series = New Series(title, ViewType.Line)
Case "AREA"
series = New Series(title, ViewType.Area)
Case "PIE"
series = New Series(title, ViewType.Pie)
series.Label.TextPattern = "{A}: {VP:p0}"
Dim view As PieSeriesView = DirectCast(series.View, PieSeriesView)
view.Titles.Add(New SeriesTitle())
view.Titles(0).Text = title
Case Else
series = New Series(title, ViewType.Bar)
End Select
Return series
End Function
Private Function Select_Chart(index As Integer)
Select Case index
Case 0
Return ChartTopLeft
Case 1
Return ChartTopRight
Case 2
Return ChartBottomLeft
Case Else
Return ChartBottomRight
End Select
End Function
Private Sub frmDiagrams_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim CHART_ENTITY_SQL, CHART_GROUPS_SQL As String
Dim CHART_ENTITY_DT, CHART_GROUPS_DT As DataTable
CHART_ENTITY_SQL = String.Format("SELECT * FROM TBPMO_CHART_ENTITY WHERE ENTITY_ID = {0}", CURRENT_FORM_ID)
CHART_GROUPS_SQL = String.Format("SELECT DISTINCT GROUP_ID FROM TBPMO_CHART_ENTITY WHERE ENTITY_ID = {0} ORDER BY GROUP_ID", CURRENT_FORM_ID)
CHART_ENTITY_DT = ClassDatabase.Return_Datatable(CHART_ENTITY_SQL)
CHART_GROUPS_DT = ClassDatabase.Return_Datatable(CHART_GROUPS_SQL)
Dim Groups As DataRowCollection = CHART_GROUPS_DT.Rows
Dim GroupCount As Integer = Groups.Count
Load_Settings()
Configure_Split_Containers(GroupCount)
If GroupCount > 1 Then
For Each gRow As DataRow In Groups
Dim groupIndex As Integer = Groups.IndexOf(gRow)
Dim groupName As String = gRow.Item("GROUP_ID")
Dim groupCharts = CHART_ENTITY_DT.Select(String.Format("GROUP_ID = '{0}'", groupName))
Dim chart As ChartControl
Dim i As Integer = CHART_ENTITY_DT.Rows.IndexOf(row)
For Each cRow As DataRow In groupCharts
Dim type = cRow.Item("TYPE_CHART")
Dim title = cRow.Item("TITLE")
Dim guid = cRow.Item("GUID")
Dim value = cRow.Item("VALUE")
Dim argument = cRow.Item("ARGUMENT")
Dim sql = cRow.Item("SQL_COMMAND")
Dim DATA_DT As DataTable = ClassDatabase.Return_Datatable(sql)
Dim series As Series = Create_Series(title, type)
' Select Current Chart
chart = Select_Chart(groupIndex)
' Set DataSource
chart.DataSource = DATA_DT
' Set shown Columns for Chart
series.ArgumentDataMember = argument
series.ValueDataMembers.AddRange(New String() {value})
'set some options
chart.Legend.Visibility = DevExpress.Utils.DefaultBoolean.True
' Show Data
chart.Series.Add(series)
Next ' End Charts
Next 'End Groups
Else
' Create Charts
For Each row As DataRow In CHART_ENTITY_DT.Rows
Dim chart As ChartControl
Dim chartIndex As Integer = CHART_ENTITY_DT.Rows.IndexOf(row)
Dim type = row.Item("TYPE_CHART")
Dim title = row.Item("TITLE")
@@ -56,29 +194,11 @@ Public Class frmDiagrams
Dim DATA_DT As DataTable = ClassDatabase.Return_Datatable(sql)
' Create series based on type
Select Case type
Case "BAR"
series = New Series(title, ViewType.Bar)
Case "LINE"
series = New Series(title, ViewType.Line)
Case "AREA"
series = New Series(title, ViewType.Area)
Case Else
Throw New Exception("Unknown Chart type for id " & title)
End Select
' Create Series based on type
Dim series As Series = Create_Series(title, type)
' Select Current Chart
Select Case i
Case 0
chart = ChartTopLeft
Case 1
chart = ChartTopRight
Case 2
chart = ChartBottomLeft
Case Else
chart = ChartBottomRight
End Select
chart = Select_Chart(chartIndex)
' Set DataSource
chart.DataSource = DATA_DT
@@ -87,12 +207,13 @@ Public Class frmDiagrams
series.ArgumentDataMember = argument
series.ValueDataMembers.AddRange(New String() {value})
'set some options
chart.Legend.Visibility = DevExpress.Utils.DefaultBoolean.True
' Show Data
chart.Series.Add(series)
Next
Catch ex As Exception
MsgBox("Error While loading Diagram Data: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End If
End Sub
End Class