diff --git a/app/DD-Record-Organiser/ClassLayout.vb b/app/DD-Record-Organiser/ClassLayout.vb index f379ebf..0ab6b66 100644 --- a/app/DD-Record-Organiser/ClassLayout.vb +++ b/app/DD-Record-Organiser/ClassLayout.vb @@ -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 diff --git a/app/DD-Record-Organiser/DD-Record-Organiser.vbproj b/app/DD-Record-Organiser/DD-Record-Organiser.vbproj index efa0fb4..222bc86 100644 --- a/app/DD-Record-Organiser/DD-Record-Organiser.vbproj +++ b/app/DD-Record-Organiser/DD-Record-Organiser.vbproj @@ -1294,6 +1294,7 @@ + @@ -1387,6 +1388,7 @@ + diff --git a/app/DD-Record-Organiser/My Project/Resources.Designer.vb b/app/DD-Record-Organiser/My Project/Resources.Designer.vb index 0fcfd98..6a2298f 100644 --- a/app/DD-Record-Organiser/My Project/Resources.Designer.vb +++ b/app/DD-Record-Organiser/My Project/Resources.Designer.vb @@ -370,6 +370,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + ''' + 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 + ''' ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. ''' @@ -1580,6 +1590,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + ''' + 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 + ''' ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. ''' diff --git a/app/DD-Record-Organiser/My Project/Resources.resx b/app/DD-Record-Organiser/My Project/Resources.resx index d22d6cd..57248fc 100644 --- a/app/DD-Record-Organiser/My Project/Resources.resx +++ b/app/DD-Record-Organiser/My Project/Resources.resx @@ -169,6 +169,9 @@ ..\Resources\Files_7954.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\asset_pie-series-chart_on_12X12.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\Men3.ico;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -535,6 +538,9 @@ ..\Resources\bricks.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\asset_pie-series-chart_on_24X24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\database_refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -661,7 +667,7 @@ ..\Resources\action_Cancel_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\asset_pie-series-chart_on_24X24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Reports-collapsed_12995_32x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a \ No newline at end of file diff --git a/app/DD-Record-Organiser/Resources/Reports-collapsed_12995_32x.png b/app/DD-Record-Organiser/Resources/Reports-collapsed_12995_32x.png new file mode 100644 index 0000000..d494f85 Binary files /dev/null and b/app/DD-Record-Organiser/Resources/Reports-collapsed_12995_32x.png differ diff --git a/app/DD-Record-Organiser/Resources/asset_pie-series-chart_on_12X12.png b/app/DD-Record-Organiser/Resources/asset_pie-series-chart_on_12X12.png new file mode 100644 index 0000000..fa63c3b Binary files /dev/null and b/app/DD-Record-Organiser/Resources/asset_pie-series-chart_on_12X12.png differ diff --git a/app/DD-Record-Organiser/frmConstructor_Main.Designer.vb b/app/DD-Record-Organiser/frmConstructor_Main.Designer.vb index e3186c3..62ae353 100644 --- a/app/DD-Record-Organiser/frmConstructor_Main.Designer.vb +++ b/app/DD-Record-Organiser/frmConstructor_Main.Designer.vb @@ -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") ' diff --git a/app/DD-Record-Organiser/frmConstructor_Main.resx b/app/DD-Record-Organiser/frmConstructor_Main.resx index 5c66344..8f2c49b 100644 --- a/app/DD-Record-Organiser/frmConstructor_Main.resx +++ b/app/DD-Record-Organiser/frmConstructor_Main.resx @@ -165,7 +165,7 @@ Auswertung anzeigen - 195, 114 + 195, 136 CMSEntity diff --git a/app/DD-Record-Organiser/frmConstructor_Main.vb b/app/DD-Record-Organiser/frmConstructor_Main.vb index 69d0afd..257aa6c 100644 --- a/app/DD-Record-Organiser/frmConstructor_Main.vb +++ b/app/DD-Record-Organiser/frmConstructor_Main.vb @@ -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() diff --git a/app/DD-Record-Organiser/frmDiagrams.Designer.vb b/app/DD-Record-Organiser/frmDiagrams.Designer.vb index 060eb4b..7fb2ecd 100644 --- a/app/DD-Record-Organiser/frmDiagrams.Designer.vb +++ b/app/DD-Record-Organiser/frmDiagrams.Designer.vb @@ -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() diff --git a/app/DD-Record-Organiser/frmDiagrams.resx b/app/DD-Record-Organiser/frmDiagrams.resx index e56cfa8..fa68ea4 100644 --- a/app/DD-Record-Organiser/frmDiagrams.resx +++ b/app/DD-Record-Organiser/frmDiagrams.resx @@ -120,17 +120,26 @@ - 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 - 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 - 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 \ No newline at end of file diff --git a/app/DD-Record-Organiser/frmDiagrams.vb b/app/DD-Record-Organiser/frmDiagrams.vb index e62c65e..063210d 100644 --- a/app/DD-Record-Organiser/frmDiagrams.vb +++ b/app/DD-Record-Organiser/frmDiagrams.vb @@ -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 \ No newline at end of file